比較バージョン

キー

  • この行は追加されました。
  • この行は削除されました。
  • 書式設定が変更されました。

...

2. 実習セミナーでは

以下の手順で作業を進めてください。

「3.手順書」記載のページのreleasesタブから 添付の totpauth-impl-0.5.1-bin.zip をダウンロード、展開。 をマシンにダウンロード、展開。

conf/, edit-webapp/, flows/, views/ の内容をディレクトリ構造を保持したまま/opt/shibboleth-idp/以下に配置。

...

コード ブロック
languagediff
-idp.authn.flows = Password
+idp.authn.flows = Password|Totp

かつ、現時点でCSRF保護に対応しておりませんので保護機能を外します。

コード ブロック
languagediff
-idp.csrf.enabled=true
+idp.csrf.enabled=false

conf/authn/general-authn.xmlの <util:list id="shibboleth.AvailableAuthenticationFlows"> の子要素として以下を挿入します。TOTPの優先順位を高くするためには先頭に挿入してください。

...

コード ブロック
languagediff
@@ -37,10 +37,10 @@
     </bean>
 
        <bean id="contextSource" class="org.springframework.ldap.core.support.LdapContextSource">
-               <property name="url" value="LDAP_SERVER_URL" />
-               <property name="base" value="BASE_DN" />
-               <property name="userDn" value="MANAGERS DN" />
-               <property name="password" value="PASSWORD" />
+               <property name="url" value="%{idp.attribute.resolver.LDAP.ldapURL}" />
+               <property name="base" value="%{idp.attribute.resolver.LDAP.baseDN}" />
+               <property name="userDn" value="%{idp.attribute.resolver.LDAP.bindDN}" />
+               <property name="password" value="%{idp.attribute.resolver.LDAP.bindDNCredential}" />
        </bean>
 
        <bean id="ldapTemplate" class="org.springframework.ldap.core.LdapTemplate">

以下は3.3向け修正。

flows/authn/Totp/Totp-flow.xmlに登録のための遷移が宣言されていないので追加します。

コード ブロック
languagediff
@@ -26,6 +26,7 @@
                                result="viewScope.custom" />
                </on-render>
 
+                <transition on="RegisterToken" to="RegisterToken" />
+                <transition on="GenerateTokenSecrets" to="GenerateTokenSecrets" />
                <transition on="proceed" to="ExtractTotpFromForm" />
        </view-state>
 


conf/authn/password-authn-config.xmlにパスワードを持ち回る必要があるため以下の行を追加します。

...

  1. 上記登録直後はワンタイムパスワード入力画面になりますが、入力せずに、再度接続確認用SPから各自が使用するIdPを選択します。
  2. 第一画面は通常と変わりませんので、通常のUsername/Passwordを入力して次に進みます。
  3. "Token code"というワンタイムパスワードを入力する画面になりますので、TOTP対応アプリ/デバイスに表示されている数字6桁のワンタイムパスワードを入力して次に進みます。
    通常通り送信属性同意画面および属性受信の確認ページが表示されれば動作確認完了です。
  4. 通常通り送信属性同意画面および属性受信の確認ページが表示されます。
  5. ページ下部の「セッション情報」をクリックして、以下のように認証手段がパスワード認証時と異なることを確認してください。

    パネル

    Authentication Context Class: urn:oasis:names:tc:SAML:2.0:ac:classes:TimeSyncToken