Set-ClientAccessRule

注:

クライアント アクセス ルールは、2025 年 9 月にすべての Exchange Online 組織で非推奨になりました。 詳細については、「Exchange Online でのクライアント アクセス ルールの非推奨に関する更新プログラム」を参照してください。

このコマンドレットは、Exchange Server 2019 以降でのみ機能します。

既存のクライアント アクセス ルールを変更するには、Set-ClientAccessRule コマンドレットを使用します。 クライアント アクセス規則は、接続プロパティに基づいて組織に対するアクセスを制御するのに役立ちます。

以下の構文セクションのパラメーター セットの詳細については、「Exchangeのコマンドレット構文」を参照してください。

構文

Default (既定)

Set-ClientAccessRule
    [-Identity] <ClientAccessRuleIdParameter>
    [-Action <ClientAccessRulesAction>]
    [-AnyOfAuthenticationTypes <MultiValuedProperty>]
    [-AnyOfClientIPAddressesOrRanges <MultiValuedProperty>]
    [-AnyOfProtocols <MultiValuedProperty>]
    [-AnyOfSourceTcpPortNumbers <MultiValuedProperty>]
    [-Confirm]
    [-DomainController <Fqdn>]
    [-Enabled <Boolean>]
    [-ExceptAnyOfAuthenticationTypes <MultiValuedProperty>]
    [-ExceptAnyOfClientIPAddressesOrRanges <MultiValuedProperty>]
    [-ExceptAnyOfProtocols <MultiValuedProperty>]
    [-ExceptAnyOfSourceTcpPortNumbers <MultiValuedProperty>]
    [-ExceptUserIsMemberOf <MultiValuedProperty>]
    [-ExceptUsernameMatchesAnyOfPatterns <MultiValuedProperty>]
    [-Name <String>]
    [-Priority <Int32>]
    [-Scope <ClientAccessRulesScope>]
    [-UserIsMemberOf <MultiValuedProperty>]
    [-UsernameMatchesAnyOfPatterns <MultiValuedProperty>]
    [-UserRecipientFilter <String>]
    [-WhatIf]
    [<CommonParameters>]

説明

クライアント アクセス ルールは、organization へのクライアント接続のためのメール フロー ルール (トランスポート ルールとも呼ばれます) に似ています。 条件と例外を使用して、接続のプロパティと、接続を許可またはブロックするアクションに基づいて接続を識別します。

: すべてのプロトコルが認証タイプ フィルターをサポートするわけではありません。また、認証タイプのフィルターをサポートしているプロトコルでも、すべての認証タイプがサポートされているわけではありません。 サポートされている組み合わせについては、次の一覧で説明します。 同じルール内でプロトコルと認証タイプを混在させる場合は注意が必要です。

認証の種類フィルターをサポートするプロトコル:

  • ExchangeActiveSync: BasicAuthentication、OAuthAuthentication、CertificateBasedAuthentication。
  • ExchangeAdminCenter: BasicAuthentication および AdfsAuthentication。
  • IMAP4: BasicAuthentication および OAuthAuthentication。
  • OutlookWebApp: BasicAuthentication および AdfsAuthentication。
  • POP3: BasicAuthentication および OAuthAuthentication。
  • RemotePowerShell: BasicAuthentication および NonBasicAuthentication。

認証タイプ フィルターをサポートしていないプロトコル:

  • ExchangeWebServices
  • OfflineAddressBook
  • OutlookAnywhere
  • PowerShellWebServices
  • REST
  • UniversalOutlook

このコマンドレットを実行する際には、あらかじめアクセス許可を割り当てる必要があります。 この記事にはこのコマンドレットのすべてのパラメーターが一覧表示されていますが、自分に割り当てられているアクセス許可に含まれていない一部のパラメーターにはアクセスできません。 コマンドレットを組織内で実行するために必要になるアクセス許可とパラメーターを調べるには、「 Find the permissions required to run any Exchange cmdlet」を参照してください。

例 1

Set-ClientAccessRule "Allow IMAP4" -AnyOfClientIPAddressesOrRanges @{Add="172.17.17.27/16"}

この例の場合、IP アドレス範囲 172.17.17.27/16 を、既存の IP アドレス値に影響を及ぼすことなく「Allow IMAP4」という名前の既存のクライアント アクセス ルールに追加します。

パラメーター

-Action

適用対象: Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE

Action パラメーターは、クライアント アクセス ルールのアクションを指定します。 このパラメーターの有効な値は、AllowAccess および DenyAccess です。

パラメーターのプロパティ

型:ClientAccessRulesAction
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-AnyOfAuthenticationTypes

適用対象: Exchange Server 2013、Exchange Server 2016

このパラメーターは、Microsoft の内部使用のために予約されています。

パラメーターのプロパティ

型:MultiValuedProperty
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-AnyOfClientIPAddressesOrRanges

適用対象: Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE

AnyOfClientIPAddressesOrRanges パラメーターは、クライアントの IPv4 アドレスまたは IPv6 アドレスに基づくクライアント アクセス ルールの条件を指定します。 有効な値は次のとおりです。

  • 単一 IP アドレス: たとえば、192.168.1.1 や 2001:DB8::2AA:FF:C0A8:640A などです。
  • IP アドレス範囲: たとえば、192.168.0.1-192.168.0.254 または 2001:DB8::2AA:FF:C0A8:640A-2001:DB8::2AA:FF:C0A8:6414 です。
  • クラスレスドメイン間ルーティング (CIDR) IP アドレス範囲: たとえば、192.168.3.1/24 または 2001:DB8::2AA:FF:C0A8:640A/64 です。

複数の値を入力して既存のエントリをすべて上書きするには、次の構文を使用します: Value1,Value2,...ValueN。 値にスペースを含める、または引用符を必要とする場合は、次の構文を使用します: "Value1","Value2",..."ValueN"

既存のエントリに影響を及ぼさずに、1 つまたは複数の値を追加または削除するには、次の構文を使用します: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}

IPv6 アドレスおよび構文の詳細については、Exchange 2013 の記事「 IPv6 アドレスの基本」を参照してください。

パラメーターのプロパティ

型:MultiValuedProperty
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-AnyOfProtocols

適用対象: Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE

AnyOfProtocols パラメーターは、クライアントのプロトコルに基づいたクライアント アクセス ルールの条件を指定します。

PasswordQuality パラメーターは、デバイス パスワードに必要なパスワードの最小品質レベルを指定します。パスワードの品質は、パスワードのセキュリティと複雑さを示す数値の尺度です。品質の値が大きいほど、より安全なパスワードであることを示します。

  • ExchangeActiveSync
  • ExchangeAdminCenter
  • ExchangeWebServices
  • IMAP4
  • OfflineAddressBook
  • OutlookAnywhere
  • OutlookWebApp
  • POP3
  • PowerShellWebServices
  • RemotePowerShell
  • REST
  • UniversalOutlook (メールとCalendarアプリ)

: Exchange 2019 では、サポートされている値は ExchangeAdminCenter と RemotePowerShell のみです。

複数の値を入力して既存のエントリをすべて上書きするには、次の構文を使用します: Value1,Value2,...ValueN。 値にスペースを含める、または引用符を必要とする場合は、次の構文を使用します: "Value1","Value2",..."ValueN"

既存のエントリに影響を及ぼさずに、1 つまたは複数の値を追加または削除するには、次の構文を使用します: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}

パラメーターのプロパティ

型:MultiValuedProperty
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-AnyOfSourceTcpPortNumbers

適用対象: Exchange Server 2013

このパラメーターは、Microsoft の内部使用のために予約されています。

パラメーターのプロパティ

型:MultiValuedProperty
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-Confirm

適用対象: Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE

Confirm スイッチは、確認プロンプトを表示するか非表示にするかを指定します。 このスイッチがコマンドレットに与える影響は、コマンドレットが続行する前に確認を必要とするかどうかによって異なります。

  • データを破壊するコマンドレット (たとえば、Remove- コマンドレット) には、先に進む前にユーザーにそのコマンドの確認を強制する組み込みの一時停止があります。 これらのコマンドレットでは、正確な構文-Confirm:$falseを使用して、確認プロンプトを省略できます。
  • 他のほとんどのコマンドレット (たとえば、New-* や Set-* コマンドレット) には、組み込みの一時停止はありません。 これらのコマンドレットの場合、値を指定せずに Confirm スイッチを指定すると、一時停止が発生し、続行する前にコマンドの確認を強制されます。

このコマンドレットには一時停止が組み込まれているため、 -Confirm:$false を使用して確認をスキップします。

パラメーターのプロパティ

型:SwitchParameter
規定値:None
ワイルドカードのサポート:False
DontShow:False
Aliases:Cf

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-DomainController

適用対象: Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE

DomainController パラメーターは、このコマンドレットで Active Directory からのデータの読み取りまたは Active Directory へのデータの書き込みに使用されるドメイン コントローラーを指定します。 ドメイン コントローラーは、完全修飾ドメイン名 (FQDN) で識別します。 たとえば、dc01.contoso.com です。

パラメーターのプロパティ

型:Fqdn
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-Enabled

適用対象: Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE

Enabled パラメーターは、クライアント アクセス ルールを有効にするか、または無効にするかを指定します。 このパラメーターの正しい値は、$true または $false です。

パラメーターのプロパティ

型:Boolean
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-ExceptAnyOfAuthenticationTypes

適用対象: Exchange Server 2013、Exchange Server 2016

このパラメーターは、Microsoft の内部使用のために予約されています。

パラメーターのプロパティ

型:MultiValuedProperty
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-ExceptAnyOfClientIPAddressesOrRanges

適用対象: Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE

ExceptAnyOfClientIPAddressesOrRanges パラメーターは、クライアントの IPv4 アドレスまたは IPv6 アドレスに基づくクライアント アクセス ルールの例外を指定します。 有効な値は次のとおりです。

  • 単一 IP アドレス: たとえば、192.168.1.1 や 2001:DB8::2AA:FF:C0A8:640A などです。
  • IP アドレス範囲: たとえば、192.168.0.1-192.168.0.254 または 2001:DB8::2AA:FF:C0A8:640A-2001:DB8::2AA:FF:C0A8:6414 です。
  • クラスレスドメイン間ルーティング (CIDR) IP アドレス範囲: たとえば、192.168.3.1/24 または 2001:DB8::2AA:FF:C0A8:640A/64 です。

複数の値を入力して既存のエントリをすべて上書きするには、次の構文を使用します: Value1,Value2,...ValueN。 値にスペースを含める、または引用符を必要とする場合は、次の構文を使用します: "Value1","Value2",..."ValueN"

既存のエントリに影響を及ぼさずに、1 つまたは複数の値を追加または削除するには、次の構文を使用します: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}

IPv6 アドレスおよび構文の詳細については、Exchange 2013 の記事「 IPv6 アドレスの基本」を参照してください。

パラメーターのプロパティ

型:MultiValuedProperty
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-ExceptAnyOfProtocols

適用対象: Exchange Server 2013、Exchange Server 2016

このパラメーターは、Microsoft の内部使用のために予約されています。

パラメーターのプロパティ

型:MultiValuedProperty
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-ExceptAnyOfSourceTcpPortNumbers

適用対象: Exchange Server 2013

このパラメーターは、Microsoft の内部使用のために予約されています。

パラメーターのプロパティ

型:MultiValuedProperty
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-ExceptUserIsMemberOf

適用対象: Exchange Server 2013

このパラメーターは、Microsoft の内部使用のために予約されています。

パラメーターのプロパティ

型:MultiValuedProperty
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-ExceptUsernameMatchesAnyOfPatterns

適用対象: Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE

ExceptUsernameMatchesAnyOfPatterns パラメーターは、 <Domain>\<UserName> 形式 ( contoso.com\jeff など) のユーザーのアカウント名に基づくクライアント アクセス ルールの例外を指定します。 このパラメーターは、テキストとワイルドカード文字 (*) を受け入れます (たとえば、 *jeff* は受け取りますが、 jeff* は受け付けません)。 英数字以外の文字にエスケープ文字は必要ありません。

複数の値を入力して既存のエントリをすべて上書きするには、次の構文を使用します: Value1,Value2,...ValueN。 値にスペースを含める、または引用符を必要とする場合は、次の構文を使用します: "Value1","Value2",..."ValueN"

既存のエントリに影響を及ぼさずに、1 つまたは複数の値を追加または削除するには、次の構文を使用します: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}

パラメーターのプロパティ

型:MultiValuedProperty
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-Identity

適用対象: Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE

Identity パラメーターは、変更するクライアント アクセス ルールを指定します。 クライアント アクセス ルールを一意に識別する任意の値を使用できます。 以下はその一例です。

  • 名前
  • 識別名 (DN)
  • GUID

パラメーターのプロパティ

型:ClientAccessRuleIdParameter
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:1
必須:True
パイプラインからの値:True
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False

-Name

適用対象: Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE

Name パラメーターは、クライアント アクセス ルールの一意の名前を指定します。

パラメーターのプロパティ

型:String
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-Priority

適用対象: Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE

Priority パラメーターは、クライアント アクセス ルールの優先度の値を指定します。 小さい整数値ほど優先順位が高く、優先度の高いルールは優先度の低いルールより先に評価されます。 既定値は 1 です。

パラメーターのプロパティ

型:Int32
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-Scope

適用対象: Exchange Server 2016、Exchange Server 2019、Exchange Server SE

Scope パラメーターは、クライアント アクセス ルールのスコープを指定します。 有効な値は次のとおりです。

  • Users: 規則は、エンド ユーザー接続にのみ適用されます。
  • All: 規則は、すべての接続 (エンド ユーザーと中間層アプリ) に適用されます。

パラメーターのプロパティ

型:ClientAccessRulesScope
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-UserIsMemberOf

適用対象: Exchange Server 2013

このパラメーターは、Microsoft の内部使用のために予約されています。

パラメーターのプロパティ

型:MultiValuedProperty
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-UsernameMatchesAnyOfPatterns

適用対象: Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE

UsernameMatchesAnyOfPatterns パラメーターは、 <Domain>\<UserName> 形式 ( contoso.com\jeff など) のユーザーのアカウント名に基づくクライアント アクセス ルールの条件を指定します。 このパラメーターは、テキストとワイルドカード文字 (*) を受け入れます (たとえば、 *jeff* は受け取りますが、 jeff* は受け付けません)。 英数字以外の文字にエスケープ文字は必要ありません。

複数の値を入力して既存のエントリをすべて上書きするには、次の構文を使用します: Value1,Value2,...ValueN。 値にスペースを含める、または引用符を必要とする場合は、次の構文を使用します: "Value1","Value2",..."ValueN"

既存のエントリに影響を及ぼさずに、1 つまたは複数の値を追加または削除するには、次の構文を使用します: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}

パラメーターのプロパティ

型:MultiValuedProperty
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-UserRecipientFilter

適用対象: Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE

UserRecipientFilter パラメーターは、OPATH フィルター構文を使用して、限られた受信者プロパティのセットに基づいてユーザーを識別するクライアント アクセス ルールの条件を指定します。 クライアント アクセス ルールは、使用可能な受信者プロパティの完全な一覧をサポートしていません。

このパラメーターでは、次のプロパティを使用できます。

  • 市区町村
  • Company
  • 国または地域 (ISO 3166-1、アルファ-2 国コード)
  • CustomAttribute1 から CustomAttribute15 へ
  • 部署
  • 事業所
  • PostalCode
  • StateOrProvince
  • StreetAddress

このパラメーターの基本的な構文は "Property -ComparisonOperator 'Value'" です。

  • プロパティは、上記の一覧でフィルター処理可能なプロパティの 1 つです ( CityCustomAttribute1 など)。
  • ComparisonOperator は、OPATH の比較演算子です (たとえば、文字列の比較が等しい場合は -eq 、文字列の比較の場合は -like )。 比較演算子の詳細については、「about_Comparison_Operators」を参照してください。
  • Value は、検索するプロパティ値です。 テキスト値と変数を一重引用符 ('Value'または'$Variable') で囲みます。 変数値に一重引用符が含まれている場合、変数を正しく展開するには、一重引用符を識別する (エスケープする) 必要があります。 たとえば、'$User'の代わりに'$($User -Replace "'","''")'を使用します。 整数やシステム値は引用符で囲まないでください (たとえば、代わりに 500$true$false$null を使用します)。
  • OPATH フィルター全体を二重引用符 " " で囲みます。 フィルターにシステム値 (例えば、$true$false、または $null) が含まれている場合は、代わりに単一引用符 ' ' を使用します。 このパラメーターは文字列 (システム ブロックではありません) ですが、波かっこ { } を使用することもできますが、これはフィルターに変数が含まれていない場合のみです。

例:

  • "City -eq 'Redmond'"
  • "CountryOrRegion -eq 'SG'".

論理演算子 -and および -or を使用すると、複数の検索条件を連結することができます。 例:

  • "CustomAttribute1 -eq 'AllowOWA' -and CountryOrRegion -eq AU'"
  • "(CountryOrRegion -eq 'US' -and Department -eq 'Sales') -or Department -eq 'Research'".

Exchange の OPATH フィルター構文の詳細については、「 追加の OPATH 構文情報」を参照してください。

パラメーターのプロパティ

型:String
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-WhatIf

適用対象: Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE

[WhatIf] スイッチは、何も変更を加えずにコマンドが実行する内容を表示します。 このスイッチで値を指定する必要はありません。

パラメーターのプロパティ

型:SwitchParameter
規定値:None
ワイルドカードのサポート:False
DontShow:False
Aliases:wi

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

CommonParameters

このコマンドレットは、共通パラメーター -Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction、-WarningVariable をサポートします。 詳細については、「about_CommonParameters」を参照してください。

入力

Input types

このコマンドレットに使用できる入力の種類を確認するには、「コマンドレットの入力および出力の種類」をご覧ください。 コマンドレットで入力の種類のフィールドが空白の場合、そのコマンドレットには入力データを指定できません。

出力

Output types

このコマンドレットに使用できる戻り値の型 (出力の種類) を確認するには、「コマンドレットの入力および出力の種類」をご覧ください。 出力の種類のフィールドが空白の場合、コマンドレットはデータを返しません。