Keycloakのデフォルトのログインページを避け、プロジェクトのログインページを使用する 質問する

Keycloakのデフォルトのログインページを避け、プロジェクトのログインページを使用する 質問する

私は 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

}

おすすめ記事