Dela via


Konfigurera hur slutanvändare ger samtycke för appar

I den här artikeln får du lära dig hur du konfigurerar inställningar för användarmedgivande i Microsoft Entra-ID för att styra när och hur användare beviljar behörigheter till program. Den här vägledningen hjälper IT-administratörer att minska säkerhetsriskerna genom att begränsa eller inaktivera användarmedgivande.

Innan ett program kan komma åt organisationens data måste en användare ge programmet behörighet för detta. Olika behörigheter tillåter olika åtkomstnivåer. Som standard tillåts alla användare att godkänna program för behörigheter som inte kräver administratörsmedgivande. En användare kan till exempel som standard samtycka till att tillåta att en app får åtkomst till sin postlåda men inte kan samtycka till att tillåta oinskränkt åtkomst till en app att läsa och skriva till alla filer i organisationen.

För att minska risken för att skadliga program försöker lura användare att ge dem åtkomst till organisationens data rekommenderar vi att du endast tillåter användarmedgivande för program som har publicerats av en verifierad utgivare.

Kommentar

Applikationer som kräver att användare tilldelas till applikationen måste ha sina behörigheter godkända av en administratör, även om samtyckesprinciperna för användare för din katalog annars skulle tillåta en användare att samtycka för sig själv.

Förutsättningar

För att konfigurera användarmedgivande behöver du:

Du kan konfigurera inställningar för användarmedgivande i Microsoft Entra-ID med hjälp av antingen Administrationscenter för Microsoft Entra, Microsoft Graph PowerShell eller Microsoft Graph API. De inställningar som du konfigurerar gäller för alla användare i din organisation.

Så här konfigurerar du inställningar för användarmedgivande via administrationscentret för Microsoft Entra:

  1. Logga in på administrationscentret för Microsoft Entra som global administratör.

  2. Bläddra till Identitet>Program>Företagsappar>Medgivande och behörigheter>Inställningar för användarmedgivande.

  3. Under Användarmedgivande för program väljer du vilken medgivandeinställning som du vill konfigurera för alla användare.

  4. Spara inställningarna genom att välja Spara.

Skärmbild av fönstret Inställningar för användarmedgivande.

Förstå principer för auktorisering och behörighetsgivande i Microsoft Graph PowerShell

För att konfigurera inställningar för användarmedgivande programmatiskt med Hjälp av Microsoft Graph PowerShell är det viktigt att förstå skillnaden mellan auktoriseringsprincipen för hela klientorganisationen och enskilda behörighetsbeviljande principer. , authorizationPolicysom hämtas med Update-MgPolicyAuthorizationPolicy styr globala inställningar, till exempel om användare kan samtycka till appar och vilka behörighetsbeviljande principer som tilldelas till standardanvändarrollen. Du kan till exempel inaktivera användarmedgivande samtidigt som utvecklare kan hantera behörigheter för de appar de äger genom att endast ManagePermissionGrantsForOwnedResource.DeveloperConsent tilldela i permissionGrantPoliciesAssigned samlingen.

Å andra sidan listar permissionGrantPolicies-slutpunkt dina nuvarande tillstånd för beviljande av behörigheter. Dessa principer avgör vilka behörigheter som kan beviljas för program och under vilka omständigheter. Varje princip innehåller vissa villkor, men exkluderar andra. När en användare försöker godkänna ett program kontrollerar systemet behörighetsprinciperna för beviljande för att se om någon av dem gäller för användarens begäran. Till exempel skulle principen med låg risk göra det möjligt för användare att samtycka till de behörigheter som har konfigurerats som "låg risk". Den innehåller dessa lågriskprinciper (som ett GUID). Om en användare i ett annat scenario försöker samtycka i en kontext som matchar principen "AdminOnly" kan de inte samtycka.

Kommentar

Innan du uppdaterar inställningarna för medgivande med ett Update-MgPolicyPermissionGrantPolicy kommando hämtar du alltid den aktuella filen authorizationPolicy för att identifiera vilka behörighetsprinciper som redan har tilldelats. Detta säkerställer att du bevarar nödvändiga behörigheter, till exempel de som gör det möjligt för utvecklare att hantera medgivande för appar som de äger, och undvika att oavsiktligt ta bort befintliga funktioner.

Om du vill välja vilken appmedgivandeprincip som styr användarens medgivande för program använder du Microsoft Graph PowerShell-modulen . De cmdletar som används här ingår i modulen Microsoft.Graph.Identity.SignIns .

Anslut till Microsoft Graph PowerShell med lägsta nödvändiga behörighet. Om du vill läsa de aktuella inställningarna för användarmedgivande använder du Policy.Read.All. Om du vill läsa och ändra inställningarna för användarmedgivande använder du Policy.ReadWrite.Authorization. Du måste logga in som privilegierad rolladministratör.

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

Om du vill inaktivera användarnas samtycke kontrollerar du att medgivandeprinciperna (PermissionGrantPoliciesAssigned) innehåller andra aktuella ManagePermissionGrantsForOwnedResource.* principer när du uppdaterar samlingen. På så sätt kan du behålla din aktuella konfiguration för inställningar för användarmedgivande och andra inställningar för resursmedgivande.

# only exclude user consent policy
$body = @{
    "permissionGrantPolicyIdsAssignedToDefaultUserRole" = @(
        "managePermissionGrantsForOwnedResource.{other-current-policies}" 
    )
}
Update-MgPolicyAuthorizationPolicy -BodyParameter $body

Om du vill tillåta användarmedgivande väljer du vilken appmedgivandeprincip som ska styra användarnas auktorisering att bevilja medgivande till appar. Se till att medgivandeprinciperna (PermissionGrantPoliciesAssigned) innehåller andra aktuella ManagePermissionGrantsForOwnedResource.* principer vid uppdatering av samlingen. På så sätt kan du behålla din aktuella konfiguration för inställningar för användarmedgivande och andra inställningar för resursmedgivande.

$body = @{
    "permissionGrantPolicyIdsAssignedToDefaultUserRole" = @(
        "managePermissionGrantsForSelf.{consent-policy-id}",
        "managePermissionGrantsForOwnedResource.{other-current-policies}"
    )
}
Update-MgPolicyAuthorizationPolicy -BodyParameter $body

Ersätt {consent-policy-id} med ID:t för den princip som du vill tillämpa. Du kan välja en princip för anpassat appmedgivande som du har skapat, eller så kan du välja mellan följande inbyggda principer:

ID-nummer beskrivning
microsoft-användare-standard-låg Tillåt användarmedgivande för appar från verifierade utgivare för valda behörigheter
Tillåt endast begränsat användarmedgivande för appar från verifierade utgivare och appar som är registrerade i din klientorganisation och endast för behörigheter som du klassificerar som låg påverkan. (Kom ihåg att klassificera behörigheter för att välja vilka behörigheter som användare får samtycka till.)
microsoft-användare-standard-legacy Tillåt användarmedgivande för appar
Med det här alternativet kan alla användare godkänna alla behörigheter som inte kräver administratörsmedgivande för alla program

Om du till exempel vill aktivera användarmedgivande som omfattas av den inbyggda principen microsoft-user-default-lowkör du följande kommandon:

$body = @{
    "permissionGrantPolicyIdsAssignedToDefaultUserRole" = @(
        "managePermissionGrantsForSelf.managePermissionGrantsForSelf.microsoft-user-default-low",
        "managePermissionGrantsForOwnedResource.{other-current-policies}"
    )
}

Förstå principer för auktorisering och behörighetsgivning i Microsoft Graph

För att konfigurera inställningar för användarmedgivande programmatiskt med hjälp av Microsoft Graph är det viktigt att förstå skillnaden mellan auktoriseringspolicyn för hela klientorganisationen och enskilda behörighetsbeviljande principer. authorizationPolicy (hämtad med GET https://graph.microsoft.com/v1.0/policies/authorizationPolicy/authorizationPolicy) styr globala inställningar, såsom huruvida användare kan ge samtycke till appar och vilka behörighetsprinciper som tilldelas standardanvändarrollen. Du kan till exempel inaktivera användarmedgivande samtidigt som utvecklare kan hantera behörigheter för de appar de äger genom att endast ManagePermissionGrantsForOwnedResource.DeveloperConsent tilldela i permissionGrantPoliciesAssigned samlingen.

Å permissionGrantPolicies andra sidan visar slutpunkten (GET https://graph.microsoft.com/v1.0/policies/permissionGrantPolicies) dina aktuella principer för beviljande av behörigheter. Dessa principer avgör vilka behörigheter som kan beviljas för program och under vilka omständigheter. Varje princip innehåller vissa villkor, men exkluderar andra. När en användare försöker godkänna ett program kontrollerar systemet behörighetsprinciperna för beviljande för att se om någon av dem gäller för användarens begäran. Till exempel skulle principen med låg risk göra det möjligt för användare att samtycka till de behörigheter som har konfigurerats som "låg risk". Den innehåller dessa lågriskprinciper (som ett GUID). Om en användare i ett annat scenario försöker samtycka i en kontext som matchar principen "AdminOnly" kan de inte samtycka.

Kommentar

Innan du uppdaterar inställningarna för samtycke med en PATCH begäran, hämtar du alltid den aktuella authorizationPolicy för att identifiera vilka beviljandepolicies som redan har tilldelats. Detta säkerställer att du bevarar nödvändiga behörigheter, till exempel de som gör det möjligt för utvecklare att hantera medgivande för appar som de äger, och undvika att oavsiktligt ta bort befintliga funktioner.

Använd Graph Explorer för att välja vilken appmedgivandeprincip som styr användarens medgivande för program. Du måste logga in som privilegierad rolladministratör.

Om du vill inaktivera användarnas samtycke kontrollerar du att medgivandeprinciperna (PermissionGrantPoliciesAssigned) innehåller andra aktuella ManagePermissionGrantsForOwnedResource.* principer när du uppdaterar samlingen. På så sätt kan du behålla din aktuella konfiguration för inställningar för användarmedgivande och andra inställningar för resursmedgivande.

PATCH https://graph.microsoft.com/v1.0/policies/authorizationPolicy
{
   "defaultUserRolePermissions": {
       "permissionGrantPoliciesAssigned": [
           "managePermissionGrantsForOwnedResource.{other-current-policies}"
        ]
    }
}

Om du vill tillåta användarmedgivande väljer du vilken appmedgivandeprincip som ska styra användarnas auktorisering att bevilja medgivande till appar. Se till att medgivandeprinciperna (PermissionGrantPoliciesAssigned) innehåller andra aktuella ManagePermissionGrantsForOwnedResource.* principer vid uppdatering av samlingen. På så sätt kan du behålla din aktuella konfiguration för inställningar för användarmedgivande och andra inställningar för resursmedgivande.

PATCH https://graph.microsoft.com/v1.0/policies/authorizationPolicy

{
    "defaultUserRolePermissions": {
        "managePermissionGrantsForSelf.{consent-policy-id}",
        "managePermissionGrantsForOwnedResource.{other-current-policies}"
   }
}

Ersätt {consent-policy-id} med ID:t för den princip som du vill tillämpa. Du kan välja en princip för anpassat appmedgivande som du har skapat, eller så kan du välja mellan följande inbyggda principer:

ID-nummer beskrivning
microsoft-användare-standard-låg Tillåt användarmedgivande för appar från verifierade utgivare för valda behörigheter
Tillåt endast begränsat användarmedgivande för appar från verifierade utgivare och appar som är registrerade i din klientorganisation och endast för behörigheter som du klassificerar som låg påverkan. (Kom ihåg att klassificera behörigheter för att välja vilka behörigheter som användare får samtycka till.)
microsoft-användare-standard-legacy Tillåt användarmedgivande för appar
Med det här alternativet kan alla användare godkänna alla behörigheter som inte kräver administratörsmedgivande för alla program

Om du till exempel vill aktivera användarmedgivande enligt den inbyggda principen microsoft-user-default-lowanvänder du följande PATCH-kommando:

PATCH https://graph.microsoft.com/v1.0/policies/authorizationPolicy

{
    "defaultUserRolePermissions": {
        "permissionGrantPoliciesAssigned": [
            "managePermissionGrantsForSelf.microsoft-user-default-low",
            "managePermissionGrantsForOwnedResource.{other-current-policies}"
        ]
    }
}

Eventuella uppdateringar av inställningar för användarmedgivande påverkar endast framtida medgivandeåtgärder för program. Befintliga medgivandebidrag förblir oförändrade och användarna fortsätter att ha åtkomst baserat på de behörigheter som tidigare beviljats. Information om hur du återkallar befintliga medgivandebidrag finns i Granska behörigheter som beviljats företagsprogram.

Tips

Aktivera arbetsflödet för administratörsmedgivande för att tillåta användare att begära en administratörs granskning och godkännande av ett program som användaren inte har tillåtelse att samtycka till. Du kan till exempel göra detta när användarens medgivande har inaktiverats eller när ett program begär behörigheter som användaren inte får bevilja.

Nästa steg