nFactor認証による3番目の要素のグループ抽出によるユーザー名と2つのパスワードの構成
次のセクションでは、nFactor 認証による第 3 要素でのグループ抽出を使用したユーザー名と 2 つのパスワードの使用例について説明します。
ユーザー名と 2 つのパスワード (第 3 要素でグループ抽出あり)
管理者が最初の認証要素を 1 つのユーザー名と 2 つのパスワードフィールドを持つように構成するユースケースを想定します。2番目の要素はパススルー(この要素にはログインページがありません)で、最初の要素からユーザー名と2番目のパスワードを使用します。3 番目の認証要素はパススルーで、第 1 要素からのユーザー名を使用してグループを抽出するように構成されています。
-
トラフィック管理仮想サーバにアクセスすると、ログインページにリダイレクトされます。
-
クライアントは、ユーザー名と 2 つのパスワードを送信します。たとえば、user1、pass1、pass2 などです。
-
第 1 ファクタは、user1 と pass1 のローカルポリシーに対して評価されます。評価は成功し、次の要素、この場合はポリシー「label1」が渡されます。
-
ポリシーラベルは、2 番目の要素が RADIUS ポリシーのパススルーであることを指定します。パススルースキーマとは、NetScalerアプライアンスがそれ以上の入力のためにクライアントに戻らないことを意味します。NetScalerアプライアンスは、すでに持っている情報を使用するだけです。この場合は user1 と pass2 です。次に、2 番目の要素は暗黙的に評価されます。評価が成功すると、次の要素が渡されます(この場合はポリシー「label2」)。
-
ポリシーラベルは、3 番目の要素が、グループ抽出用に設定された LDAP ポリシーのパススルーであることを指定します。NetScalerアプライアンスは、最初の要素からのユーザー名を暗黙的に使用します。
-
認証サーバは Cookie と、クライアントのブラウザをトラフィック管理仮想サーバにリダイレクトする応答を返します。トラフィック管理仮想サーバでは、要求されたコンテンツが格納されます。ログインに失敗すると、クライアントのブラウザに元のログオンページが表示されるため、クライアントは再試行できます。
<?xml version="1.0" encoding="UTF-8"?> <AuthenticateResponse xmlns="http://citrix.com/authentication/response/1"› <Status>success</Status> <Result>more-info</Result> <StateContext></StateContext> <AuthenticationRequirements> <PostBack>/nf/auth/doAuthentication.do</PostBack> <CancelPostBack>/Citrix/Authentication/ExplicitForms/CancelAuthenticate</CancelPost8ack> <CancelButtonText>Cancel</CancelButtonText> <Requirements> <Requirement><Credentia1><ID>logingID><SaveID>ExplicitForms-UsernamegSaveID><Type>username</Type></Credential><Label><Text>User name</Text><Type>p lain</Type></Label><Input><AssistiveText>Please supply either domain\username or user@fully. qualified.d main</AssistiveText><Text><Secret>false</Secret><ReadOnly>false</ReadOnly><InitialValue>S{http.req.user.name}</InitialValue><Constrain t>.+</Constraint></Text></Input></Requirenent> <Requirement><Credentia1><ID>passwd</ID><SaveID>ExplicitForms-Password</SaveID><Type>password</Type></Credential><Label><Text>Password:</Text><Type> plaingType></Label><Input><Text><Secret>true</Secret><ReadOnly>falsegReadOnly><InitialVa lue></InitialValue><Constraint>.+</Constraint></Text></Input></Requirement> <Requirement><Credentia1><Type>none</Type></Credential><Label><Text>Second factor</Text><Type>confirmation</Type></Label><Input /></Requirement> <Requirement><Credentia1><ID>login8tn</ID><Type>none</Type></Credential><Label><Type>none</Type></Label><Input><Button>Log On</Button></Input></Requ irement> </Requirements> </AuthenticationRequirements> </AuthenticateResponse>
CLI を使用して、次の操作を実行します
-
トラフィック管理および認証仮想サーバを設定します。
add lb vserver lbvs1 HTTP 10.217.28.152 80 -AuthenticationHost auth1.nsi-test.com -Authentication ON
add authentication vserver avn SSL 10.217.28.154 443 -AuthenticationDomain dep.sqltest.net
-
第 1 ファクタを設定します。
add authentication loginSchema login1 -authenticationSchema login-2passwd.xml
add authentication loginSchemaPolicy login1 -rule true -action login1
-
2 つ目の要素を設定します。
add authentication loginSchema login2 -authenticationSchema noschema
add authentication policylabel label1 -loginSchema login2
-
3 番目の要素を設定します。
add authentication loginSchema login_pass -authenticationSchema noschema
add authentication policylabel label2 -loginSchema login_pass
-
ローカル、RADIUS、および LDAP ファクタを設定します。
add authentication Policy localpolicy -rule true -action LOCAL
add authentication ldapAction ldapact -serverIP 10.217.201.84 -ldapBase "cn=users,dc=dep,dc=sqltest,dc=net" -ldapBindDn Administrator@dep.sqltest.net -ldapBindDnPassword 8f7e6642195bc181f734cbc1bd18dfaf03bf9835abda7c045f7a964ceb58d4c9 -encrypted -encryptmethod ENCMTHD_3 -ldapLoginName sAMAccountName -groupAttrName memberOf -subAttributeName CN -ssoNameAttribute userprincipalname
add authentication Policy ldappolicy -rule true -action ldapact
add authentication radiusAction radius -serverIP 10.217.22.20 -radKey a740d6a0aeb3288fa0a6fbe932d329acddd8f448ecb4a3038daa87b36599fd16 -encrypted -encryptmethod ENCMTHD_3 -radNASip ENABLED -radNASid NS28.50 -radAttributeType 11 -ipAttributeType 8
add authentication Policy radiuspolicy -rule true -action radius
-
ポリシーをバインドします。
bind authentication vserver avn -policy login1 -priority 10 -gotoPriorityExpression END
bind authentication vserver avn -policy localpolicy -priority 2 -nextFactor label1 -gotoPriorityExpression NEXT
bind authentication policylabel label1 -policyName radiuspolicy -priority 1 -gotoPriorityExpression NEXT -nextFactor label2
bind authentication policylabel label2 -policyName ldappolicy -priority 10 -gotoPriorityExpression NEXT
注
セットアップは、NetScalerバージョン13.0以降で利用可能なnFactorビジュアライザーを使用して作成することもできます。
nFactor ビジュアライザーを使用した設定
-
[ セキュリティ] > [AAA アプリケーショントラフィック] > [nFactor ビジュアライザー] > [nFactor フロー ] に移動し、[ 追加] をクリックします
-
+ をクリックして nFactor フローを追加します。
-
係数を追加します。入力する名前は nFactor フローの名前です。[作成]をクリックします。
-
[ スキーマの追加 ] をクリックして、最初のファクタのログインスキーマを追加します。認証ログインスキーマを作成するか、リストから既存の認証ログインスキーマを選択できます。[OK] をクリックします。
-
[Add Policy] をクリックして、最初の要素認証ポリシーを追加します。認証ポリシーを作成するか、リストから既存の認証ポリシーを選択できます。
-
次のように、ローカルポリシーを作成します。
-
緑色の「 + 」アイコンをクリックして、2 番目の要素を追加します。
-
[ スキーマの追加 ] をクリックして、2 番目のファクタのログインスキーマを追加します。認証ログインスキーマを作成するか、リストから既存の認証ログインスキーマを選択できます。[OK] をクリックします。
-
[ ポリシーの追加 ] をクリックして、ポリシーを作成します。[作成] をクリックし、[追加] をクリックします。
(注
)RADIUS アクションが作成されない場合は、「 RADIUS 認証を設定するには」を参照してください。
-
緑の [+] をクリックして 3 番目の係数を追加し、[作成] をクリックします。
-
[ スキーマの追加 ] をクリックして、2 番目のファクタのログインスキーマを追加します。認証ログインスキーマを作成するか、リストから既存の認証ログインスキーマを選択できます。[OK] をクリックします。
-
[ ポリシーの追加 ] をクリックして、ポリシーを作成します。[作成] をクリックし、[追加] をクリックします。
-
LDAP アクションが追加された場合は、同じアクションを選択します。そうでない場合は、KB 記事に従って作成してください。また、抽出のみを行っているため、LDAP アクションで認証を無効にしてください。詳細については、「 認証なしでNetScaler によるグループ抽出にLDAPを使用する方法」を参照してください
-
[認証ポリシーの構成 ]で、LDAPポリシーを追加し、[ OK]をクリックします。
-
[完了] をクリックします。nFactor フローを選択し、[ 認証サーバーにバインド ] オプションをクリックし、リストから認証、承認、および監査仮想サーバーを選択します。