New-AzureADServiceAppRoleAssignment
Назначает роль приложения пользователю, группе или другому субъекту-службе.
Синтаксис
New-AzureADServiceAppRoleAssignment
-ObjectId <String>
[-InformationAction <ActionPreference>]
[-InformationVariable <String>]
-Id <String>
-PrincipalId <String>
-ResourceId <String>
[<CommonParameters>]
Описание
Командлет New-AzureADServiceAppRoleAssignment назначает роль приложения из субъекта-службы ресурса пользователю, группе или другому субъекту-службе. Роли приложений, назначенные субъектам-службам, также называются разрешениями приложений.
Примечание
Описанное здесь поведение применяется при Connect-AzureAD
вызове без параметров или с использованием удостоверения приложения, принадлежащего Корпорации Майкрософт. Дополнительные сведения о различиях при подключении с помощью регистрации приложения или удостоверения службы см. в примере 4 .
Примеры
Пример 1. Назначение роли приложения другому субъекту-службе
PS C:\> Connect-AzureAD
PS C:\> New-AzureADServiceAppRoleAssignment -ObjectId $resource.ObjectId -ResourceId $resource.ObjectId -Id $appRole.Id -PrincipalId $client.ObjectId
В этом примере субъекту-службе клиента назначается роль приложения (разрешение приложения), определяемая субъектом-службой ресурса (например, API):
-
ObjectId
: ObjectId субъекта-службы ресурса (например, API). -
ResourceId
: ObjectId субъекта-службы ресурса (например, API). -
Id
: идентификатор роли приложения (определенной в субъекте-службе ресурса), назначаемой субъекту-службе клиента. Если в приложении-ресурсе не определены роли приложения, можно использовать00000000-0000-0000-0000-000000000000
. -
PrincipalId
: ObjectId субъекта-службы клиента, которому назначается роль приложения.
Примечание
Этот пример применяется при Connect-AzureAD
вызове без каких-либо параметров. См . пример 4 , чтобы узнать, как этот командлет используется при подключении с помощью регистрации приложения или удостоверения службы, принадлежащей клиенту.
Пример 2. Назначение роли приложения пользователю
PS C:\> Connect-AzureAD
PS C:\> New-AzureADServiceAppRoleAssignment -ObjectId $resource.ObjectId -ResourceId $resource.ObjectId -Id $appRole.Id -PrincipalId $user.ObjectId
В этом примере пользователю назначается роль приложения, определенная приложением-ресурсом:
-
ObjectId
: ObjectId субъекта-службы приложения. -
ResourceId
: ObjectId субъекта-службы приложения. -
Id
: идентификатор роли приложения (определенной в субъекте-службе приложения), назначаемой пользователю. Если для приложения-ресурса не определены роли приложения, можно указать00000000-0000-0000-0000-000000000000
, что приложение назначено пользователю. -
PrincipalId
: ObjectId пользователя, которому назначается роль приложения.
Примечание
Этот пример применяется при Connect-AzureAD
вызове без каких-либо параметров. См . пример 4 , чтобы узнать, как этот командлет используется при подключении с помощью регистрации приложения или удостоверения службы, принадлежащей клиенту.
Пример 3. Назначение роли приложения группе
PS C:\> Connect-AzureAD
PS C:\> New-AzureADServiceAppRoleAssignment -ObjectId $resource.ObjectId -ResourceId $resource.ObjectId -Id $appRole.Id -PrincipalId $group.ObjectId
В этом примере группе назначается роль приложения, определяемая приложением-ресурсом. Всем пользователям, которые являются прямыми членами назначенной группы, назначена роль приложения:
-
ObjectId
: ObjectId субъекта-службы приложения. -
ResourceId
: ObjectId субъекта-службы приложения. -
Id
: идентификатор роли приложения (определенной в субъекте-службе приложения), назначаемой группе. Если в приложении-ресурсе не определены роли приложения, можно указать00000000-0000-0000-0000-000000000000
, что приложение назначено группе. -
PrincipalId
: ObjectId группы, которой назначается роль приложения.
Примечание
Этот пример применяется при Connect-AzureAD
вызове без каких-либо параметров. См . пример 4 , чтобы узнать, как этот командлет используется при подключении с помощью регистрации приложения или удостоверения службы, принадлежащей клиенту.
Пример 4. При подключении с помощью приложения или удостоверения службы, принадлежащих клиенту
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
Поведение этого командлета изменяется при подключении к модулю Azure AD PowerShell с помощью регистрации приложения или удостоверения службы, принадлежащих клиенту, в том числе:
- При подключении в качестве субъекта-службы и
- При использовании
AadAccessToken
параметра с маркером доступа, полученным для регистрации приложения или удостоверения службы, принадлежащих клиенту.
В таких случаях этот командлет используется только для назначения роли приложения другому субъекту-службе, определяемой параметрами ObjectId
и PrincipalId
:
-
ObjectId
: ObjectId субъекта-службы клиента, которому назначается роль приложения. -
ResourceId
: ObjectId субъекта-службы ресурса (например, API). -
Id
: идентификатор роли приложения (определенной в субъекте-службе ресурса), назначаемой субъекту-службе клиента. Если в приложении-ресурсе не определены роли приложения, можно использовать00000000-0000-0000-0000-000000000000
. -
PrincipalId
: ObjectId субъекта-службы клиента, которому назначается роль приложения.
При подключении с помощью приложения или удостоверения службы, принадлежащей клиенту, используйте new-AzureADUserAppRoleAssignment и New-AzureADGroupAppRoleAssignment , чтобы создать назначения ролей приложения для пользователя и групп соответственно.
Параметры
-Id
Указывает идентификатор роли приложения (определенной в субъекте-службе ресурса), который необходимо назначить. Если в приложении-ресурсе не определены роли приложения, можно указать 00000000-0000-0000-0000-000000000000
назначение приложения или службы ресурсов без указания роли приложения.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-InformationAction
Указывает, как этот командлет реагирует на информационное событие. Допустимые значения для этого параметра:
- Продолжить
- Игнорировать
- Inquire
- SilentlyContinue
- Остановить
- Приостановить
Тип: | ActionPreference |
Aliases: | infa |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-InformationVariable
Указывает информационную переменную.
Тип: | String |
Aliases: | iv |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-ObjectId
Указывает ObjectId субъекта-службы ресурса (например, приложения или API), который будет назначен пользователю, группе или другому субъекту-службе.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-PrincipalId
Указывает ObjectId пользователя, группы или другого субъекта-службы, которому назначается роль приложения.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-ResourceId
Указывает ObjectId субъекта-службы ресурса (например, приложения или API), который будет назначен пользователю, группе или другому субъекту-службе.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
Примечания
См. руководство по миграции командлета New-AzureADServiceAppRoleAssignment в Microsoft Graph PowerShell.