...
SAMLの規定により、認証要求(AuthnRequest)にはAuthnContextClassRefという認証方式に関するパラメーターを含めることができる。
通常は無指定であり、どんな認証方式でもOKであることを表す。
例えば、パスワード認証は以下の識別子で指定できる:
urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport
認証要求の AuthnContextClassRef を使うと、通常はパスワード認証でOKだが、機密度・重要度の高いサービスは「パスワードでない何か」を求めることができる。
...
AAL2を受信(要求に応えるのはSAML的にMUSTだが念の為)
PHPコード
コード ブロック |
---|
if ($_SERVER["Shib-AuthnContext-Class"] == "https://www.gakunin.jp/profile/AAL2") { |
...
AAL2利用シナリオ例:ステップアップ認証パターン
- (SP)AAL2に限定しないログインを行う
- ここでAAL2で認証された場合はセッションにフラグを立てる
- (SP)ログイン後の処理・ユーザー操作を受け付ける
- (SP)AAL2を要求する機能を要求された場合
- (SP)AAL2で認証したことがない場合
- (SP)AAL2限定のログインを行う
- DSにてAAL2をサポートしたIdPのみ表示する
- (SP)AAL2で認証されたことが確認できればフラグを立てる
- (SP)AAL2限定のログインを行う
- (SP)フラグが立っていれば当該機能を提供する
- (SP)AAL2で認証したことがない場合
他の考慮点:AAL2付与されないIDへの救済措置
メタデータへの記載
...