この投稿は、SSOに精通したばかりの初心者向けに設計されています。 インターネットでは、特にロシア語で、OpenAMとmod_auth_mellonの組み合わせに関するドキュメントはあまりありません。
クイックスタートとして、
Dockerイメージを使用します。 ユーザー認証については、mod_auth_mellonモジュールを検討しますが、他の方法、たとえば
Policy AgentまたはOpenIGを使用できます。
理論
シングルサインオンテクノロジー(シングルサインオン)は、ユーザーが再認証なしでポータルのあるセクションから別のセクションに切り替えるテクノロジーです。
OpenAM(アクセス管理)-IDプロバイダー(IdP、英語IDプロバイダー)、ユーザーを認証します。
mod_auth_mellon -IdP(OpenAM)を介してユーザーを認証するApacheモジュール。
カスタマイズ
/ etc / hostsにOpenAMおよびテストアプリケーションのドメインを追加します。
127.0.0.1 openam.example.com fake.mellon.app.one fake.mellon.app.two
OpenAMを起動します。
docker run -d -t -p 8080:8080 --add-host "openam.example.com:127.0.0.1" wstrange/openam-base-nightly
テストアプリケーションを起動します。
git clone git@bitbucket.org:agobzhelyan/openam_mellon.git cd openam_mellon
docker build -t fake_mellon_app_one fake_app_1 docker run -d -p 8091:80 --name fake_mellon_app_one fake_mellon_app_one
docker build -t fake_mellon_app_two fake_app_2 docker run -d -p 8092:80 --name fake_mellon_app_two fake_mellon_app_two
OpenAMを構成します。 手動で行わないように、Dockerイメージを作成できます。 しかし、それがどのように機能するかをよりよく理解するには、これらの簡単な手順を自分で実行する方が良いと思います:
-http://openam.example.com:8080 /
openam /を開きます。
-[デフォルト構成の作成]をクリックします。
-amAdminのパスワードはsecret12、UrlAccessAgentの場合-secret123;
-ホーム(amAdmin / secret12)、次にフェデレーションに移動し、TestCOTという名前の新しい信頼の輪を追加します。
-[IDプロバイダーの作成]ページに移動します:
http :
//openam.example.com :
8080 /
openam /
task /
CreateHostedIDP 署名キーを変更してテストし、構成を待ってから終了します。
-[リモートサービスプロバイダーの作成]ページ
http://openam.example.com:8080/openam/task/CreateRemoteSPに移動します。 Fileを待機してfake_app_1 / mellon / fake_mellon_app_one.xmlをロードし、COTが選択されていることを確認しますTestCOT
-fake_mellon_app_two.xmlでも同じです。
mod_auth_mellonの構成。
https://github.com/UNINETT/mod_auth_mellonを読み、テストアプリケーション
https://bitbucket.org/agobzhelyan/openam_mellon/srcの実装例を参照することをお
勧めします 。
テスト中
-管理パネル
http://openam.example.com:8080/openam/を終了し、アプリケーション1に移動します
-http://fake.mellon.app.one: 8091 /;
-バックエンドリンクをクリックします。
-ログインページにリダイレクトされます。 demo / changeitを入力してください。
-その後、要求された(保護された)ページに戻ります。
-アプリケーション2
http://fake.mellon.app.two:8092 / backend /に移動し、ここでログインしていることに注意してください。
おわりに
ご覧のとおり、すべてがシンプルですが、新しいテクノロジーを知るには時間がかかります。 この投稿を書く時間が無駄にならず、誰かに役立つことを願っています。 この技術の経験がある方は、コメントで共有してください。
使用された文献のリスト
-www.lab-ic.ru/solutions/sso-doc.arcgis.com/en/arcgis-online/reference/configure-openam.htm-openam.forgerock.org/doc/getting-started/index.html-en.wikipedia.org/wiki/Single_sign-on-blog.kaliconseil.fr/2011/02/21/using-openam-with-apache-as-a-reverse-proxy-mkchendil.blogspot.ch/2015/02/apache-and-openam-saml-federation.html-blogs.splunk.com/2013/03/28/splunkweb-sso-samlv2