ADC

Citrix ADC nFactor認証の第1要素として証明書認証を構成し、LDAPを第2要素として構成します

次のセクションでは、最初の要素で証明書認証の使用例を説明し、次に第 2 要素で LDAP を使用します。それ以外の場合は、LDAP と OTP(ユーザー証明書が最初の要素に存在しない場合)。

ユースケース:最初の要素として証明書認証、次の要素としてLDAPが続く

管理者が最初の要素で証明書認証を設定するユースケースを想定します。また、証明書が存在する場合は、次の要素で LDAP 認証を設定します。ユーザ証明書が存在しない場合は、LDAP と OTP を設定します。

  1. トラフィック管理仮想サーバにアクセスすると、ログインページにリダイレクトされます。

  2. ユーザー証明書がクライアントデバイスにある場合は、次の画面が表示されます。

    ユーザー証明書

  3. ユーザー証明書が送信されると、認証は次の要素に進みます。このファクタは LDAP として設定されます。

    ユーザー証明書

  4. 最初の要素にユーザー証明書がない場合は、LDAP と OTP に進みます。達成するには2つの選択肢があります。

    • LDAP と OTP を、LDAP ファクタからユーザ名が事前に入力された個別のログインページとして指定します。

      ユーザー証明書

      ユーザー名の値は、最初の要素からユーザー名を抽出する式 $ {http.req.user.name} を使用して事前に入力されています。ユーザー名やパスワードのラベルなどの他のフィールドもカスタマイズできます。

    • 2 つのパスワードフィールドを含む二重認証ページ。この特定の製品表現に使用されている例が表示されます。

      ユーザー証明書

セットアップは、Citrix ADCバージョン13.0以降で利用可能なnFactorビジュアライザーを使用して作成することもできます。

nFactor ビジュアライザー LDAP と OTP

CLI を使用して、次の操作を実行します

  1. 認証仮想サーバーを構成します。

    add authentication vserver auth_vserver SSL 10.217.28.152 443
    
    add lb vserver lbvs1 HTTP 10.217.28.152 80 -AuthenticationHost auth1.nsi-test.com -Authentication ON
    
    bind ssl vserver auth_vserver -certkeyName gateway.angiras.lab
    <!--NeedCopy-->
    
  2. ルート証明書を仮想サーバーにバインドし、クライアント認証を有効にします。

    bind ssl vserver auth_vserver -certkeyName Root_Cert -CA -ocspCheck Optional
    
    set ssl vserver auth_vserver -clientAuth ENABLED -clientCert Optional
    <!--NeedCopy-->
    
  3. 認証アクションとポリシーを設定します。

    • LDAP認証
    add authentication ldapAction LDAP_Action -serverIP XX.XX.XX.XX -ldapBase "dc=citrix,dc=lab" -ldapBindDn administrator@citrix.lab -ldapBindDnPassword 97526a31c6e2e380f7b3a7e5aa53dc498c5b25e9b84e856b438b1c61624b5aad -encrypted -encryptmethod ENCMTHD_3 -ldapLoginName sAMAccountName -groupAttrName memberOf -subAttributeName cn`
    
    add authentication Policy LDAP_Pol -rule true -action LDAP_Action`
    <!--NeedCopy-->
    
    • デバイス管理
    add authentication ldapAction OTP_manage_Act -serverIP XX.XX.XX.XX -ldapBase "dc=citrix,dc=lab" -ldapBindDn administrator@citrix.lab -ldapBindDnPassword 3e10c1df11a9cab239cff2c9305743da76068600a0c4359603abde04f28676ae -encrypted -encryptmethod ENCMTHD_3 -ldapLoginName sAMAccountName -groupAttrName memberOf -subAttributeName cn -authentication DISABLED -OTPSecret userParameters
    
    add authentication Policy manage_OTP -rule TRUE -action OTP_manage_Act
    <!--NeedCopy-->
    
    • OTP 検証
    add authentication ldapAction LDAP_OTP_Act -serverIP XX.XX.XX.XX -ldapBase "dc=citrix,dc=lab" -ldapBindDn administrator@citrix.lab -ldapBindDnPassword e79a8ebf93fdb7e7438f44c076350c6ec9ad1269ef0528d55640c7c86d3490dc -encrypted -encryptmethod ENCMTHD_3 -ldapLoginName sAMAccountName -searchFilter "userParameters>=#@" -groupAttrName memberOf -subAttributeName cn -authentication DISABLED -OTPSecret userParameters
    
    add authentication Policy OTP_Pol -rule true -action LDAP_OTP_Act
    <!--NeedCopy-->
    
    • 証明書の認証
    add authentication certAction Certificate_Profile -twoFactor ON -userNameField SubjectAltName:PrincipalName
    add authentication policy Cert_Pol -rule true -action  Certificate_Profile`
    <!--NeedCopy-->
    
    • 証明書認証が失敗した場合、または証明書が存在しない場合の二重認証の認証なしのポリシー。
    add authentication Policy Cert_Pol_NOAUTH_ -rule true -action NO_AUTHN
    <!--NeedCopy-->
    
  4. 2 番目の要素のポリシーラベルとスキーマを設定します。

    • デバイス管理
    add authentication policylabel manage_otp_label -loginSchema LSCHEMA_INT
    
    bind authentication policylabel manage_otp_label -policyName manage_OTP -priority 100 -gotoPriorityExpression END
    <!--NeedCopy-->
    
    • 証明書認証の成功後の LDAP 認証
    add authentication loginSchema lschema_LDAP_Only -authenticationSchema "/nsconfig/loginschema/LoginSchema/PrefilUserFromExpr.xml"
    
    add authentication policylabel LDAP_Only -loginSchema lschema_LDAP_Only
    
    bind authentication policylabel LDAP_Only -policyName LDAP_Pol -priority 100 -gotoPriorityExpression END
    <!--NeedCopy-->
    
    • 証明書が存在しない場合または証明書認証が失敗した場合の二重認証
    add authentication loginSchema lschema_dual_auth -authenticationSchema "/nsconfig/loginschema/LoginSchema/DualAuth.xml"
    
    add authentication policylabel Dual_Auth_Label -loginSchema lschema_dual_auth
    
    bind authentication policylabel Dual_Auth_Label -policyName LDAP_Pol -priority 100 -gotoPriorityExpression END
    
    bind authentication policylabel Dual_Auth_Label -policyName OTP_Pol -priority 110 -gotoPriorityExpression END
    <!--NeedCopy-->
    
  5. 前のステップで作成したポリシーをバインドします。

    bind authentication vserver auth_vserver -policy Manage_OTP -priority 100 -nextFactor manage_otp_label -gotoPriorityExpression NEXT
    
    bind authentication vserver auth_vserver -policy Cert_Pol -priority 110 -nextFactor LDAP_Only -gotoPriorityExpression NEXT
    
    bind authentication vserver auth_vserver -policy Cert_Pol_NOAUTH_ -priority 120 -nextFactor Dual_Auth_Label -gotoPriorityExpression NEXT
    <!--NeedCopy-->
    

nFactor ビジュアライザーを使用した設定

  1. [ セキュリティ] > [AAA アプリケーショントラフィック] > [nFactor ビジュアライザー] > [nFactor フロー ] に移動し、[ 追加] をクリックします

  2. [ + ] をクリックして nFactor フローを追加します。

    フローを追加する

  3. 係数を追加します。入力する名前は nFactor フローの名前です。[Create] をクリックします。

    フローの名前を追加する

  4. [Add Policy] をクリックして、最初の要素認証ポリシーを追加します。認証ポリシーを作成するか、リストから既存の認証ポリシーを選択できます。

    ローカルポリシーの追加

  5. 登録チェックのポリシーを追加します。この場合のアクションは NO_AUTHN になります。

  6. [ 式] フィールドにHTTP.REQ.COOKIE.VALUE("NSC_TASS").EQ("manageotp") と入力して [ 作成] をクリックします。

    [式] フィールド

  7. [ ポリシーの追加 ] をクリックして、ポリシーを作成します。[作成] をクリックし、[追加] をクリックします。

    ポリシーの登録

  8. デバイスを管理する前に、緑の [ + ] をクリックして、LDAP 認証の次の要素を追加します。

  9. [ 係数の作成 ] を選択し、この係数の名前を入力して、[ 作成] をクリックします。

    ポリシーの登録

  10. [ スキーマの追加 ] をクリックし、[追加] をクリックして、デバイスを管理するスキーマを作成します。

    スキーマの登録

  11. 前のステップで作成したスキーマを選択し、[ 追加 ] をクリックして作成します。

    LDAP 認証ポリシーを追加する

  12. [ ポリシーの追加 ] をクリックし、初期 LDAP 認証の LDAP 認証ポリシーを選択します。

    詳細については、「 構成ユーティリティを使用して LDAP 認証を構成するには」を参照してください。

  13. 手順 9 と 10 に従って、デバイスを登録する別の要素を作成します。

  14. この要素にはスキーマは必要ありません。[ ポリシーの追加 ] をクリックして、デバイス登録のポリシーを追加します。(CLI 設定ステップ 4 ポイント b で作成されたポリシー)。

  15. 手順 9 と 10 の後に別の要素を作成して、登録済みデバイスをテストします。

  16. [ ポリシーの追加 (Add Policy)] をクリックして、認証ポリシー(CLI 設定ステップ 4 ポイント c で作成されたポリシー)を追加します。

    LDAP 認証ポリシーを追加する

  17. [登録ポリシー] の下の緑色の [ + ] をクリックして、証明書認証のポリシーを追加します。

    LDAP 認証ポリシーを追加する

  18. [ Add ] をクリックして、証明書ポリシーを追加します。

    LDAP 認証ポリシーを追加する

    注:

    クライアント証明書認証の詳細については、「 NetScaler でSSLクライアント証明書認証を有効にする方法」を参照してください。

  19. 証明書ポリシーの横にある緑色の記号をクリックして、LDAP 認証の次の要素を作成します。

    LDAP ファクタを追加

  20. [ スキーマの追加 ] をクリックして、事前入力されたユーザー名、単一認証のログインスキーマを追加します。

    LDAP 認証ポリシーを追加する

  21. 作成したスキーマを選択し、 「OK」をクリックします。

    LDAP スキーマを選択

  22. [ ポリシーの追加 ] をクリックし、LDAP 認証を追加します。

    LDAPポリシー

  23. [証明書ポリシー] の横にある赤い [ + ] をクリックして、障害ケースの次の要素を追加します。失敗のケースは、証明書認証が失敗した場合、またはデバイスに証明書がない場合です。

  24. [ ファクタの作成 ] を選択し、 ファクタ名を入力します

    LDAP OTP ファクタ

  25. [ スキーマの追加 ] をクリックして、二重認証スキーマを追加します。

    二重認証スキーマ

  26. 作成したスキーマを選択し、 「OK」をクリックします。

    スキーマの二重認証

  27. [ ポリシーの追加 ] をクリックし、LDAP 認証を追加します。

    LDAPポリシー

  28. OTP を検証する認証ポリシーを選択し、 「OK」をクリックします。

    LDAPポリシー

  29. [完了] をクリックして、設定を保存します。

  30. 作成した nFactor フローを選択し、認証、承認、および監査仮想サーバーにバインドします。[ 認証サーバにバインド ] をクリックし、[ 作成] をクリックします。

    LDAPポリシー

    nFactor をバインドおよびバインド解除するには、[ バインドを表示 ] オプションの [nFactor フロー] ページを使用します。

nFactor フローのバインドを解除する

  1. [nFactor フロー] ページで、ハンバーガーアイコンから [バインドを表示] をクリックします。

  2. [認証サーバーのバインド]ページで、バインドを解除する認証サーバーを選択し、[バインド解除]をクリックします。[閉じる] をクリックします。

    LDAPポリシー

Citrix ADC nFactor認証の第1要素として証明書認証を構成し、LDAPを第2要素として構成します