自定义认证密钥签发¶
发出在应用程序中链接自定义 IdP(身份提供商)所需的身份验证密钥。 “发布自定义身份验证密钥”API 通过服务器到服务器通信进行操作,其中应用程序服务器直接调用 Hive 身份验证服务器。调用成功后,自定义身份验证密钥将在响应的 data.custom_auth_key 字段中返回。您可以使用此密钥新链接 IdP 或将 IdP 链接到玩家 ID。
请求网址¶
| 生产网址 | https://auth.qpyou.cn/v2/game/customauth/get-key |
|---|---|
| 沙箱网址 | 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 值必须以下面示例中所示的指定字符串格式之一写入。
- 自定义_火力基地
- 自定义_FACEBOOK
- 自定义_GOOGLE
- 自定义_SIGNIN_APPLE
- 自定义_推特
- 自定义_NAVER
- 自定义游戏
响应体¶
| 字段名称 | 描述 | 类型 |
|---|---|---|
| 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 验证错误代码。