New-ApplicationAccessPolicy
このコマンドレットは、クラウドベースのサービスでのみ使用できます。
New-ApplicationAccessPolicy コマンドレットを使用して、API (Outlook REST、Microsoft Graph、または Exchange Web Services (EWS)) を使用するアプリケーションによって、特定のメールボックス セットへのアクセスを制限または拒否します。 これらのポリシーは、アプリケーションによって宣言されたアクセス許可スコープに補完されます。
以下の構文セクションのパラメーター セットの詳細については、「Exchangeのコマンドレット構文」を参照してください。
メモ:アプリ アクセス ポリシーは間もなく、アプリケーションのロール ベースのAccess Controlに置き換えられます。 詳細については、「Exchange アプリケーションの役割ベースのAccess Control」を参照してください。
構文
New-ApplicationAccessPolicy
-AccessRight <ApplicationAccessPolicyRight>
-AppId <String[]>
-PolicyScopeGroupId <RecipientIdParameter>
[-Confirm]
[-Description <String>]
[-WhatIf]
[<CommonParameters>]
説明
このコマンドレットを実行する際には、あらかじめアクセス許可を割り当てる必要があります。 このトピックにはこのコマンドレットのすべてのパラメーターが一覧表示されていますが、自分に割り当てられているアクセス許可に含まれていない一部のパラメーターにはアクセスできません。 コマンドレットを組織内で実行するために必要になるアクセス許可とパラメーターを調べるには、「 Find the permissions required to run any Exchange cmdlet」を参照してください。
一定の領域に基づいて、組織内に限られた数のポリシーを作成できます。 組織でこれらのポリシーの領域が不足している場合は、"アプリ アクセス ポリシーの合計サイズが制限を超えました" というエラーが表示されます。ポリシーの数を最大化し、ポリシーによって使用される領域の量を減らすには、ポリシーの 1 つのスペース文字の説明を設定します。 この方法では、約 300 個のポリシー (以前の 100 ポリシーの制限) を許可します。
Mail.Read や Calendar.Read などのスコープ ベースのリソース アクセスは、アプリケーションがメールボックス内のメールまたはイベントのみを読み取り、他の操作を行わないよう有効ですが、アプリケーション アクセス ポリシーを使用すると、管理者はメールボックスの一覧に基づく制限を適用できます。 たとえば、ある国用に開発されたアプリは、他の国のデータにアクセスすることはできません。 または、CRM 統合アプリケーションは、営業組織の予定表にのみアクセスし、他の部門にはアクセスしないでください。
アプリケーションによって実行されるターゲット メールボックスに対する Outlook REST API または Microsoft Graph API を使用するすべての API 要求は、次の規則 (同じ順序で) を使用して検証されます。
- 同じアプリケーションとターゲット メールボックスのペアに複数のアプリケーション アクセス ポリシーがある場合、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
- AppIDs: 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
- AppIDs: 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
- AppIDs: 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
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 -ResultSize unlimited | Format-Table -Auto Name,RecipientType,RecipientTypeDetails,IsValidSecurityPrincipal
のいずれかのコマンドGet-Recipient -Identity <RecipientIdentity> | Select-Object 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 |