Skip to content
Go back

Funções de Aplicativo

Published:  at  10:00 AM

Índice

Funções de Aplicativo e Controle de Acesso

As funções de aplicativo (app roles) são um mecanismo poderoso para implementar controle de acesso baseado em funções (RBAC) em aplicações empresariais. Elas permitem:

Atribuição via Microsoft Graph

Para atribuir uma função de aplicativo a um utilizador ou grupo:

# Conectar ao Microsoft Graph
Connect-MgGraph -Scopes "AppRoleAssignment.ReadWrite.All"

# IDs necessários para a atribuição
$servicePrincipalId = "11111111-1111-1111-1111-111111111111"  # ID do service principal da aplicação
$appRoleId = "22222222-2222-2222-2222-222222222222"          # ID da função de aplicativo
$userId = "33333333-3333-3333-3333-333333333333"             # ID do utilizador

# Criar a atribuição da função
$params = @{
    PrincipalId = $userId
    ResourceId = $servicePrincipalId
    AppRoleId = $appRoleId
}

New-MgServicePrincipalAppRoleAssignedTo @params

Verificação de Funções Atribuídas

Para verificar as funções atribuídas a um utilizador:

# Obter todas as atribuições de funções para um utilizador
$userAppRoles = Get-MgUserAppRoleAssignment -UserId $userId

foreach ($role in $userAppRoles) {
    $servicePrincipal = Get-MgServicePrincipal -ServicePrincipalId $role.ResourceId
    Write-Output "Aplicação: $($servicePrincipal.DisplayName)"
    Write-Output "Função: $($role.AppRoleId)"
    Write-Output "--------"
}

Remoção de Atribuições

Para remover uma atribuição de função:

# ID da atribuição a ser removida
$appRoleAssignmentId = "44444444-4444-4444-4444-444444444444"

# Remover a atribuição
Remove-MgServicePrincipalAppRoleAssignedTo -ServicePrincipalId $servicePrincipalId -AppRoleAssignmentId $appRoleAssignmentId

Melhores Práticas


Suggest Changes

Previous Post
Análise de Sign-in Logs
Next Post
Expiração de Certificados e Segredos