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ć polecenia00000000-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ć polecenia00000000-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.