ログイン永続性(SSO) の実装
ログイン状態を保持する(SSO) は、ユーザーが同じプロジェクト内のコミュニティやウェブストアなど、ウェブログインを必要とする他のウェブサイトにログインする際に、追加のウェブログインなしでログイン状態を維持できる機能です。
Note
- ログインの保持(SSO)は、Hiveウェブログインが提供するログイン検証とユーザー情報取得のAPIレスポンスを使用して開発者によって実装されなければなりません。
- ログイン保持(SSO)プロセスは、ログイン検証とユーザー情報取得 APIをリクエストして成功したログイン検証の後に進む必要があります。
ログイン維持(SSO)の条件¶
ログイン維持(SSO)機能を実装するには、以下のすべての条件を満たす必要があります。
- ログイン確認成功
- 同じプロジェクト内にログインしているユーザー
- 生成されたPlayerIDを持つユーザー
ログイン状態を維持する(SSO)の実装¶
ログイン状態を保持する (SSO) 機能は、以下の順序で実装できます。
- ログイン検証とユーザー情報取得 APIの検証が成功した場合、レスポンスからのJWT (user_info.access_token) 値が、ウェブログインを必要とする同じプロジェクト内の別のウェブサイトに渡されます。
- 受信サイトは公開鍵を使用してJWTの署名を検証し、期限切れの時間を確認します。署名検証と時間確認のロジックは、受信サイトの開発者によって直接実装される必要があります。
- 公開鍵は、Hiveコンソールの対応するプロジェクトを検索することで確認できます アプリセンター > セキュリティキー設定。
- ログイン検証が成功した場合、アクセストークン (JWT) ペイロードの
user_id
(PlayerID) がチェックされ、SSOログイン処理が進行します。
SSOログイン処理が成功するためには、以下のすべての条件を満たす必要があります。- JWT署名検証が成功
- JWTが期限切れでない
- JWTペイロードに含まれるuser_id (PlayerID) が開発者によって保存されたPlayerIDと一致する