Udostępnij za pośrednictwem


New-AzureADServiceAppRoleAssignment

Przypisuje rolę aplikacji do użytkownika, grupy lub innej jednostki usługi.

Składnia

New-AzureADServiceAppRoleAssignment
   -ObjectId <String>
   [-InformationAction <ActionPreference>]
   [-InformationVariable <String>]
   -Id <String>
   -PrincipalId <String>
   -ResourceId <String>
   [<CommonParameters>]

Opis

Polecenie cmdlet New-AzureADServiceAppRoleAssignment przypisuje rolę aplikacji z jednostki usługi zasobów do użytkownika, grupy lub innej jednostki usługi. Role aplikacji przypisane do jednostek usługi są również nazywane uprawnieniami aplikacji.

Uwaga

Zachowanie opisane tutaj ma zastosowanie w przypadku Connect-AzureAD wywołania bez żadnych parametrów lub użycia tożsamości aplikacji należącej do firmy Microsoft. Zobacz Przykład 4 , aby dowiedzieć się więcej na temat różnicy podczas nawiązywania połączenia przy użyciu rejestracji aplikacji lub tożsamości usługi należącej do klienta.

Przykłady

Przykład 1. Przypisywanie roli aplikacji do innej jednostki usługi

PS C:\> Connect-AzureAD
PS C:\> New-AzureADServiceAppRoleAssignment -ObjectId $resource.ObjectId -ResourceId $resource.ObjectId -Id $appRole.Id -PrincipalId $client.ObjectId

W tym przykładzie jednostka usługi klienta ma przypisaną rolę aplikacji (uprawnienie aplikacji) zdefiniowaną przez jednostkę usługi zasobów (na przykład interfejs API):

  • ObjectId: Identyfikator ObjectId jednostki usługi zasobów (na przykład interfejs API).
  • ResourceId: Identyfikator ObjectId jednostki usługi zasobów (na przykład interfejs API).
  • Id: Identyfikator roli aplikacji (zdefiniowanej w jednostce usługi zasobów) do przypisania do jednostki usługi klienta. Jeśli w aplikacji zasobów nie zdefiniowano żadnych ról aplikacji, możesz użyć polecenia 00000000-0000-0000-0000-000000000000.
  • PrincipalId: Identyfikator ObjectId jednostki usługi klienta, do której przypisujesz rolę aplikacji.

Uwaga

Ten przykład ma zastosowanie, gdy Connect-AzureAD został wywołany bez żadnych parametrów. Zobacz Przykład 4 , aby zobaczyć, jak to polecenie cmdlet jest używane podczas nawiązywania połączenia przy użyciu rejestracji aplikacji lub tożsamości usługi należącej do klienta.

Przykład 2. Przypisywanie roli aplikacji do użytkownika

PS C:\> Connect-AzureAD
PS C:\> New-AzureADServiceAppRoleAssignment -ObjectId $resource.ObjectId -ResourceId $resource.ObjectId -Id $appRole.Id -PrincipalId $user.ObjectId

W tym przykładzie użytkownik ma przypisaną rolę aplikacji zdefiniowaną przez aplikację zasobów:

  • ObjectId: Identyfikator ObjectId jednostki usługi aplikacji.
  • ResourceId: Identyfikator ObjectId jednostki usługi aplikacji.
  • Id: identyfikator roli aplikacji (zdefiniowanej na jednostce usługi aplikacji) do przypisania do użytkownika. Jeśli do aplikacji zasobów nie zdefiniowano żadnych ról aplikacji, możesz użyć 00000000-0000-0000-0000-000000000000 polecenia , aby wskazać, że aplikacja jest przypisana do użytkownika.
  • PrincipalId: Identyfikator ObjectId użytkownika, do którego przypisujesz rolę aplikacji.

Uwaga

Ten przykład ma zastosowanie, gdy Connect-AzureAD został wywołany bez żadnych parametrów. Zobacz Przykład 4 , aby zobaczyć, jak to polecenie cmdlet jest używane podczas nawiązywania połączenia przy użyciu rejestracji aplikacji lub tożsamości usługi należącej do klienta.

Przykład 3. Przypisywanie roli aplikacji do grupy

PS C:\> Connect-AzureAD
PS C:\> New-AzureADServiceAppRoleAssignment -ObjectId $resource.ObjectId -ResourceId $resource.ObjectId -Id $appRole.Id -PrincipalId $group.ObjectId

W tym przykładzie grupa ma przypisaną rolę aplikacji zdefiniowaną przez aplikację zasobów. Wszyscy użytkownicy, którzy są bezpośrednim członkiem przypisanej grupy, są traktowani jako przypisani do roli aplikacji:

  • ObjectId: Identyfikator ObjectId jednostki usługi aplikacji.
  • ResourceId: Identyfikator ObjectId jednostki usługi aplikacji.
  • Id: Identyfikator roli aplikacji (zdefiniowanej na jednostce usługi aplikacji) do przypisania do grupy. Jeśli w aplikacji zasobów nie zdefiniowano żadnych ról aplikacji, możesz użyć 00000000-0000-0000-0000-000000000000 polecenia , aby wskazać, że aplikacja jest przypisana do grupy.
  • PrincipalId: Identyfikator ObjectId grupy, do której przypisujesz rolę aplikacji.

Uwaga

Ten przykład ma zastosowanie, gdy Connect-AzureAD został wywołany bez żadnych parametrów. Zobacz Przykład 4 , aby zobaczyć, jak to polecenie cmdlet jest używane podczas nawiązywania połączenia przy użyciu rejestracji aplikacji lub tożsamości usługi należącej do klienta.

Przykład 4. Po nawiązaniu połączenia przy użyciu tożsamości aplikacji lub usługi należącej do klienta

PS C:\> Connect-AzureAD -TenantId $tenantOrDomain -ApplicationId $appId -CertificateThumbprint $thumb
PS C:\> New-AzureADServiceAppRoleAssignment -ObjectId $client.ObjectId -ResourceId $resource.ObjectId -Id $appRole.Id -PrincipalId $client.ObjectId

Zachowanie tego polecenia cmdlet zmienia się po nawiązaniu połączenia z modułem programu PowerShell usługi Azure AD przy użyciu rejestracji aplikacji lub tożsamości usługi należącej do klienta, w tym:

  • Podczas nawiązywania połączenia jako jednostki usługi i
  • W przypadku używania parametru AadAccessToken z tokenem dostępu uzyskanym na potrzeby rejestracji aplikacji lub tożsamości usługi należącej do klienta.

W takich okolicznościach to polecenie cmdlet jest używane tylko do przypisywania roli aplikacji do innej jednostki usługi identyfikowanej przez ObjectId parametry i PrincipalId :

  • ObjectId: Identyfikator ObjectId jednostki usługi klienta, do której przypisujesz rolę aplikacji.
  • ResourceId: Identyfikator ObjectId jednostki usługi zasobów (na przykład interfejs API).
  • Id: Identyfikator roli aplikacji (zdefiniowanej w jednostce usługi zasobów) do przypisania do jednostki usługi klienta. Jeśli w aplikacji zasobów nie zdefiniowano żadnych ról aplikacji, możesz użyć polecenia 00000000-0000-0000-0000-000000000000.
  • PrincipalId: Identyfikator ObjectId jednostki usługi klienta, do której przypisujesz rolę aplikacji.

Podczas nawiązywania połączenia przy użyciu tożsamości aplikacji lub usługi należącej do klienta użyj polecenia New-AzureADUserAppRoleAssignment i New-AzureADGroupAppRoleAssignment , aby utworzyć odpowiednio przypisania ról aplikacji dla użytkowników i grup.

Parametry

-Id

Określa identyfikator roli aplikacji (zdefiniowanej w jednostce usługi zasobów) do przypisania. Jeśli w aplikacji zasobów nie zdefiniowano żadnych ról aplikacji, możesz wskazać 00000000-0000-0000-0000-000000000000 przypisanie aplikacji lub usługi zasobów bez określania roli aplikacji.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-InformationAction

Określa, jak to polecenie cmdlet reaguje na zdarzenie informacyjne. Dopuszczalne wartości dla tego parametru to:

  • Kontynuuj
  • Zignoruj
  • Zapytać
  • SilentlyContinue
  • Stop
  • Wstrzymanie
Typ:ActionPreference
Aliasy:infa
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-InformationVariable

Określa zmienną informacyjną.

Typ:String
Aliasy:iv
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ObjectId

Określa identyfikator ObjectId jednostki usługi zasobów (na przykład aplikacji lub interfejsu API), która ma zostać przypisana do użytkownika, grupy lub innej jednostki usługi.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-PrincipalId

Określa identyfikator ObjectId użytkownika, grupy lub innej jednostki usługi, do której jest przypisana rola aplikacji.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ResourceId

Określa identyfikator ObjectId jednostki usługi zasobów (na przykład aplikacji lub interfejsu API), która ma zostać przypisana do użytkownika, grupy lub innej jednostki usługi.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Uwagi

Zobacz przewodnik migracji dotyczący polecenia New-AzureADServiceAppRoleAssignment do programu Microsoft Graph PowerShell.