OpenSSO のアクセス保護設定 (その 3): ポリシーの設定
(Translate to English)Friday Sep 22, 2006
ここまで
- OpenSSO のインストール
- Sun Java System Web Server のインストール
- Sun Java System Web Server 用ポリシー・エージェントのインストール
- OpenSSO 側でのポリシー・エージェント情報の登録
と作業を進めてきたが, いよいよアクセス制御ポリシーの設定と動作確認をしてみる.
まず, opensso レルムにあるタブの中から Policies をクリック.
New Policy... をクリックして, 新規ポリシー作成を開始.
ポリシー定義のページ. とりあえず設定する必要があるのは, ポリシー名 (Name) とルール (Rules), そして対象 (Subject) の 3 つ.
このポリシーの名前を入力. ここでは Policy 1 とする.
つぎにルールの追加. Rules にある New... をクリック.
ルール登録のステップ 1. URL Policy Agent が選択されていることを確認し (といってもこれひとつしかないけど), Next をクリック.
ルール登録のステップ 2. アクセス保護下におくリソースと, そのリソースに対してどのようなリクエストを許可 / 拒否するかを定義する. ここでは以下の通り入力し, Finish をクリック.
| 項目名 | 値 | 備考 |
|---|---|---|
| Name | sw-23 | このルールの名前. |
| Resource Name | http://sw-23.japan.sun.com | リソースの URI. この指定により, http://sw-23.japan.sun.com のトップ・ページのみを保護の対象とすることになる. |
| Actions | GET および POST を許可 | リクエストの種類ごとに許可 / 拒否を指定. |
これでルールが設定された...けど, このルールで定義されているリソースは 「Web Server (ここでは sw-23.japan.sun.com) のトップ・ページのみ」 だけなので, たとえば Web ブラウザで http://sw-23.japan.sun.com/ (末尾のスラッシュあり) という URI に接続すると, そのリソースにはポリシーが設定されていないから, これまで通り Forbidden のレスポンスが返ってしまう.
ということで, もうひとつ別のルールを追加する. 再度 New... をクリック.
Next をクリック.
以下の通り入力し, Finish をクリック.
| 項目名 | 値 | 備考 |
|---|---|---|
| Name | sw-23/* | このルールの名前. |
| Resource Name | http://sw-23.japan.sun.com/* | リソースの URI. このようにワイルドカードを組み合わせることで, http://sw-23.japan.sun.com/ 以下の すべてのコンテンツを保護の対象にする. |
| Actions | GET および POST を許可 | リクエストの種類ごとに許可 / 拒否を指定. |
これで http://sw-23.japan.sun.com 以下のすべてのコンテンツに対するアクセス保護が設定された.
最後に対象 (誰からのアクセスに対してこのポリシーを適用するか) の設定. Subject にある New... をクリック.
対象登録のステップ 1. Access Manager Identity Subject を選択し, Next をクリック.
対象登録のステップ 2 が表示される.
ここでは対象の名前に OpenSSO Administrator と入力し, Filter に User および * を指定して Search をクリック.
現在 OpenSSO の管理下にあるユーザが一覧表示される. ここでは Available の中から amAdmin を選択し Add をクリック.
amAdmin が Selected に移ったことを確認し, Finish をクリック.
これでポリシー 「Policy 1」 が定義された.
右上の Finish をクリックし, このポリシーを保存する.
それでは, 実際にアクセス制御がうまいこと動くかどうか試してみる. まず右上の LOG OUT をクリックし, 現在のログイン・セッションを終了する.
確認のダイアログがポップアップするので, OK をクリックしてログアウトを完了する.
ログアウト・ページが表示される.
この状態で, ポリシー・エージェント入りの Web Server (http://sw-23.japan.sun.com) にアクセスする. ここではブラウザのロケーションに直接入力.
すると以前ポリシー・エージェントを入れた直後と同様に, OpenSSO にリダイレクトされた上でログイン・ページが表示される.
ここで amadmin / password を入力し, 認証を試みるとどうなるか? ポリシー・エージェントを入れただけの段階ではこのあと Forbidden が出てたんだけど, 今回は...
Web Sever (sw-23.japan.sun.com) のコンテンツが表示される!
こんな感じで, あとは
- 他の Web サーバやアプリケーション・サーバにポリシー・エージェントを入れて SSO したり
- Sun Java System Web Proxy Server にポリシー・エージェントを入れてリバース・プロクシ型の SSO 構成にしたり
- ユーザやロールを追加してきっちりユーザごとのアクセス認可を制限したり
- アイデンティティ・リポジトリをファイル (ディフォルト) から LDAP に変更してユーザ管理をしっかりしたり
- 認証方法を ユーザ ID / パスワード (ディフォルト) から他の認証機構 (ディジタル証明書とか) に切替えたり
と, いろいろ設定することができる. 参考文書は OpenSSO のサイトの Software Documentation からどうぞ. また OpenSSO の設定項目は Sun Java System Access Manager とほとんどカブっているので, 設定のやりかたは現行バージョンである Access Manager 7.0 の製品文書 (日本語) もそのまま役に立つはず.
最後に, 現時点の OpenSSO と Access Manager との大きな違いのひとつは
「SAML および Liberty Alliance 仕様に基づくアイデンティティ連携実装」
の有無だけど, Access Manager エンジニアリングの Ping Luo が
We are working on a schedule for OpenSSO-Federation open
source release.
と書いているように,
そろそろ統合スケジュールがはっきりする模様.
ということで, OSS な SSO サービスをどうぞお試しくださいませ.
Tags: configuration identitymanagement opensso












Posted by tkudo's weblog on October 03, 2006 at 02:19 PM JST #
Posted by tkudo's weblog on November 01, 2006 at 12:50 AM JST #