New-ApplicationAccessPolicy
Этот командлет доступен только в облачной службе.
Используйте командлет New-ApplicationAccessPolicy, чтобы ограничить или запретить доступ к определенному набору почтовых ящиков приложением, использующим API (Outlook REST, Microsoft Graph или Exchange Web Services (EWS)). Эти политики дополняют области разрешений, объявленные приложением.
Сведения о наборах параметров в разделе Синтаксис ниже см. В разделе Синтаксис командлета Exchange.
Примечание: Политики доступа к приложениям скоро будут заменены контроль доступа на основе ролей для приложений. Дополнительные сведения см. в статье Контроль доступа на основе ролей для приложений Exchange.
Синтаксис
New-ApplicationAccessPolicy
-AccessRight <ApplicationAccessPolicyRight>
-AppId <String[]>
-PolicyScopeGroupId <RecipientIdParameter>
[-Confirm]
[-Description <String>]
[-WhatIf]
[<CommonParameters>]
Описание
Для его запуска необходимо получить соответствующие разрешения. В этой статье перечислены все параметры командлета. Но некоторые из них могут быть вам не доступны, если они не включены в назначенные разрешения. Сведения о необходимых разрешениях для запуска командлетов и использования параметров в организации см. в статье Find the permissions required to run any Exchange cmdlet.
Вы можете создать ограниченное количество политик в организации на основе фиксированного объема пространства. Если в вашей организации заканчивается место для этих политик, вы увидите ошибку: "Общий размер политик доступа к приложениям превысил ограничение". Чтобы максимально увеличить количество политик и уменьшить объем пространства, используемого политиками, задайте для политики одно символьное описание пробела. Этот метод позволяет использовать около 300 политик (по сравнению с предыдущим ограничением в 100 политик).
Хотя доступ к ресурсам на основе области, такой как Mail.Read или Calendar.Read, действует для обеспечения того, что приложение может только читать сообщения электронной почты или события в почтовом ящике и не делать ничего другого, политики доступа приложений позволяют администраторам применять ограничения, основанные на списке почтовых ящиков. Например, приложения, разработанные для одной страны, не должны иметь доступа к данным из других стран. Или приложение интеграции CRM должно получать доступ только к календарям в организации sales и ни в каких других отделах.
Каждый запрос API с помощью REST API Outlook или API Microsoft Graph к целевому почтовому ящику, выполняемый приложением, проверяется с помощью следующих правил (в том же порядке):
- Если существует несколько политик доступа к приложениям для одной пары "Приложение" и "Целевой почтовый ящик", политика DenyAccess имеет приоритет над политикой RestrictAccess.
- Если для приложения и целевого почтового ящика существует политика DenyAccess, запрос на доступ приложения отклоняется (даже если существует политика RestrictAccess).
- Если существуют политики RestrictAccess, соответствующие приложениям и целевым почтовым ящикам, то приложению предоставляется доступ.
- Если для приложения существуют политики ограничения и целевой почтовый ящик не является членом этих политик, то приложению будет отказано в доступе к целевому почтовому ящику.
- Если ни одно из указанных выше условий не выполняется, приложению предоставляется доступ к запрошенному целевому почтовому ящику.
Примеры
Пример 1
New-ApplicationAccessPolicy -AccessRight DenyAccess -AppId "3dbc2ae1-7198-45ed-9f9f-d86ba3ec35b5", "6ac794ca-2697-4137-8754-d2a78ae47d93" -PolicyScopeGroupId "Engineering Staff" -Description "Engineering Group Policy"
В этом примере создается новая политика доступа к приложениям со следующими параметрами:
- AccessRight: DenyAccess
- Идентификаторы приложений: 3dbc2ae1-7198-45ed-9f9f-d86ba3ec35b5 и 6ac794ca-2697-4137-8754-d2a78ae47d93
- PolicyScopeGroupId: технический персонал
- Описание: инженерные групповая политика
Пример 2
New-ApplicationAccessPolicy -AccessRight RestrictAccess -AppId "e7e4dbfc-046f-4074-9b3b-2ae8f144f59b" -PolicyScopeGroupId EvenUsers@AppPolicyTest2.com -Description "Restrict this app's access to members of security group EvenUsers."
В этом примере создается новая политика доступа к приложениям со следующими параметрами:
- AccessRight: RestrictAccess
- Идентификаторы приложений: e7e4dbfc-046f-4074-9b3b-2ae8f144f59b
- PolicyScopeGroupId: EvenUsers@AppPolicyTest2.com
- Описание. Ограничьте доступ этого приложения членами группы безопасности EvenUsers.
Пример 3
New-ApplicationAccessPolicy -AccessRight DenyAccess -AppId "e7e4dbfc-046f-4074-9b3b-2ae8f144f59b" -PolicyScopeGroupId OddUsers@AppPolicyTest2.com -Description "Deny this app access to members of security group OddUsers."
В этом примере создается новая политика доступа к приложениям со следующими параметрами:
- AccessRight: DenyAccess
- Идентификаторы приложений: e7e4dbfc-046f-4074-9b3b-2ae8f144f59b
- PolicyScopeGroupId: OddUsers@AppPolicyTest2.com
- Описание: запретить этому приложению доступ к членам группы безопасности OddUsers.
Параметры
-AccessRight
Параметр AccessRight указывает тип ограничения, который требуется назначить в политике доступа к приложениям. Допустимые значения:
- RestrictAccess. Позволяет связанному приложению получать доступ только к данным, связанным с почтовыми ящиками, указанными параметром PolicyScopeGroupID.
- DenyAccess. Разрешает связанному приложению доступ только к данным, которые не связаны с почтовыми ящиками, указанными параметром PolicyScopeGroupID.
Type: | ApplicationAccessPolicyIdParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Online, Exchange Online Protection |
-AppId
Параметр Identity указывает GUID приложений, которые необходимо включить в политику. Чтобы найти значение GUID приложения, выполните команду Get-App | Format-Table -Auto DisplayName,AppId.
Можно указать несколько значений GUID приложения, разделенных запятыми, или указать *, чтобы указать все приложения.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Applies to: | Exchange Online, Exchange Online Protection |
-Confirm
Переключатель подтверждения указывает, показывать или скрывать запрос подтверждения. Влияние этого параметра на командлет зависит от того, требуется ли командлету подтверждение перед выполнением.
- Деструктивные командлеты (например, командлеты Remove-*) имеют встроенную паузу, которая заставляет вас подтвердить команду перед продолжением. Можно пропускать запросы на подтверждение этих командлетов, используя следующий синтаксис:
-Confirm:$false
. - Большинство других командлетов (например, командлеты New-* и Set-*) не имеют встроенной приостановки. Для этих командлетов указание переключателя Confirm без значения вводит паузу, которая заставляет вас подтвердить команду перед продолжением.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Online, Exchange Online Protection |
-Description
Параметр Description указывает описание политики. Если значение содержит пробелы, его необходимо заключить в кавычки (").
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Online, Exchange Online Protection |
-PolicyScopeGroupID
Параметр PolicyScopeGroupID указывает получателя, определяемого в политике. Допустимые типы получателей — это субъекты безопасности в Exchange Online (пользователи или группы, которым могут быть назначены разрешения). Например:
- Почтовые ящики со связанными учетными записями пользователей (UserMailbox)
- Почтовые пользователи, также известные как пользователи с поддержкой почты (MailUser)
- Группы безопасности с поддержкой почты (MailUniversalSecurityGroup)
Вы можете использовать любое значение, однозначно определяющее получателя. Например:
- имя;
- Имя
- Различающееся имя (DN)
- Краткое имя
- GUID
Чтобы убедиться, что получатель является субъектом безопасности, выполните следующую команду: Get-Recipient -Identity <RecipientIdentity> | Select-Object IsValidSecurityPrincipal
или Get-Recipient -ResultSize unlimited | Format-Table -Auto Name,RecipientType,RecipientTypeDetails,IsValidSecurityPrincipal
.
С этим параметром нельзя использовать получателей, которые не являются субъектами безопасности. Например, следующие типы получателей не будут работать:
- Почтовые ящики обнаружения (DiscoveryMailbox)
- Динамические группы рассылки (DynamicDistributionGroup)
- Группы рассылки (MailUniversalDistributionGroup)
- Почтовые контакты (MailContact)
- Общедоступные папки с поддержкой почты (PublicFolder)
- Группы Microsoft 365 (GroupMailbox)
- Почтовые ящики ресурсов (RoomMailbox или EquipmentMailbox)
- Общие почтовые ящики (SharedMailbox)
Если необходимо ограничить политику общими почтовыми ящиками, можно добавить общие почтовые ящики в качестве членов группы безопасности с поддержкой почты.
Type: | RecipientIdParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Applies to: | Exchange Online, Exchange Online Protection |
-WhatIf
Переключатель WhatIf имитирует действия команды. Вы можете использовать его для просмотра результатов изменений без фактического внесения этих изменений. С этим параметром не нужно указывать значение.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Online, Exchange Online Protection |