次の方法で共有


認証ポリシーの構成

AD FS では、Windows Server 2012 R2 では、アクセス制御と認証メカニズムの両方が、ユーザー、デバイス、場所、認証データを含む複数の要素で強化されています。 これらの機能強化により、ユーザー インターフェイスまたは Windows PowerShell を使用して、ユーザー ID またはグループ メンバーシップ、ネットワークの場所、職場に参加しているデバイス データ、多要素認証 (MFA) が実行されたときの認証状態に基づく多要素アクセス制御と多要素認証を使用して、AD FS で保護されたアプリケーションにアクセス許可を付与するリスクを管理できます。

Windows Server 2012 R2 の Active Directory フェデレーション サービス (AD FS) での MFA と多要素アクセス制御の詳細については、次のトピックを参照してください。

AD FS 管理スナップインを使用して認証ポリシーを構成する

これらの手順 完了するには、ローカル コンピューターの管理者または同等のメンバーシップが最低限必要です。 ローカルおよびドメインの既定のグループで、適切なアカウントおよびグループメンバーシップの使用方法に関する詳細を確認します。

AD FS では、Windows Server 2012 R2 では、AD FS によってセキュリティ保護されているすべてのアプリケーションとサービスに適用できるグローバル スコープで認証ポリシーを指定できます。 また、パーティの信頼に依存し、AD FS によってセキュリティ保護されている特定のアプリケーションとサービスの認証ポリシーを設定することもできます。 証明書利用者信頼ごとに特定のアプリケーションの認証ポリシーを指定しても、グローバル認証ポリシーはオーバーライドされません。 グローバルまたは証明書利用者信頼認証ポリシーで MFA が必要な場合、ユーザーがこの証明書利用者信頼に対して認証を試みると、MFA がトリガーされます。 グローバル認証ポリシーは、特定の構成済み認証ポリシーを持たないアプリケーションとサービスの証明書利用者信頼のフォールバックです。

Windows Server 2012 R2 でプライマリ認証をグローバルに構成するには

  1. サーバー マネージャーで、 [ツール] をクリックし、次に [AD FS の管理] を選択します。

  2. AD FS スナップインで、[ 認証ポリシー] をクリックします。

  3. [プライマリ認証] セクションで、[グローバル設定] の横にある [編集] をクリックします。 [ 認証ポリシー] を右クリックし、[ グローバル プライマリ認証の編集] を選択するか、[ 操作] ウィンドウで [ グローバル プライマリ認証の編集] を選択することもできます。 [グローバル プライマリ認証の編集] オプションが強調表示されているスクリーンショット。

  4. [ グローバル認証ポリシーの編集 ] ウィンドウの [ プライマリ ] タブで、グローバル認証ポリシーの一部として次の設定を構成できます。

証明書利用者信頼ごとにプライマリ認証を構成するには

  1. サーバー マネージャーで、 [ツール] をクリックし、次に [AD FS の管理] を選択します。

  2. AD FS スナップインで、[ 認証ポリシー\証明書利用者信頼] をクリックし、認証ポリシーを構成する証明書利用者信頼をクリックします。

  3. 認証ポリシーを構成する証明書利用者信頼を右クリックし、[ カスタム プライマリ認証の編集] を選択するか、[ 操作] ウィンドウで [ カスタム プライマリ認証の編集] を選択します。 [カスタム プライマリ認証の編集] メニュー オプションが強調表示されているスクリーンショット。

  4. [<relying_party_trust_name>の認証ポリシーの編集] ウィンドウの [プライマリ] タブで、証明書利用者信頼認証ポリシーの一部として次の設定を構成できます。

    • ユーザーがサインイン時に資格情報を毎回入力する必要があるかどうか。[ユーザーはサインイン時に資格情報を毎回入力する必要がある] チェック ボックスを使用します。 証明書利用者ごとの信頼認証ポリシーの一部として設定を構成する方法を示すスクリーンショット。

多要素認証をグローバルに構成するには

  1. サーバー マネージャーで、 [ツール] をクリックし、次に [AD FS の管理] を選択します。

  2. AD FS スナップインで、[ 認証ポリシー] をクリックします。

  3. [多要素認証] セクションで、[グローバル設定] の横にある [編集] をクリックします。 [ 認証ポリシー] を右クリックし、[ グローバル多要素認証の編集] を選択するか、[ 操作] ウィンドウで [ グローバル多要素認証の編集] を選択することもできます。 [グローバル多要素認証の編集] オプションが強調表示されているスクリーンショット。

  4. [ グローバル認証ポリシーの編集] ウィンドウの [ 多要素 ] タブで、グローバル多要素認証ポリシーの一部として次の設定を構成できます。

    • [ユーザー/グループ]、[デバイス]、[場所] セクションで使用可能なオプションを使用した MFA の設定または条件。

    • これらの設定のいずれかに対して MFA を有効にするには、少なくとも 1 つの追加の認証方法を選択する必要があります。 証明書認証 は、既定で使用可能なオプションです。 他のカスタムの追加認証方法 (Windows Azure Active Authentication など) を構成することもできます。 詳細については、「 チュートリアル ガイド: 機密アプリケーションの追加の多要素認証によるリスクの管理」を参照してください。

警告

追加の認証方法はグローバルにのみ構成できます。 認証ポリシー

証明書利用者信頼ごとに多要素認証を構成するには

  1. サーバー マネージャーで、 [ツール] をクリックし、次に [AD FS の管理] を選択します。

  2. AD FS スナップインで、[ 認証ポリシー\証明書利用者信頼] をクリックし、MFA を構成する証明書利用者信頼をクリックします。

  3. MFA を構成する証明書利用者信頼を右クリックし、[ カスタム多要素認証の編集] を選択するか、[ 操作] ウィンドウで [ カスタム多要素認証の編集] を選択します。

  4. [<relying_party_trust_name>の認証ポリシーの編集] ウィンドウの [多要素] タブで、証明書利用者信頼認証ポリシーの一部として次の設定を構成できます。

    • [ユーザー/グループ]、[デバイス]、[場所] セクションで使用可能なオプションを使用した MFA の設定または条件。

Windows PowerShell を使用して認証ポリシーを構成する

Windows PowerShell を使用すると、アクセス制御のさまざまな要素と、Windows Server 2012 R2 の AD FS で使用できる認証メカニズムを使用して、AD FS -secured リソースに対して真の条件付きアクセスを実装するために必要な認証ポリシーと承認規則を構成する柔軟性が向上します。

これらの手順を完了するには、ローカル コンピューターの管理者または同等のメンバーシップが最低限必要です。 適切なアカウントとグループメンバーシップの使用に関する詳細については、ローカルグループとドメインの既定のグループ (http://go.microsoft.com/fwlink/?LinkId=83477).) を参照してください。

Windows PowerShell を使用して追加の認証方法を構成するには

  1. フェデレーション サーバーで、Windows PowerShell コマンド ウィンドウを開き、次のコマンドを実行します。
`Set-AdfsGlobalAuthenticationPolicy –AdditionalAuthenticationProvider CertificateAuthentication  `

警告

このコマンドが正常に実行されたことを確認するには、 Get-AdfsGlobalAuthenticationPolicy コマンドを実行します。

ユーザーのグループメンバーシップデータに基づいた信頼パーティごとに多要素認証の信頼設定を構成するには

  1. フェデレーション サーバーで、Windows PowerShell コマンド ウィンドウを開き、次のコマンドを実行します。
`$rp = Get-AdfsRelyingPartyTrust –Name relying_party_trust`

警告

<relying_party_trust> は必ず、実際の証明書利用者信頼の名前に置き換えてください。

  1. 同じ Windows PowerShell コマンド ウィンドウで、次のコマンドを実行します。
$MfaClaimRule = "c:[Type == '"https://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid'", Value =~ '"^(?i) <group_SID>$'"] => issue(Type = '"https://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod'", Value '"https://schemas.microsoft.com/claims/multipleauthn'");"

Set-AdfsRelyingPartyTrust –TargetRelyingParty $rp –AdditionalAuthenticationRules $MfaClaimRule

<group_SID>は、Active Directory (AD) グループのセキュリティ識別子 (SID) の値に置き換えてください。

ユーザーのグループ メンバーシップ データに基づいて MFA をグローバルに構成するには

  1. フェデレーション サーバーで、Windows PowerShell コマンド ウィンドウを開き、次のコマンドを実行します。
$MfaClaimRule = "c:[Type == '" https://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid'", Value == '"group_SID'"]
 => issue(Type = '"https://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod'", Value = '"https://schemas.microsoft.com/claims/multipleauthn'");"

Set-AdfsAdditionalAuthenticationRule $MfaClaimRule

<group_SID>を AD グループの SID の値に置き換えてください。

ユーザーの場所に基づいて MFA をグローバルに構成するには

  1. フェデレーション サーバーで、Windows PowerShell コマンド ウィンドウを開き、次のコマンドを実行します。
$MfaClaimRule = "c:[Type == '" https://schemas.microsoft.com/ws/2012/01/insidecorporatenetwork'", Value == '"true_or_false'"]
 => issue(Type = '"https://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod'", Value = '"https://schemas.microsoft.com/claims/multipleauthn'");"

Set-AdfsAdditionalAuthenticationRule $MfaClaimRule

<true_or_false>は必ずtrueまたはfalseに置き換えてください。 この値は、アクセス要求がエクストラネットまたはイントラネットのどちらから送信されるかに基づく特定のルール条件によって異なります。

ユーザーのデバイス データに基づいて MFA をグローバルに構成するには

  1. フェデレーション サーバーで、Windows PowerShell コマンド ウィンドウを開き、次のコマンドを実行します。
$MfaClaimRule = "c:[Type == '" https://schemas.microsoft.com/2012/01/devicecontext/claims/isregistereduser'", Value == '"true_or_false"']
 => issue(Type = '"https://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod'", Value = '"https://schemas.microsoft.com/claims/multipleauthn'");"

Set-AdfsAdditionalAuthenticationRule $MfaClaimRule

<true_or_false>は必ずtrueまたはfalseに置き換えてください。 値は、デバイスが職場に参加しているかどうかに基づく特定のルールの条件によって異なります。

アクセス要求がエクストラネットから送信され、ワークプレースに参加していないデバイスから送信された場合に MFA をグローバルに構成するには

  1. フェデレーション サーバーで、Windows PowerShell コマンド ウィンドウを開き、次のコマンドを実行します。
`Set-AdfsAdditionalAuthenticationRule "c:[Type == '"https://schemas.microsoft.com/2012/01/devicecontext/claims/isregistereduser'", Value == '"true_or_false'"] && c2:[Type == '"https://schemas.microsoft.com/ws/2012/01/insidecorporatenetwork'", Value == '" true_or_false '"] => issue(Type = '"https://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod'", Value ='"https://schemas.microsoft.com/claims/multipleauthn'");" `

<true_or_false>の両方のインスタンスを、特定のルールの条件に応じて、trueまたはfalseに置き換えてください。 ルールの条件は、デバイスが職場に参加しているかどうか、およびアクセス要求がエクストラネットまたはイントラネットから送信されたかどうかに基づいています。

特定のグループに属するエクストラネット ユーザーからアクセスする場合に MFA をグローバルに構成するには

  1. フェデレーション サーバーで、Windows PowerShell コマンド ウィンドウを開き、次のコマンドを実行します。
Set-AdfsAdditionalAuthenticationRule "c:[Type == `"https://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid`", Value == `"group_SID`"] && c2:[Type == `"https://schemas.microsoft.com/ws/2012/01/insidecorporatenetwork`", Value== `"true_or_false`"] => issue(Type = `"https://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod`", Value =`"https://schemas.microsoft.com/claims/

<group_SID>をグループ SID の値に置き換え、<true_or_false>true または false に置き換えます。これは、アクセス要求がエクストラネットまたはイントラネットから送信されたかどうかに基づく特定のルールの条件によって異なります。

Windows PowerShell を使用してユーザー データに基づいてアプリケーションへのアクセスを許可するには

  1. フェデレーション サーバーで、Windows PowerShell コマンド ウィンドウを開き、次のコマンドを実行します。

    $rp = Get-AdfsRelyingPartyTrust –Name relying_party_trust
    
    

<relying_party_trust>を証明書利用者信頼の値に置き換えてください。

  1. 同じ Windows PowerShell コマンド ウィンドウで、次のコマンドを実行します。

    
      $GroupAuthzRule = "@RuleTemplate = `"Authorization`" @RuleName = `"Foo`" c:[Type == `"https://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid`", Value =~ `"^(?i)<group_SID>$`"] =>issue(Type = `"https://schemas.microsoft.com/authorization/claims/deny`", Value = `"DenyUsersWithClaim`");"
    Set-AdfsRelyingPartyTrust –TargetRelyingParty $rp –IssuanceAuthorizationRules $GroupAuthzRule
    

<group_SID>を AD グループの SID の値に置き換えてください。

このユーザーの ID が MFA で検証された場合にのみ、AD FS によってセキュリティ保護されたアプリケーションへのアクセスを許可するには

  1. フェデレーション サーバーで、Windows PowerShell コマンド ウィンドウを開き、次のコマンドを実行します。
`$rp = Get-AdfsRelyingPartyTrust –Name relying_party_trust `

<relying_party_trust>を証明書利用者信頼の値に置き換えてください。

  1. 同じ Windows PowerShell コマンド ウィンドウで、次のコマンドを実行します。

    $GroupAuthzRule = "@RuleTemplate = `"Authorization`"
    @RuleName = `"PermitAccessWithMFA`"
    c:[Type == `"https://schemas.microsoft.com/claims/authnmethodsreferences`", Value =~ `"^(?i)https://schemas\.microsoft\.com/claims/multipleauthn$`"] => issue(Type = `"https://schemas.microsoft.com/authorization/claims/permit`", Value = '"PermitUsersWithClaim'");"
    
    

アクセス要求がユーザーに登録されているワークプレース参加済みデバイスから送信された場合にのみ、AD FS によってセキュリティ保護されたアプリケーションへのアクセスを許可するには

  1. フェデレーション サーバーで、Windows PowerShell コマンド ウィンドウを開き、次のコマンドを実行します。

    $rp = Get-AdfsRelyingPartyTrust –Name relying_party_trust
    
    

<relying_party_trust>を証明書利用者信頼の値に置き換えてください。

  1. 同じ Windows PowerShell コマンド ウィンドウで、次のコマンドを実行します。
$GroupAuthzRule = "@RuleTemplate = `"Authorization`"
@RuleName = `"PermitAccessFromRegisteredWorkplaceJoinedDevice`"
c:[Type == `"https://schemas.microsoft.com/2012/01/devicecontext/claims/isregistereduser`", Value =~ `"^(?i)true$`"] => issue(Type = `"https://schemas.microsoft.com/authorization/claims/permit`", Value = `"PermitUsersWithClaim`");

アクセス要求が MFA で検証されたユーザーに登録されている職場に参加しているデバイスからのアクセス要求である場合にのみ、AD FS によってセキュリティ保護されたアプリケーションへのアクセスを許可するには

  1. フェデレーション サーバーで、Windows PowerShell コマンド ウィンドウを開き、次のコマンドを実行します。
`$rp = Get-AdfsRelyingPartyTrust –Name relying_party_trust `

<relying_party_trust>を証明書利用者信頼の値に置き換えてください。

  1. 同じ Windows PowerShell コマンド ウィンドウで、次のコマンドを実行します。

    $GroupAuthzRule = '@RuleTemplate = "Authorization"
    @RuleName = "RequireMFAOnRegisteredWorkplaceJoinedDevice"
    c1:[Type == `"https://schemas.microsoft.com/claims/authnmethodsreferences`", Value =~ `"^(?i)http://schemas\.microsoft\.com/claims/multipleauthn$`"] &&
    c2:[Type == `"https://schemas.microsoft.com/2012/01/devicecontext/claims/isregistereduser`", Value =~ `"^(?i)true$"] => issue(Type = "https://schemas.microsoft.com/authorization/claims/permit`", Value = `"PermitUsersWithClaim`");"
    
    

アクセス要求が MFA で検証されたユーザーからのアクセス要求である場合にのみ、AD FS によってセキュリティ保護されたアプリケーションにエクストラネット アクセスを許可するには

  1. フェデレーション サーバーで、Windows PowerShell コマンド ウィンドウを開き、次のコマンドを実行します。
`$rp = Get-AdfsRelyingPartyTrust –Name relying_party_trust`

<relying_party_trust>を証明書利用者信頼の値に置き換えてください。

  1. 同じ Windows PowerShell コマンド ウィンドウで、次のコマンドを実行します。
$GroupAuthzRule = "@RuleTemplate = `"Authorization`"
@RuleName = `"RequireMFAForExtranetAccess`"
c1:[Type == `"https://schemas.microsoft.com/claims/authnmethodsreferences`", Value =~ `"^(?i)http://schemas\.microsoft\.com/claims/multipleauthn$`"] &&
c2:[Type == `"https://schemas.microsoft.com/ws/2012/01/insidecorporatenetwork`", Value =~ `"^(?i)false$`"] => issue(Type = `"https://schemas.microsoft.com/authorization/claims/permit`", Value = `"PermitUsersWithClaim`");"

その他の参照情報

AD FS の運用