カスタム認証キー発行¶
アプリ内でカスタムIdP(アイデンティティプロバイダー)と連携するために必要な認証キーを発行します。 「カスタム認証キーの発行」API はサーバー間通信を通じて動作し、アプリサーバーは Hive 認証サーバーを直接呼び出します。呼び出しが成功すると、カスタム認証キーが応答の data.custom_auth_key フィールドに返されます。このキーを使用して、IdP を新規にリンクしたり、IdP をプレーヤー ID にリンクしたりできます。
リクエスト URL¶
| 本番URL | https://auth.qpyou.cn/v2/game/customauth/get-key |
|---|---|
| サンドボックス URL | https://sandbox-auth.qpyou.cn/v2/game/customauth/get-key |
| HTTP メソッド | POST |
| Content-Type | application/json |
| データ形式 | JSON |
| ## リクエストヘッダー | |
| フィールド名 | 説明 |
| --- | --- |
| X-Access-Token | ゲームサーバー認証用の OAuth 2.0 アクセス トークン (OAuth トークン発行 を参照) |
| ISCRYPT | データが暗号化されているかどうか (0 = 暗号化されていない、常に 0 を渡します) |
| ## リクエスト本文 | |
| フィールド名 | 説明 |
| --- | --- |
| appid | アプリID |
| idp_id | IdP の文字列値 |
| idp_user_id | IdP によって提供されるユーザー ID 値 |
| auth_type | カスタム認証キーの目的 SIGNINIDP: 新しい IdP リンクと認証 CONNECT: IdP をプレーヤー ID にリンクします。 |
| player_id | ユーザー プレーヤー ID |
Note
フィールドのうち、idp_id 値は、以下の例に示す指定された文字列形式のいずれかで記述する必要があります。
- カスタムファイアベース
- カスタムフェイスブック
- カスタムグーグル
- カスタムサインインアップル
- カスタムツイッター
- カスタムネイバー
- カスタムゲーム
レスポンスボディ¶
| フィールド名 | 説明 | タイプ |
|---|---|---|
| result_code | レスポンスコード 詳細 | Integer |
| result_msg | 応答メッセージ | String |
| token_validation | JWT検証結果(JWT 検証エラー) | Object |
| token_validation.result_code | JWT検証結果コード | Integer |
| token_validation.result_msg | JWT検証結果メッセージ | String |
| data | 応答データ | Object |
| data.custom_auth_key | カスタム認証キー | String |
レスポンスコード¶
| コード値 | 説明 |
|---|---|
| 0 | 成功 |
| 1005 | サポートされていない auth_type |
| 2499 | JWT 検証が失敗しました (token_validation を参照)。 |
| 4200 | サポートされていない IdP |
リクエストの例¶
{
"appid": "com.com2us.hivesdk.normal.freefull.apple.global.ios.universal",
"idp_id": "CUSTOM_TWITTER",
"idp_user_id": "1204273895139753984",
"auth_type": "SIGNINIDP",
"player_id": 10012038880
}
応答例¶
成功¶
{
"result_code": 0,
"result_msg": "SUCCESS",
"token_validation": {
"result_code": 0,
"result_msg": "success"
},
"data": {
"custom_auth_key": "f28ac8415716f438b9c972e3706c0dab"
}
}
JWT 検証の失敗¶
{
"result_code": 2499,
"result_msg": "JWT validation failed. See token_validation for details.",
"token_validation": {
"result_code": 2408,
"result_msg": "The access token is expired. Please refresh your token."
}
}
Note
JWT 検証が失敗した場合は、token_validation フィールドから詳細なエラー情報を確認できます。詳細については、JWT 検証エラーコードを参照してください。