本メニューはShibboleth IdPバージョン2向けです。

1. はじめに

本メニューでは、IdPをカスタマイズします。
FPSPを導入し、IdP側でアクセス制御を可能とします。
例えば、あるSPにはeduPersonAffiliationが「student」のみアクセスを許可し、
「student」以外のユーザはSPへアクセスできないといった事が可能となります。



2. 実習セミナーでは

以下のような設定で行います。
手順書と照らし合わせながら、作業を進めてください。

・commons-configuration-1.3入手について

予めサーバ内の/root/PKG配下にあるので、こちらを使用してください。
(commons-configuration-1.3.zip)

# cd /root/PKG
# unzip commons-configuration-1.3.zip

・SampleFilterPerSP.javaについて 

予めサーバ内の/root/PKG配下にあるので、こちらを使用してください。
(SampleFilterPerSP.tgz)

# cd /root/PKG
# tar zxvf SampleFilterPerSP.tgz

また、アサーション送信拒否時に画面に日本語メッセージを表示させると文字化けが
発生してしまうので、以下のように一行追加します。
SampleFilterPerSP.javaを編集してください。

private void doError(ServletResponse servletResponse, String spEntityId, String userName) throws IOException {
    // エラーメッセージの表示など
    servletResponse.setContentType("text/html");
    servletResponse.setCharacterEncoding("utf-8");  //←追加

端末のサイズによっては表記がずれる可能性がございます。画面を広くしてご覧ください。 

・SampleFilterPerSP.javaのコンパイル

予め準備しているファイルの文字コードはutf-8となっていますので、コンパイル時のオプション
「-encoding shift_jis」は、必要ありません。
# javac -Xlint:unchecked  SampleFilterPerSP.java

 ・SampleFilterPerSP_allow.xmlについて

/root/PKG配下にあるSampleFilterPerSP.tgzに同封されているので、
展開先ディレクトリ内のSampleFilterPerSP_allow.xmlを使用してください。

 ・制御する設定をアドバンスド実習用に修正

制御対象のSPを設定します。
entityIDが「https://shiken-sp00.nii.ac.jp/shibboleth-sp」と設定されている箇所を各自の
SPのentityIDに修正します。SampleFilterPerSP_allow.xmlを編集してください。

例)1番を割り振られた場合
  https://ex-sp-test01.gakunin.nii.ac.jp/shibboleth-sp



3. 手順書

下記の導入手順書を参照し、作業を行います。
※実習時の設定値に置き換える事を忘れないようにしてください。



4. 動作確認

① 設定後、Tomcatの再起動を行ってない場合は行なってください。

service tomcat6 restart
※起動後は、正常にidp.warが展開されたか/usr/java/tomcat/logs/catalina.outを確認します。

② 各自が使用するSPの接続確認用ページにアクセスします。

例)1番を割り振られた場合
  https://ex-sp-test01.gakunin.nii.ac.jp/

③ ログインボタンをクリックします。

④ DSの所属機関の選択画面が表示されるので、各自が使用するIdPを選択します。

⑤ IdPのログイン画面が表示されるので、Username/Passwordを入力して認証を行います。

    フィルタ条件は、eduPersonAffiliationが「student」か「member」の場合にアクセスを許可する設定に
    なっているので、それ以外の値を持ったユーザでログインします。
    ※LDAPを変更してなければ、test002ユーザが「faculty」です。test002でログインしてください。
    ※uApproveが稼働している場合、eduPersonAffiliation属性を送信してください。 

Username:test002、Password:test002

⑥ アサーション送信拒否時の画面が表示される事を確認してください。

⑦ アクセス出来ない事が確認できたら、一旦ブラウザを閉じ、test001やtest003ユーザでも同様にログインしてみてください。

    test001は「member」で、test003は「student」なので、共にアクセス許可され属性受信の確認ページが表示されます。

Previous Page Parent Page Next Page

  • ラベルがありません