このエクステンションは、yii\authclient\OpenIdConnect クラスを通じて、 OpenId 接続 認証プロトコルのサポートを提供します。
アプリケーション設定の例:
'components' => [
'authClientCollection' => [
'class' => 'yii\authclient\Collection',
'clients' => [
'google' => [
'class' => 'yii\authclient\OpenIdConnect',
'issuerUrl' => 'https://accounts.google.com',
'clientId' => 'google_client_id',
'clientSecret' => 'google_client_secret',
'name' => 'google',
'title' => 'Google OpenID 接続',
],
],
]
// ...
]
認証のワークフローは、OAuth2 の場合と全く同じです。
注意! 'OpenID 接続' プロトコルは、認証のプロセスをセキュアにするために、 JWS 検証を使います。
そのような検証を使うためには。このエクステンションがデフォルトでは要求していない
web-token/jwt-checker
, web-token/jwt-key-mgmt
, web-token/jwt-signature
, web-token/jwt-signature-algorithm-hmac
, web-token/jwt-signature-algorithm-ecdsa
, web-token/jwt-signature-algorithm-rsa
ライブラリをインストールする必要があります。
composer require --prefer-dist "web-token/jwt-checker:>=1.0 <3.0" "web-token/jwt-signature:>=1.0 <3.0" "web-token/jwt-signature-algorithm-hmac:>=1.0 <3.0" "web-token/jwt-signature-algorithm-ecdsa:>=1.0 <3.0" "web-token/jwt-signature-algorithm-rsa:>=1.0 <3.0"
または、
"web-token/jwt-checker": ">=1.0 <3.0",
"web-token/jwt-key-mgmt": ">=1.0 <3.0",
"web-token/jwt-signature": "~1.0 <3.0",
"web-token/jwt-signature-algorithm-hmac": "~1.0 <3.0",
"web-token/jwt-signature-algorithm-ecdsa": "~1.0 <3.0",
"web-token/jwt-signature-algorithm-rsa": "~1.0 <3.0"
をあなたの composer.joson のrequire
セクションに追加します。
Note: あなたが十分に信頼された 'OpenID 接続' プロバイダを使おうとする場合は、yii\authclient\OpenIdConnect::$validateJws を無効化し、
web-token
ライブラリのインストールを冗長なものとして割愛できます。 ただし、プロトコルの仕様に反することですので、お奨めは出来ません。