События
Присоединение к вызову ИИ Навыков
8 апр., 15 - 28 мая, 07
Отточите свои навыки ИИ и введите подметки, чтобы выиграть бесплатный экзамен сертификации
Зарегистрируйтесь!Этот браузер больше не поддерживается.
Выполните обновление до Microsoft Edge, чтобы воспользоваться новейшими функциями, обновлениями для системы безопасности и технической поддержкой.
Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Из этой статьи вы узнаете, как предоставить приложению согласие администратора на уровне клиента в идентификаторе Microsoft Entra. Сведения о настройке параметров согласия отдельных пользователей см. в статье "Настройка согласия конечных пользователей для приложений".
При предоставлении согласия администратора на уровне клиента приложению вы предоставляете приложению доступ к разрешениям, запрошенным от имени всей организации. Предоставление согласия администратора от имени организации — это конфиденциальная операция, позволяющая издателю приложения получать доступ к значительной части данных организации или разрешение на выполнение операций с высоким уровнем привилегий. Примерами таких операций могут быть управление ролями, полный доступ ко всем почтовым ящикам или всем сайтам, а также полное олицетворение пользователя. Поэтому перед предоставлением согласия необходимо тщательно проверить разрешения, запрашиваемые приложением.
По умолчанию предоставление согласия администратора на уровне клиента приложению позволяет всем пользователям получать доступ к приложению, если иное не ограничено. Чтобы ограничить вход пользователей в приложение, настройте приложение, чтобы требовать назначения пользователей , а затем назначить пользователей или группы приложению.
Важно!
Предоставление согласия администратора на уровне клиента может отозвать разрешения, которые уже были предоставлены для этого приложения. Разрешения, которые пользователи уже предоставили от собственного имени, не затрагиваются.
Для предоставления согласия администратора на уровне клиента необходимо войти в систему как пользователь, имеющий право давать согласие от имени организации.
Чтобы предоставить согласие администратора на уровне арендатора, требуется следующее:
Учетная запись пользователя Microsoft Entra с одной из следующих ролей:
Вы можете предоставить согласие администратора для всей организации через панель Корпоративные приложения, если приложение уже развернуто в вашем клиенте. Например, приложение может быть предоставлено в вашей организации, если по крайней мере один пользователь дает на него согласие. Дополнительные сведения см. в статье о том, как и почему приложения добавляются в идентификатор Microsoft Entra.
Чтобы предоставить согласие администратора на уровне клиента приложению, указанному в области корпоративных приложений :
Вы можете предоставить согласие администратора на уровне клиента из регистрации приложений в Центре администрирования Microsoft Entra для приложений, которые ваша организация разрабатывает и регистрирует непосредственно в клиенте Microsoft Entra.
Чтобы предоставить согласие администратора на уровне клиента из регистраций приложений:
При предоставлении согласия администратора на уровне клиента с помощью любого метода, описанного в предыдущем разделе, откроется окно из Центра администрирования Microsoft Entra, чтобы получить согласие администратора на уровне клиента. Если вам известен идентификатор клиента (также известный как идентификатор приложения) приложения, вы можете создать тот же URL-адрес, чтобы предоставить согласие администратора на уровне клиента.
URL-адрес согласия администратора на уровне клиента имеет следующий формат:
https://login.microsoftonline.com/{organization}/adminconsent?client_id={client-id}
Где:
{client-id}
представляет собой идентификатор клиента приложения (также известный как идентификатор приложения).{organization}
— это идентификатор арендатора или любое проверенное доменное имя арендатора, которому вы хотите предоставить согласие приложению. Вы можете использовать значение organizations
, которое приводит к тому, что согласие произойдет в домашнем клиенте пользователя, с которым вы входите.Как всегда, внимательно просматривайте разрешения, запрашиваемые приложением, перед предоставлением согласия.
Дополнительные сведения о создании URL-адреса согласия администратора на уровне клиента см. в разделе "Согласие администратора" на платформе удостоверений Майкрософт.
В этом разделе описано, как предоставить делегированные разрешения приложению. Делегированные разрешения — это разрешения, необходимые приложению для доступа к API от имени пользователя, вошедшего в систему. Разрешения определяются API ресурсов и предоставляются корпоративному приложению, который является клиентским приложением. Это согласие предоставляется от имени всех пользователей.
В следующем примере API ресурсов — Microsoft Graph идентификатора aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
объекта. API Microsoft Graph определяет делегированные разрешения, User.Read.All
и Group.Read.All
. Тип согласия AllPrincipals
указывает, что вы даете согласие от имени всех пользователей арендатора. Идентификатор объекта клиентского корпоративного приложения aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
.
Внимание!
Будьте осторожны! Разрешения, предоставленные программным способом, не подлежат проверке или подтверждению. Они вступают в силу немедленно.
Подключитесь к Microsoft Graph PowerShell и войдите как минимум под учетной записью администратора облачных приложений.
Connect-MgGraph -Scopes "Application.ReadWrite.All", "DelegatedPermissionGrant.ReadWrite.All"
Получение всех делегированных разрешений, определенных ресурсным приложением Microsoft Graph в вашем приложении арендатора. Определите делегированные разрешения, которые необходимо предоставить клиентскому приложению. В этом примере разрешения делегирования: User.Read.All
и Group.Read.All
Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'" -Property Oauth2PermissionScopes | Select -ExpandProperty Oauth2PermissionScopes | fl
Предоставьте делегированные разрешения клиентскому корпоративному приложению, выполнив следующий запрос.
$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
Убедитесь, что вы предоставили согласие администратора на уровне клиента, выполнив следующий запрос.
Get-MgOauth2PermissionGrant -Filter "clientId eq '00001111-aaaa-2222-bbbb-3333cccc4444' and consentType eq 'AllPrincipals'"
В этом разделе вы предоставляете разрешения для вашего корпоративного приложения. Разрешения приложения — это разрешения, необходимые приложению для доступа к API ресурсов. Разрешения определяются API ресурсов и предоставляются корпоративному приложению, которое является основным приложением. После предоставления приложению доступа к API ресурсов он запускается как фоновая служба или управляющая программа без вошедшего пользователя. Разрешения приложения также называются ролями приложения.
В следующем примере вы предоставляете приложению Microsoft Graph (главному субъекту идентификатора aaaaaaaa-bbbb-cccc-1111-222222222222
) роль приложения (разрешение приложения) с идентификатором df021288-bdef-4463-88db-98f22de89214
, которое предоставляется API ресурса с идентификатором 11112222-bbbb-3333-cccc-4444dddd5555
.
Подключитесь к Microsoft Graph PowerShell и войдите в систему, как минимум в качестве администратора привилегированных ролей.
Connect-MgGraph -Scopes "Application.ReadWrite.All", "AppRoleAssignment.ReadWrite.All"
Извлечь роли приложений, определенные в Microsoft Graph для вашего клиента. Определите роль приложения, которую необходимо предоставить клиентскому корпоративному приложению. В этом примере идентификатор роли приложения — df021288-bdef-4463-88db-98f22de89214
.
Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'" -Property AppRoles | Select -ExpandProperty appRoles |fl
Предоставьте основной приложению разрешение на роль приложения, выполнив следующий запрос.
$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
Используйте Обозреватель Graph для предоставления делегированных разрешений и разрешений приложения.
В этом разделе описано, как предоставить делегированные разрешения приложению. Делегированные разрешения — это разрешения, необходимые приложению для доступа к API от имени пользователя, вошедшего в систему. Разрешения определяются API ресурсов и предоставляются корпоративному приложению, который является клиентским приложением. Это согласие предоставляется от имени всех пользователей.
Вам нужно войти по крайней мере с ролью администратора облачных приложений.
В следующем примере API ресурсов — Microsoft Graph идентификатора aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
объекта. API Microsoft Graph определяет делегированные разрешения User.Read.All
и Group.Read.All
. Тип согласия AllPrincipals
указывает, что вы даете согласие от имени всех пользователей арендатора. Идентификатор объекта клиентского корпоративного приложения aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
.
Внимание!
Будьте осторожны! Разрешения, предоставленные программным способом, не подлежат проверке или подтверждению. Они вступают в силу немедленно.
Получение всех делегированных разрешений, определенных ресурсным приложением Microsoft Graph в вашем приложении арендатора. Определите делегированные разрешения, которые необходимо предоставить клиентскому приложению. В этом примере разрешения делегирования: User.Read.All
и Group.Read.All
GET https://graph.microsoft.com/v1.0/servicePrincipals?$filter=displayName eq 'Microsoft Graph'&$select=id,displayName,appId,oauth2PermissionScopes
Предоставьте делегированные разрешения клиентскому корпоративному приложению, выполнив следующий запрос.
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"
}
Убедитесь, что вы предоставили согласие администратора на уровне клиента, выполнив следующий запрос.
GET https://graph.microsoft.com/v1.0/oauth2PermissionGrants?$filter=clientId eq '00001111-aaaa-2222-bbbb-3333cccc4444' and consentType eq 'AllPrincipals'
В этом разделе вы предоставляете разрешения для вашего корпоративного приложения. Разрешения приложения — это разрешения, необходимые приложению для доступа к API ресурсов. Разрешения определяются API ресурсов и предоставляются корпоративному приложению, которое является основным приложением. После предоставления приложению доступа к API ресурсов он запускается как фоновая служба или управляющая программа без вошедшего пользователя. Разрешения приложения также называются ролями приложения.
В следующем примере вы предоставляете приложению Microsoft Graph (основной объект с идентификатором 00001111-aaaa-2222-bbbb-3333cccc4444
) роль приложения (разрешение приложения) с идентификатором df021288-bdef-4463-88db-98f22de89214
, которая предоставлена корпоративным приложением-ресурсом с идентификатором 11112222-bbbb-3333-cccc-4444dddd5555
.
Необходимо войти как минимум под учетной записью администратора привилегированных ролей.
Извлечь роли приложений, определенные в Microsoft Graph для вашего клиента. Определите роль приложения, которую необходимо предоставить клиентскому корпоративному приложению. В этом примере идентификатор роли приложения — df021288-bdef-4463-88db-98f22de89214
GET https://graph.microsoft.com/v1.0/servicePrincipals?$filter=displayName eq 'Microsoft Graph'&$select=id,displayName,appId,appRoles
Предоставьте основной приложению разрешение на роль приложения, выполнив следующий запрос.
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"
}
События
Присоединение к вызову ИИ Навыков
8 апр., 15 - 28 мая, 07
Отточите свои навыки ИИ и введите подметки, чтобы выиграть бесплатный экзамен сертификации
Зарегистрируйтесь!