nFactor 認証での SAML 属性抽出に基づいて、SAML の後に LDAP 認証または証明書認証を構成する
SAML アサーションからの属性抽出による第 1 要素での SAML 認証
-
トラフィック管理仮想サーバにアクセスすると、ログインのために外部 SAML IdP にリダイレクトされます(この場合は Shibboleth、図を参照)。ログイン認証情報を入力します。ログオンが成功すると、SAML IdP は属性を含む SAML レスポンスを送信します。

-
NetScalerアプライアンスでSAML応答を受信すると、SAMLアクションで設定されているとおりに属性を解析して抽出します。SAML アサーションが検証され、2 番目の要素に移動します。
-
2 つ目の要素は、2 つの NO_AUTHN ポリシーを持つパススルー(この要素にはログオンページがありません)として設定されます。ポリシー評価に基づいて、LDAP 認証ファクタまたは証明書認証ファクタへのジャンプを設定しました。注:NO_AUTHNポリシーとは、このポリシーに設定されたルールがtrueと評価された場合、NetScalerアプライアンスは認証を一切実行しないことを意味します。これは、設定されている次の要素を指します。
-
たとえば、SAML アクションが UPN を属性 1 として抽出するように設定されており、UPN の値が
john@example.comであるとします。 これで、NO_AUTHN ポリシールールの 1 つが、文字列「example.com」の存在を確認するように設定されました。ポリシーが true と評価された場合は、LDAP 認証を持つ次の要素へのジャンプを設定できます。同様に、ポリシーは、証明書として次の要素を持つように設定できます。 -
SAML 認証後に LDAP ファクタを選択すると、ログオンページが表示されます。
注:ユーザー名の値は、最初の要素からユーザー名を抽出する式 $ {http.req.user.name} を使用して事前に入力されています。ユーザー名やパスワードのラベルなどの他のフィールドもカスタマイズできます。 -
次の図は、このログオンフォームの表現に使用される例を示しています。
注:要件に基づいて、管理者はログオンフォームの値を変更できます。 -

CLI を使用して、次の操作を実行します
-
トラフィック管理仮想サーバと認証サーバを設定します。
-
add lb vserver lb_ssl SSL 10.217.28.166 443 -persistenceType NONE -cltTimeout 180 -AuthenticationHost auth.nsi-test.com -Authentication ON -authnVsName avn -
add authentication vserver avn SSL 10.217.28.167 443 -AuthenticationDomain nsi-test.com
-
-
認証仮想サーバにバインドされた属性抽出を使用して SAML ポリシーを設定します。
-
add authentication samlAction shibboleth -samlIdPCertName shib-idp-242 -samlSigningCertName nssp-cert -samlRedirectUrl "https://idp.wi.int/idp/profile/SAML2/POST/SSO" -samlUserField samaccountname -samlRejectUnsignedAssertion OFF -samlIssuerName nssp.nsi-test.com -Attribute1 UserPrincipalName –Attribute2 department -
add authentication Policy saml -rule true -action shibboleth -
bind authentication vserver avn -policy saml -priority 1 -nextFactor label1 -gotoPriorityExpression NEXT
-
-
2 つ目の要素を設定します。
-
add authentication loginSchema login2 -authenticationSchema noschema -
add authentication Policy no_ldap -rule "http.req.user.attribute(1).contains(\"example.com\")" -action NO_AUTHN -
add authentication Policy no_cert -rule "http.req.user.attribute(2).contains(\"Sales\")" -action NO_AUTHN -
add authentication policylabel label1 -loginSchema login2 -
bind authentication policylabel label1 -policyName no_ldap -priority 1 -gotoPriorityExpression NEXT -nextFactor ldapfactor -
bind authentication policylabel label1 -policyName no_cert -priority 2 -gotoPriorityExpression NEXT -nextFactor certfactor
-
-
LDAP 認証ファクタを設定します。
-
add authentication loginSchema login3 -authenticationSchema login1.xml -
add authentication policylabel ldapfactor -loginSchema login3 -
bind authentication policylabel ldapfactor -policyName <LDAP Auth Policy> -priority 10 -gotoPriorityExpression END
-
-
証明書ファクタ認証を設定します。
-
add authentication loginSchema login4 -authenticationSchema noschema -
add authentication policylabel certfactor -loginSchema login4 -
bind authentication policylabel certfactor -policyName <Certificate Auth Policy> -priority 10 -gotoPriorityExpression END
-
-
ルート証明書を仮想サーバーにバインドし、クライアント認証を有効にします。
-
bind ssl vserver avn -certkeyName <root cert name>-CA -ocspCheck Optional -
set ssl vserver avn -clientAuth ENABLED -clientCert Optional
-
nFactor ビジュアライザーを使用した設定
-
+ をクリックして nFactor フローを追加します。
-
係数を追加します。入力する名前は nFactor フローの名前です。
-
注: SPとしてのSAMLについて詳しくは、「SAML SPとしてのNetScaler」を参照してください。 -
SAML ポリシーを追加します。

-

-
SAML 属性をチェックするデシジョンボックスを作成します。

-

-
アクション NO_AUTHN を使用して、属性「example.com」をチェックするポリシーを作成します。

-

-
手順 9 と 10 に従います。ポリシーをバインドして、属性 sales を確認します。

-
属性「example.com」の 2 番目の要素を追加するには、no_ldap ポリシーの横にある緑色の+記号をクリックします 。

-
LDAP 認証の次の要素を作成します。

-

-
ユーザー名が事前に入力されている 2 番目の要素のスキーマ「PrefilUserFormExpr.xml」を使用して、認証ログインスキーマを作成します。

-
(注)LDAP 認証の作成の詳細については、「 構成ユーティリティを使用して LDAP 認証を構成するには」を参照してください。 -
手順 13 に従います。属性 sales の 2 番目の要素を追加するには、no_cert の横にある緑色の+記号をクリックします 。

-
証明書認証の次の要素を作成します。

-
手順 15、16、および 17 に従います。証明書認証のスキーマを追加し、証明書認証ポリシーを追加します。(注)証明書認証の詳細については、「 クライアント証明書認証ポリシーの構成とバインド」を参照してください。
-
注: