Udostępnij za pośrednictwem


Udzielanie zgody administratora całej dzierżawy dla aplikacji

Z tego artykułu dowiesz się, jak udzielić zgody administratora dla całej dzierżawy na aplikację w usłudze Microsoft Entra ID. Aby dowiedzieć się, jak skonfigurować ustawienia zgody poszczególnych użytkowników, zobacz Konfigurowanie sposobu wyrażania zgody przez użytkowników końcowych na aplikacje.

Po udzieleniu zgody administratora dla całej dzierżawy na aplikację udzielasz aplikacji dostępu do uprawnień żądanych w imieniu całej organizacji. Udzielanie zgody administratora w imieniu organizacji jest operacją wrażliwą, co potencjalnie umożliwia wydawcy aplikacji dostęp do znaczących części danych organizacji lub uprawnienia do wykonywania wysoce uprzywilejowanych operacji. Przykładami takich operacji może być zarządzanie rolami, pełny dostęp do wszystkich skrzynek pocztowych lub wszystkich witryn oraz personifikacja pełnego użytkownika. W związku z tym należy dokładnie przejrzeć uprawnienia, których aplikacja żąda przed udzieleniem zgody.

Domyślnie udzielenie zgody administratora dla całej dzierżawy na aplikację umożliwia wszystkim użytkownikom dostęp do aplikacji, chyba że w przeciwnym razie jest to ograniczone. Aby ograniczyć użytkowników, którzy mogą logować się do aplikacji, skonfiguruj aplikację tak, aby wymagała przypisania użytkownika, a następnie przypisz użytkowników lub grupy do aplikacji.

Ważne

Udzielenie zgody administratora dla całej dzierżawy może odwołać uprawnienia, które zostały już przyznane dla całej dzierżawy dla tej aplikacji. Uprawnienia, które użytkownicy otrzymali już w swoim imieniu, nie mają wpływu.

Wymagania wstępne

Udzielenie zgody administratora dla całej dzierżawy wymaga zalogowania się jako użytkownik, który jest autoryzowany do udzielania zgody w imieniu organizacji.

Aby udzielić zgody administratora dla całej dzierżawy, potrzebne są następujące elementy:

  • Konto użytkownika Microsoft Entra z jedną z następujących ról:

    • Administrator ról uprzywilejowanych w celu udzielenia zgody dla aplikacji żądających jakichkolwiek uprawnień dla dowolnego interfejsu API.
    • Administrator aplikacji w chmurze lub administrator aplikacji w celu udzielenia zgody dla aplikacji żądających jakichkolwiek uprawnień dla dowolnego interfejsu API, z wyjątkiem ról aplikacji programu Microsoft Graph (uprawnień aplikacji).
    • Rola katalogu niestandardowego obejmująca uprawnienia do udzielania uprawnień aplikacjom dla uprawnień wymaganych przez aplikację.

Możesz udzielić zgody administratora dla całej dzierżawy za pośrednictwem okienka Aplikacje dla przedsiębiorstw, jeśli aplikacja została już aprowizowana w dzierżawie. Aplikację można aprowizować w dzierżawie, jeśli co najmniej jeden użytkownik wyraził już zgodę na tę aplikację. Aby uzyskać więcej informacji, zobacz How and why applications are added to Microsoft Entra ID (Jak i dlaczego aplikacje są dodawane do identyfikatora Entra firmy Microsoft).

Napiwek

Kroki opisane w tym artykule mogą się nieznacznie różnić w zależności od portalu, od którego zaczynasz.

Aby udzielić zgody administratora dla całej dzierżawy na aplikację wymienioną w okienku Aplikacje dla przedsiębiorstw:

  1. Zaloguj się do centrum administracyjnego firmy Microsoft Entra co najmniej jako administrator aplikacji w chmurze.
  2. Przejdź do sekcji Identity>Applications Enterprise Applications>Wszystkie aplikacje.>
  3. Wprowadź nazwę istniejącej aplikacji w polu wyszukiwania, a następnie wybierz aplikację z wyników wyszukiwania.
  4. Wybierz pozycję Uprawnienia w obszarze Zabezpieczenia. Zrzut ekranu przedstawiający sposób udzielania zgody administratora dla całej dzierżawy.
  5. Dokładnie przejrzyj uprawnienia wymagane przez aplikację. Jeśli zgadzasz się z uprawnieniami wymaganymi przez aplikację, wybierz pozycję Udziel zgody administratora.

Możesz udzielić zgody administratora dla całej dzierżawy od Rejestracje aplikacji w centrum administracyjnym firmy Microsoft Entra dla aplikacji, które organizacja opracowała i zarejestrowała bezpośrednio w dzierżawie firmy Microsoft Entra.

Aby udzielić zgody administratora dla całej dzierżawy z Rejestracje aplikacji:

  1. W centrum administracyjnym firmy Microsoft Entra przejdź do pozycji Aplikacje> tożsamości>Rejestracje aplikacji> Wszystkie aplikacje.
  2. Wprowadź nazwę istniejącej aplikacji w polu wyszukiwania, a następnie wybierz aplikację z wyników wyszukiwania.
  3. Wybierz pozycję Uprawnienia interfejsu API w obszarze Zarządzaj.
  4. Dokładnie przejrzyj uprawnienia wymagane przez aplikację. Jeśli zgadzasz się, wybierz pozycję Udziel zgody administratora.

Po udzieleniu zgody administratora dla całej dzierżawy przy użyciu jednej z metod opisanych w poprzedniej sekcji zostanie otwarte okno z centrum administracyjnego firmy Microsoft Entra w celu wyświetlenia monitu o zgodę administratora w całej dzierżawie. Jeśli znasz identyfikator klienta (znany również jako identyfikator aplikacji) aplikacji, możesz utworzyć ten sam adres URL, aby udzielić zgody administratora dla całej dzierżawy.

Adres URL zgody administratora dla całej dzierżawy ma następujący format:

https://login.microsoftonline.com/{organization}/adminconsent?client_id={client-id}

gdzie:

  • {client-id} jest identyfikatorem klienta aplikacji (nazywanym również identyfikatorem aplikacji).
  • {organization} to identyfikator dzierżawy lub dowolna zweryfikowana nazwa domeny dzierżawy, w której chcesz wyrazić zgodę na aplikację. Możesz użyć wartości organizations, która powoduje, że zgoda ma miejsce w dzierżawie głównej zalogowanego użytkownika.

Jak zawsze należy dokładnie przejrzeć uprawnienia żądane przez aplikację przed udzieleniem zgody.

Aby uzyskać więcej informacji na temat konstruowania adresu URL zgody administratora dla całej dzierżawy, zobacz Zgoda administratora na Platforma tożsamości Microsoft.

W tej sekcji udzielasz delegowanych uprawnień aplikacji. Uprawnienia delegowane to uprawnienia, które aplikacja musi uzyskać dostęp do interfejsu API w imieniu zalogowanego użytkownika. Uprawnienia są definiowane przez interfejs API zasobów i przyznawane aplikacji dla przedsiębiorstw, która jest aplikacją kliencką. Ta zgoda jest udzielana w imieniu wszystkich użytkowników.

W poniższym przykładzie interfejs API zasobu to Microsoft Graph identyfikator aaaaaaaa-0000-1111-2222-bbbbbbbbbbbbobiektu . Interfejs API programu Microsoft Graph definiuje delegowane uprawnienia User.Read.All i Group.Read.All. Wartość consentType to AllPrincipals, wskazująca, że wyrażasz zgodę w imieniu wszystkich użytkowników w dzierżawie. Identyfikator obiektu aplikacji dla przedsiębiorstw klienta to aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb.

Uwaga

Ostrożnie! Uprawnienia przyznane programowo nie podlegają przeglądowi ani potwierdzeniu. Natychmiast wejdą one w życie.

  1. Połącz się z programem Microsoft Graph PowerShell i zaloguj się jako co najmniej administrator aplikacji w chmurze.

    Connect-MgGraph -Scopes "Application.ReadWrite.All", "DelegatedPermissionGrant.ReadWrite.All"
    
  2. Pobierz wszystkie delegowane uprawnienia zdefiniowane przez program Microsoft Graph (aplikacja zasobów) w aplikacji dzierżawy. Zidentyfikuj delegowane uprawnienia, które należy przyznać aplikacji klienckiej. W tym przykładzie uprawnienia delegowania to User.Read.All i Group.Read.All

    Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'" -Property Oauth2PermissionScopes | Select -ExpandProperty Oauth2PermissionScopes | fl
    
  3. Udziel delegowanych uprawnień aplikacji klienckiej dla przedsiębiorstw, uruchamiając następujące żądanie.

    $params = @{
    
    "ClientId" = "00001111-aaaa-2222-bbbb-3333cccc4444"
    "ConsentType" = "AllPrincipals"
    "ResourceId" = "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1"
    "Scope" = "User.Read.All Group.Read.All"
    }
    
    New-MgOauth2PermissionGrant -BodyParameter $params | 
    Format-List Id, ClientId, ConsentType, ResourceId, Scope
    
  4. Upewnij się, że udzielono zgody administratora dla całej dzierżawy, uruchamiając następujące żądanie.

 Get-MgOauth2PermissionGrant -Filter "clientId eq '00001111-aaaa-2222-bbbb-3333cccc4444' and consentType eq 'AllPrincipals'" 

W tej sekcji przyznasz aplikacji uprawnienia do aplikacji dla przedsiębiorstw. Uprawnienia aplikacji to uprawnienia, których aplikacja potrzebuje do uzyskania dostępu do interfejsu API zasobów. Uprawnienia są definiowane przez interfejs API zasobów i przyznawane aplikacji dla przedsiębiorstw, która jest główną aplikacją. Po udzieleniu aplikacji dostępu do interfejsu API zasobów działa jako usługa w tle lub demon bez zalogowanego użytkownika. Uprawnienia aplikacji są również nazywane rolami aplikacji.

W poniższym przykładzie przyznasz aplikacji microsoft Graph (podmiot zabezpieczeń ) aaaaaaaa-bbbb-cccc-1111-222222222222rolę aplikacji (uprawnienie aplikacji) identyfikatora df021288-bdef-4463-88db-98f22de89214 uwidocznionego przez interfejs API zasobu o identyfikatorze 11112222-bbbb-3333-cccc-4444dddd5555.

  1. Połącz się z programem Microsoft Graph PowerShell i zaloguj się jako co najmniej administrator ról uprzywilejowanych.

    Connect-MgGraph -Scopes "Application.ReadWrite.All", "AppRoleAssignment.ReadWrite.All"
    
  2. Pobierz role aplikacji zdefiniowane przez program Microsoft Graph w dzierżawie. Zidentyfikuj rolę aplikacji, którą chcesz przyznać aplikacji klienckiej dla przedsiębiorstw. W tym przykładzie identyfikator roli aplikacji to df021288-bdef-4463-88db-98f22de89214.

    Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'" -Property AppRoles | Select -ExpandProperty appRoles |fl
    
  3. Udziel aplikacji uprawnień (roli aplikacji) głównej aplikacji, uruchamiając następujące żądanie.

 $params = @{
  "PrincipalId" ="aaaaaaaa-bbbb-cccc-1111-222222222222"
  "ResourceId" = "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1"
  "AppRoleId" = "df021288-bdef-4463-88db-98f22de89214"
}

New-MgServicePrincipalAppRoleAssignment -ServicePrincipalId 'aaaaaaaa-bbbb-cccc-1111-222222222222' -BodyParameter $params | 
  Format-List Id, AppRoleId, CreatedDateTime, PrincipalDisplayName, PrincipalId, PrincipalType, ResourceDisplayName

Użyj Eksploratora programu Graph, aby udzielić uprawnień delegowanych i aplikacji.

W tej sekcji udzielasz delegowanych uprawnień aplikacji. Uprawnienia delegowane to uprawnienia, które aplikacja musi uzyskać dostęp do interfejsu API w imieniu zalogowanego użytkownika. Uprawnienia są definiowane przez interfejs API zasobów i przyznawane aplikacji dla przedsiębiorstw, która jest aplikacją kliencką. Ta zgoda jest udzielana w imieniu wszystkich użytkowników.

Musisz zalogować się jako co najmniej administrator aplikacji w chmurze.

W poniższym przykładzie interfejs API zasobu to Microsoft Graph identyfikator aaaaaaaa-0000-1111-2222-bbbbbbbbbbbbobiektu . Interfejs API programu Microsoft Graph definiuje delegowane uprawnienia User.Read.All i Group.Read.All. Wartość consentType to AllPrincipals, wskazująca, że wyrażasz zgodę w imieniu wszystkich użytkowników w dzierżawie. Identyfikator obiektu aplikacji dla przedsiębiorstw klienta to aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb.

Uwaga

Ostrożnie! Uprawnienia przyznane programowo nie podlegają przeglądowi ani potwierdzeniu. Natychmiast wejdą one w życie.

  1. Pobierz wszystkie delegowane uprawnienia zdefiniowane przez program Microsoft Graph (aplikacja zasobów) w aplikacji dzierżawy. Zidentyfikuj delegowane uprawnienia, które należy przyznać aplikacji klienckiej. W tym przykładzie uprawnienia delegowania to User.Read.All i Group.Read.All

    GET https://graph.microsoft.com/v1.0/servicePrincipals?$filter=displayName eq 'Microsoft Graph'&$select=id,displayName,appId,oauth2PermissionScopes
    
  2. Udziel delegowanych uprawnień aplikacji klienckiej dla przedsiębiorstw, uruchamiając następujące żądanie.

    POST https://graph.microsoft.com/v1.0/oauth2PermissionGrants
    
    Request body
    {
       "clientId": "00001111-aaaa-2222-bbbb-3333cccc4444",
       "consentType": "AllPrincipals",
       "resourceId": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
       "scope": "User.Read.All Group.Read.All"
    }
    
  3. Upewnij się, że udzielono zgody administratora dla całej dzierżawy, uruchamiając następujące żądanie.

    GET https://graph.microsoft.com/v1.0/oauth2PermissionGrants?$filter=clientId eq '00001111-aaaa-2222-bbbb-3333cccc4444' and consentType eq 'AllPrincipals'
    

W tej sekcji przyznasz aplikacji uprawnienia do aplikacji dla przedsiębiorstw. Uprawnienia aplikacji to uprawnienia, których aplikacja potrzebuje do uzyskania dostępu do interfejsu API zasobów. Uprawnienia są definiowane przez interfejs API zasobów i przyznawane aplikacji dla przedsiębiorstw, która jest główną aplikacją. Po udzieleniu aplikacji dostępu do interfejsu API zasobów działa jako usługa w tle lub demon bez zalogowanego użytkownika. Uprawnienia aplikacji są również nazywane rolami aplikacji.

W poniższym przykładzie przyznasz aplikacji program Microsoft Graph (podmiot zabezpieczeń identyfikatora 00001111-aaaa-2222-bbbb-3333cccc4444) rolę aplikacji (uprawnienie aplikacji) identyfikatora df021288-bdef-4463-88db-98f22de89214 uwidocznionego przez aplikację przedsiębiorstwa zasobu o identyfikatorze 11112222-bbbb-3333-cccc-4444dddd5555.

Musisz zalogować się jako co najmniej administrator ról uprzywilejowanych.

  1. Pobierz role aplikacji zdefiniowane przez program Microsoft Graph w dzierżawie. Zidentyfikuj rolę aplikacji, którą chcesz przyznać aplikacji klienckiej dla przedsiębiorstw. W tym przykładzie identyfikator roli aplikacji to df021288-bdef-4463-88db-98f22de89214

    GET https://graph.microsoft.com/v1.0/servicePrincipals?$filter=displayName eq 'Microsoft Graph'&$select=id,displayName,appId,appRoles
    
  2. Udziel aplikacji uprawnień (roli aplikacji) głównej aplikacji, uruchamiając następujące żądanie.

    POST https://graph.microsoft.com/v1.0/servicePrincipals/11112222-bbbb-3333-cccc-4444dddd5555/appRoleAssignedTo
    
    Request body
    
    {
       "principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
       "resourceId": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
       "appRoleId": "df021288-bdef-4463-88db-98f22de89214"
    }
    

Następne kroki