私は angular.js Web アプリケーションの作成に取り組んでおり、プロジェクトに統合する方法を探しています。多くのチュートリアルを読んで視聴しましたが、そのほとんどで、ユーザーはデフォルトのログイン ページからログイン/登録し、その後アプリにリダイレクトされることがkeycloak
わかりました。keycloak
使用したい独自のログインおよび登録ページを設計しました。keycloak
デフォルトの代わりにどのように使用すればよいですか。呼び出すことができる API はありますか、またはバックエンドがそれを実行する可能性がありますか? また、keycloak で使用できる Spring アダプターがあると読みましたが、使用できますか? 例へのリンクがあれば幸いです。
2 つ目の質問は、登録時に、住所、生年月日、性別などのユーザー詳細を追加できるかどうかですkeycloak
。登録ページではそれらの情報が必要だからです。
ベストアンサー1
APIの役割の拡張
POST to your/keycloak/url/auth/realms/master/protocol/openid-connect/token
データ付き:
{
client_id : 'Id_of_your_client',
username : 'your_username',
password : '@#$%^&',
grant_type : "password"
}
初期アクセストークンとリフレッシュトークンが提供されます
そして
同じURLにPOSTする
データ:
{
client_id : 'Id_of_your_client',
// client_secret : 'optional depending on the type of client',
grant_type : "refresh_token" ,
refresh_token : refresh_token_you_got_earlier
}
新しいリフレッシュ トークンとアクセス トークンが提供されます。これらのトークンは、Keycloak が認可/認証のためにチェックするものです。
独自のログインを作成し、REST API経由でKeycloakに認証情報を送信し、アクセストークンを取得したら、Keycloakで保護されたリソースへの進行中のリクエストのヘッダーに次のように入れます。
headers :{
Authorization : 'Bearer ' + access_token_you_got
}