概要
前回の続きです。
環境
- Ubuntu 14.04
- OpenAM 13.0.0
OAuthプロバイダの作成
http://openam.example.com:8080/openamにアクセス
前回のインストールで設定した
- ID: amAdmin
- PW: hogehoge
でログイン。
OAuth2の設定をクリック
- リフレッシュトークン
- 認可コード
- アクセストークン
を設定します。GoogleのOAuthを使ったことがある人は分かるかもしれませんが、それぞれ
OpenAM | Googleの場合の値 | |
---|---|---|
リフレッシュトークン | refresh_token | 無期限 |
認可コード | code | 10(min) |
アクセストークン | access_token | 3600(sec) |
となっています。今回は画像の値で登録します。これで保存するとOAuthプロバイダが作成されます。
上部メニューでアクセス制御
→/ (最上位のレルム)
→サービス
をクリックすると以下のように追加されていることが分かります。
OAuthプロバイダの設定は実は以上で完了です。以降は使用する上で必要な用語の説明をします。
エンドポイントについて
http://openam.example.com:8080/openam/.well-known/openid-configurationにアクセスすると、認証で使われる各エンドポイントが表示されます。
{ "response_types_supported": [ "token id_token", "code token", "code token id_token", "token", "code id_token", "code", "id_token" ], "registration_endpoint": "http://openam.example.com:8080/openam/oauth2/connect/register", "token_endpoint": "http://openam.example.com:8080/openam/oauth2/access_token", "end_session_endpoint": "http://openam.example.com:8080/openam/oauth2/connect/endSession", "version": "3.0", "userinfo_endpoint": "http://openam.example.com:8080/openam/oauth2/userinfo", "subject_types_supported": [ "public" ], "issuer": "http://openam.example.com:8080/openam", "jwks_uri": "http://openam.example.com:8080/openam/oauth2/connect/jwk_uri?realm=/", "id_token_signing_alg_values_supported": [ "HS256", "HS512", "RS256", "HS384" ], "check_session_iframe": "http://openam.example.com:8080/openam/oauth2/connect/checkSession", "claims_supported": [ "phone", "address", "email", "openid", "profile" ], "authorization_endpoint": "http://openam.example.com:8080/openam/oauth2/authorize" }
以下簡単な説明です。
名称 | エンドポイント | 説明 |
---|---|---|
registration_endpoint | /oauth2/connect/register | OPの動的クライアント登録用 |
token_endpoint | /oauth2/access_token | アクセストークン取得用 |
end_session_endpoint | /oauth2/connect/endSession | ログアウト用 |
userinfo_endpoint | /oauth2/userinfo | 認証されたユーザークレームの取得用 |
jwks_uri | /oauth2/connect/jwk_uri | 署名の検証用公開鍵 |
check_session_iframe | /oauth2/connect/checkSession | ログインセッションのチェック用。RPからOPに確認取るために使用 |
authorization_endpoint | /oauth2/authorize | 認可用。ここに投げると承認の確認画面に飛ぶ |
OpenID Connectで主に使うのはauthorization_endpoint
、token_endpoint
、userinfo_endpoint
かと思います。
次回はRP(Relying Parties)の登録です。