Beleid voor app-toestemming beheren

App-toestemmingsbeleid is een manier om de machtigingen te beheren die apps hebben voor toegang tot gegevens in uw organisatie. Ze worden gebruikt om te bepalen aan welke apps gebruikers toestemming kunnen geven en om ervoor te zorgen dat apps voldoen aan bepaalde criteria voordat ze toegang hebben tot gegevens. Met deze beleidsregels kunnen organisaties de controle over hun gegevens behouden en ervoor zorgen dat ze alleen toegang verlenen tot vertrouwde apps.

In dit artikel leert u hoe u ingebouwde en aangepaste app-toestemmingsbeleid kunt beheren om te bepalen wanneer toestemming kan worden verleend.

Met Microsoft Graph en Microsoft Graph PowerShell kunt u app-toestemmingsbeleid bekijken en beheren.

Een app-toestemmingsbeleid bestaat uit een of meer 'include'-voorwaardesets en nul of meer voorwaardenets voor uitsluiten. Een gebeurtenis die moet worden overwogen in een app-toestemmingsbeleid, moet overeenkomen met ten minste één 'include'-voorwaardeset en mag niet overeenkomen met een 'uitsluitingsvoorwaardeset'.

Elke voorwaardenset bestaat uit verschillende voorwaarden. Voor een gebeurtenis die overeenkomt met een voorwaardenset, moet aan alle voorwaarden in de voorwaardenset worden voldaan.

App-toestemmingsbeleid waarbij de id begint met 'microsoft-' zijn ingebouwde beleidsregels. Sommige van deze ingebouwde beleidsregels worden gebruikt in bestaande ingebouwde directoryrollen. Het app-toestemmingsbeleid beschrijft bijvoorbeeld microsoft-application-admin de voorwaarden waaronder de rollen Application Beheer istrator en Cloud Application Beheer istrator toestemming voor de hele tenant mogen verlenen. Ingebouwde beleidsregels kunnen worden gebruikt in aangepaste directoryrollen en om instellingen voor gebruikerstoestemming te configureren, maar kunnen niet worden bewerkt of verwijderd.

Vereisten

  • Een gebruiker of service met een van de volgende rollen:
    • Globale maprol voor Beheer istrator
    • Privileged Role Beheer istrator directory role
    • Een aangepaste directoryrol met de benodigde machtigingen voor het beheren van app-toestemmingsbeleid
    • De microsoft Graph-app-rol (toepassingsmachtiging) Policy.ReadWrite.PermissionGrant bij het maken van verbinding als een app of een service

Als u app-toestemmingsbeleid wilt beheren voor toepassingen met Microsoft Graph PowerShell, maakt u verbinding met Microsoft Graph PowerShell.

Connect-MgGraph -Scopes "Policy.ReadWrite.PermissionGrant"

Het is een goed idee om vertrouwd te raken met het bestaande app-toestemmingsbeleid in uw organisatie:

  1. Geef alle beleidsregels voor app-toestemming weer:

    Get-MgPolicyPermissionGrantPolicy | ft Id, DisplayName, Description
    
  2. Bekijk de voorwaardenets 'opnemen' van een beleid:

    Get-MgPolicyPermissionGrantPolicyInclude -PermissionGrantPolicyId "microsoft-application-admin" | fl
    
  3. Bekijk de voorwaardensets 'uitsluiten':

    Get-MgPolicyPermissionGrantPolicyExclude -PermissionGrantPolicyId "microsoft-application-admin" | fl
    

Volg deze stappen om een aangepast app-toestemmingsbeleid te maken:

  1. Maak een nieuw leeg app-toestemmingsbeleid.

    New-MgPolicyPermissionGrantPolicy `
        -Id "my-custom-policy" `
        -DisplayName "My first custom consent policy" `
        -Description "This is a sample custom app consent policy."
    
  2. Voeg voorwaardesets voor opnemen toe.

    # Include delegated permissions classified "low", for apps from verified publishers
    New-MgPolicyPermissionGrantPolicyInclude `
        -PermissionGrantPolicyId "my-custom-policy" `
        -PermissionType "delegated" `
        -PermissionClassification "low" `
        -ClientApplicationsFromVerifiedPublisherOnly
    

    Herhaal deze stap om meer 'include'-voorwaardesets toe te voegen.

  3. U kunt eventueel voorwaardensets 'uitsluiten' toevoegen.

    # Retrieve the service principal for the Azure Management API
    $azureApi = Get-MgServicePrincipal -Filter "servicePrincipalNames/any(n:n eq 'https://management.azure.com/')"
    
    # Exclude delegated permissions for the Azure Management API
    New-MgPolicyPermissionGrantPolicyExclude `
        -PermissionGrantPolicyId "my-custom-policy" `
        -PermissionType "delegated" `
        -ResourceApplication $azureApi.AppId
    

    Herhaal deze stap om meer voorwaardenets voor uitsluiten toe te voegen.

Nadat u het app-toestemmingsbeleid hebt gemaakt, moet u het toewijzen aan een aangepaste rol in Microsoft Entra-id. Vervolgens moet u gebruikers toewijzen aan die aangepaste rol, die is gekoppeld aan het app-toestemmingsbeleid dat u hebt gemaakt. Zie App-toestemmingsmachtigingen voor aangepaste rollen voor meer informatie over het toewijzen van het app-toestemmingsbeleid aan een aangepaste rol.

De volgende cmdlet laat zien hoe u een aangepast app-toestemmingsbeleid kunt verwijderen.

   Remove-MgPolicyPermissionGrantPolicy -PermissionGrantPolicyId "my-custom-policy"

Als u app-toestemmingsbeleid wilt beheren, meldt u zich aan bij Graph Explorer met een van de rollen die worden vermeld in de sectie Vereisten.

U moet toestemming geven voor de Policy.ReadWrite.PermissionGrant machtiging.

Het is een goed idee om vertrouwd te raken met het bestaande app-toestemmingsbeleid in uw organisatie:

  1. Geef alle beleidsregels voor app-toestemming weer:

    GET /policies/permissionGrantPolicies?$select=id,displayName,description
    
  2. Bekijk de voorwaardenets 'opnemen' van een beleid:

    GET /policies/permissionGrantPolicies/{ microsoft-application-admin }/includes
    
  3. Bekijk de voorwaardensets 'uitsluiten':

    GET /policies/permissionGrantPolicies/{ microsoft-application-admin }/excludes
    

Volg deze stappen om een aangepast app-toestemmingsbeleid te maken:

  1. Maak een nieuw leeg app-toestemmingsbeleid.

    POST https://graph.microsoft.com/v1.0/policies/permissionGrantPolicies
    Content-Type: application/json
    
    {
      "id": "my-custom-policy",
      "displayName": "My first custom consent policy",
      "description": "This is a sample custom app consent policy"
    }
    
  2. Voeg voorwaardesets voor opnemen toe.

    Gedelegeerde machtigingen opnemen die 'laag' zijn geclassificeerd voor apps van geverifieerde uitgevers

    POST https://graph.microsoft.com/v1.0/policies/permissionGrantPolicies/{ my-custom-policy }/includes
    Content-Type: application/json
    
    {
      "permissionType": "delegated",
      "PermissionClassification": "low",
      "clientApplicationsFromVerifiedPublisherOnly": true
    }
    

    Herhaal deze stap om meer 'include'-voorwaardesets toe te voegen.

  3. U kunt eventueel voorwaardensets 'uitsluiten' toevoegen. Gedelegeerde machtigingen uitsluiten voor de Azure Management-API (appId 46e6adf4-a9cf-4b60-9390-0ba6fb00bf6b)

    POST https://graph.microsoft.com/v1.0/policies/permissionGrantPolicies/my-custom-policy /excludes
    Content-Type: application/json
    
    {
      "permissionType": "delegated",
      "resourceApplication": "46e6adf4-a9cf-4b60-9390-0ba6fb00bf6b "
    }
    

    Herhaal deze stap om meer voorwaardenets voor uitsluiten toe te voegen.

Nadat u het app-toestemmingsbeleid hebt gemaakt, moet u het toewijzen aan een aangepaste rol in Microsoft Entra-id. Vervolgens moet u gebruikers toewijzen aan die aangepaste rol, die is gekoppeld aan het app-toestemmingsbeleid dat u hebt gemaakt. Zie App-toestemmingsmachtigingen voor aangepaste rollen voor meer informatie over het toewijzen van het app-toestemmingsbeleid aan een aangepaste rol.

  1. Hieronder ziet u hoe u een aangepast app-toestemmingsbeleid kunt verwijderen.

    DELETE https://graph.microsoft.com/v1.0/policies/permissionGrantPolicies/ my-custom-policy
    

Waarschuwing

Verwijderd app-toestemmingsbeleid kan niet worden hersteld. Als u per ongeluk een aangepast app-toestemmingsbeleid verwijdert, moet u het beleid opnieuw maken.

Ondersteunde voorwaarden

De volgende tabel bevat de lijst met ondersteunde voorwaarden voor app-toestemmingsbeleid.

Voorwaarde Beschrijving
PermissionClassification De machtigingsclassificatie voor de machtiging die wordt verleend, of 'alle' die overeenkomen met elke machtigingsclassificatie (inclusief machtigingen die niet zijn geclassificeerd). De standaardwaarde is 'all'.
PermissionType Het machtigingstype van de machtiging die wordt verleend. Gebruik 'toepassing' voor toepassingsmachtigingen (bijvoorbeeld app-rollen) of 'gedelegeerd' voor gedelegeerde machtigingen.

Opmerking: de waarde 'delegatedUserConsentable' geeft gedelegeerde machtigingen aan die niet zijn geconfigureerd door de API-uitgever om beheerderstoestemming te vereisen. Deze waarde kan worden gebruikt in ingebouwd machtigingsbeleid, maar kan niet worden gebruikt in aangepast machtigingsbeleid. Vereist.
ResourceApplication De AppId van de resourcetoepassing (bijvoorbeeld de API) waarvoor een machtiging wordt verleend, of 'any' die overeenkomt met een resourcetoepassing of API. De standaardwaarde is 'any'.
Machtigingen De lijst met machtigings-id's voor de specifieke machtigingen waarmee moet worden vergeleken, of een lijst met de enkele waarde 'alles' die overeenkomt met elke machtiging. De standaardwaarde is de enkele waarde 'all'.
- Gedelegeerde machtigings-id's vindt u in de eigenschap OAuth2Permissions van het ServicePrincipal-object van de API.
- Id's voor toepassingsmachtigingen vindt u in de eigenschap AppRoles van het ServicePrincipal-object van de API.
ClientApplicationIds Een lijst met AppId-waarden waarmee de clienttoepassingen overeenkomen, of een lijst met de enkele waarde 'all' die overeenkomt met elke clienttoepassing. De standaardwaarde is de enkele waarde 'all'.
ClientApplicationTenantIds Een lijst met Microsoft Entra-tenant-id's waarin de clienttoepassing is geregistreerd, of een lijst met de enkele waarde 'all' die overeenkomt met client-apps die zijn geregistreerd in elke tenant. De standaardwaarde is de enkele waarde 'all'.
ClientApplicationPublisherIds Een lijst met MPN-id's (Microsoft Partner Network) voor geverifieerde uitgevers van de clienttoepassing of een lijst met de enkele waarde 'alles' die overeenkomt met client-apps van elke uitgever. De standaardwaarde is de enkele waarde 'all'.
ClientApplicationsFromVerifiedPublisherOnly Stel deze switch zo in dat deze alleen overeenkomt met clienttoepassingen met geverifieerde uitgevers. Schakel deze schakeloptie (-ClientApplicationsFromVerifiedPublisherOnly:$false) uit om overeen te komen met een client-app, zelfs als deze geen geverifieerde uitgever heeft. Standaard is $false.
scopeType Het resourcebereiktype waar de preapproval op van toepassing is. Mogelijke waarden: group voor groepen en teams, chat voor chats of tenant voor tenantbrede toegang. Vereist.
sensitivityLabels De vertrouwelijkheidslabels die van toepassing zijn op het bereiktype en die niet vooraf zijn goedgekeurd. Hiermee kunt u gevoelige organisatiegegevens beveiligen. Meer informatie over vertrouwelijkheidslabels. Opmerking: chatresource biedt nog geen ondersteuning voor sensitivityLabels.

Volgende stappen

Hulp krijgen of antwoorden op uw vragen vinden: