Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Neste artigo, aprende como criar uma aplicação personalizada e conceder-lhe permissões usando o Microsoft Entra PowerShell. Este processo envolve a definição de funções, atribuição de utilizadores e grupos, e a definição de permissões de API para gerir eficazmente os recursos do Microsoft Entra.
Compreender estes passos é essencial para gerir o acesso de forma segura e garantir que as aplicações têm as permissões adequadas. Ajuda a manter a segurança e a eficiência operacional dentro do ecossistema Microsoft Entra.
Pré-requisitos
Para criar uma aplicação personalizada e conceder-lhe permissões, precisa de:
- Uma conta de usuário do Microsoft Entra. Se ainda não tiveres uma, podes Criar uma conta gratuitamente.
- Uma das seguintes funções:
- Miras necessárias (PowerShell):
AppRoleAssignment.ReadWrite.All,Application.ReadWrite.All,User.Read.All,Group.Read.All,DelegatedPermissionGrant.ReadWrite.All
Criar uma aplicação usando PowerShell
Use a aplicação personalizada para isolar e limitar as permissões concedidas a um recurso Microsoft Entra.
# Connect to Entra with required scopes
Connect-Entra -Scopes 'Application.ReadWrite.All'
# Define application name and redirect URI
$appName = 'Entra PowerShell Helpdesk App'
$redirectUri = 'http://localhost'
# Create a new application
$app = New-EntraApplication -DisplayName $appName -PublicClient @{ RedirectUris = $redirectUri } -IsFallbackPublicClient $False
# Create a service principal for the application
$servicePrincipal = New-EntraServicePrincipal -AppId $app.AppId
Ativar a funcionalidade necessária de atribuição usando PowerShell
# Set service principal parameters
Set-EntraServicePrincipal -ServicePrincipalId $servicePrincipal.Id -AppRoleAssignmentRequired $True
Atribuir utilizadores e grupos usando o PowerShell
# Get a user and a group
$user = Get-EntraUser -UserId 'AdeleV@contoso.com'
$group = Get-EntraGroup -Search 'Sales and Marketing'
# Assign users and groups to the application
$emptyGuidUser = [Guid]::Empty.ToString()
New-EntraUserAppRoleAssignment -ObjectId $user.Id -PrincipalId $user.Id -ResourceId $servicePrincipal.Id -Id $emptyGuidUser
$emptyGuidGroup = [Guid]::Empty.ToString()
New-EntraGroupAppRoleAssignment -GroupId $group.Id -PrincipalId $group.Id -ResourceId $servicePrincipal.Id -Id $emptyGuidGroup
Defina os recursos e permissões necessários usando o PowerShell
# Get Graph service principal
$graphApiId = '00000003-0000-0000-c000-000000000000'
$graphServicePrincipal = Get-EntraServicePrincipal -Filter "AppId eq '$graphApiId'"
$delegatedPermission = 'User.Read.All'
$app = Get-EntraApplication -Filter "DisplayName eq '$appName'"
# Create resource access object
$resourceAccessDelegated = New-Object Microsoft.Open.MSGraph.Model.ResourceAccess
$resourceAccessDelegated.Id = ((Get-EntraServicePrincipal -ServicePrincipalId $graphServicePrincipal.Id).Oauth2PermissionScopes | Where-Object { $_.Value -eq $delegatedPermission }).Id
$resourceAccessDelegated.Type = 'Scope'
# Create required resource access object
$requiredResourceAccessDelegated = New-Object Microsoft.Open.MSGraph.Model.RequiredResourceAccess
$requiredResourceAccessDelegated.ResourceAppId = $graphApiId
$requiredResourceAccessDelegated.ResourceAccess = $resourceAccessDelegated
# Set application required resource access
Set-EntraApplication -ApplicationId $app.Id -RequiredResourceAccess $requiredResourceAccessDelegated
Atribuir permissões de API à aplicação usando o PowerShell
Pode atribuir permissões delegadas ou permissões de aplicação à aplicação.
$delegatedPermission = 'User.Read.All'
$graphApiId = '00000003-0000-0000-c000-000000000000'
$servicePrincipal = Get-EntraServicePrincipal -Filter "DisplayName eq '$appName'"
$graphServicePrincipal = Get-EntraServicePrincipal -Filter "AppId eq '$graphApiId'"
# Grant OAuth2 permission
New-EntraOauth2PermissionGrant -ClientId $servicePrincipal.Id -ConsentType 'AllPrincipals' -ResourceId $graphServicePrincipal.Id -Scope $delegatedPermission
Resources
Descarregue e execute o guião completo:
- Use o script de exemplo create-custom-app-with-delegated-permissions para criar uma app personalizada com permissões delegadas.
- Use o script de exemplo create-custom-app-with-application-permissions para criar uma app personalizada com permissões de aplicação.
Crie uma aplicação no centro de administração Microsoft Entra
Para criar aplicações personalizadas para ligação ao Microsoft Entra ID usando o Microsoft Entra PowerShell, siga os passos na secção seguinte. Use a aplicação personalizada para isolar e limitar as permissões concedidas a um recurso Microsoft Entra.
- Entre no centro de administração do Microsoft Entra como, no mínimo, um administrador de aplicações na nuvem.
- Navegue até Identity>Aplicações>Registos de aplicações e, em seguida, selecione Novo registo.
- Insira um nome para a sua aplicação, por exemplo Entra PowerShell Five.
- Para tipos de conta suportados, selecione Contas neste diretório da organização.
- Para URI de redirecionamento selecione: - Cliente público/nativo na lista pendente - Valor do URI:
http://localhost - Selecione Registar.
Note
Na secção de Visão Geral da aplicação, copie a Aplicação (ID do cliente) e o ID do Diretório (inquilino). Utiliza os valores ao estabelecer ligação ao Microsoft Entra ID.
Ativar a funcionalidade de atribuição obrigatória no centro de administração Microsoft Entra
Para gerir os recursos a que a sua aplicação tem acesso no seu tenant, localize o principal de serviço da aplicação no painel de aplicações empresariais .
- Navegue até Identidade>Aplicações>Aplicações empresariais>Todas as aplicações e selecione a aplicação que criou.
- Em Gerir, selecione Propriedades e defina Atribuição necessária? para Sim.
- Selecione Guardar.
Atribuir utilizadores e grupos no centro de administração Microsoft Entra
- Em Gerir, selecione Utilizadores e grupos.
- Selecione Adicionar utilizador/grupo e adicione os utilizadores e grupos autorizados a usar esta aplicação.
- Depois de adicionares todos os utilizadores e grupos, seleciona Atribuir.
Atribuir permissões de API à aplicação no centro de administração Microsoft Entra
Tem de configurar as permissões do Microsoft Graph para que a nova aplicação se possa ligar ao Microsoft Entra ID e gerir os recursos do Microsoft Entra.
- Navegue até Identidade>Aplicações>Registos de aplicações>Todas as aplicações e selecione a aplicação que criou.
- Em Permissões da API, selecione Adicionar uma permissão> selecione APIs da Microsoft > Microsoft Graph.
- Escolha o tipo de permissões que necessita, sejam delegadas ou permissões de aplicação.
- Se precisar de iniciar sessão na aplicação para gerir os seus recursos no Microsoft Entra ID, selecione Permissões Delegadas.
- Se quiser que a aplicação aceda aos recursos do Microsoft Entra sozinha, sem interação do utilizador, selecione permissões de aplicação
- Procure a permissão necessária, por exemplo,
User.Read.All. - Selecione Conceder consentimento do administrador para Nome do Inquilino. Selecione Sim. Certifique-se de que o estado apresenta uma marca de verificação verde.
Iniciar sessão usando a nova aplicação
Agora pode usar a aplicação recém-criada ligando-se com:
Connect-Entra -ClientId <Your_APPLICATION_Id_Here> -TenantId <Your_TENANT_Id_Here>
Para mais opções de ligação, consulte os detalhes do comando Connect-Entra .