通过custom ID进行认证
您可以通过custom ID(在您的服务器上生成的用户ID)在艾克索拉侧认证用户身份。
该认证方案允许:
要通过custom ID来认证用户,需在您的应用程序后端实现通过自定义ID进行认证API调用。该调用返回一个用户JSON Web令牌(JWT),可在支付和管理物品库的SDK方法中用作授权令牌。
注:
用户首次使用ID完成身份认证后,将自动在艾克索拉侧创建一个新帐户。
logUserOut
SDK方法。详解
通过方法详解文档了解高级设置。
您可以将SDK与自有授权系统集成。方法是实现通过自定义ID(在您的服务器上生成的用户ID)来识别用户身份,以打开游戏内商店、进行支付及管理物品库。
使用自有授权系统与艾克索拉服务器的交互过程:
- 您的客户端向您的服务器发送认证请求。
- 您的服务器授权用户并向艾克索拉服务器发送请求以接收用户JSON Web令牌(JWT),并传入自定义ID。
- 艾克索拉服务器返回用户JWT。
- 您的服务器将用户JWT传给客户端。
- SDK方法使用收到的用户JWT而不是授权令牌来打开游戏内商店、进行支付及管理物品库。
要将自有授权系统与艾克索拉产品配合使用:
- 在您的发布商帐户中设置服务器OAuth 2.0客户端。
- 实现获取服务器JWT。
- 实现获取用户JWT。
- 实现使用用户JWT与游戏内商店、购买项和物品库交互的逻辑。
注:
如果使用PlayFab或Firebase授权系统,请使用艾克索拉用于BaaS的现成扩展来获取用户JWT。
设置服务器OAuth 2.0客户端
- 在发布商帐户中打开您的项目,然后前往登录管理器部分。
- 在登录管理器项目面板中单击配置。
- 前往安全性区块,然后选择OAuth 2.0部分。
- 单击添加OAuth 2.0。
- 指定OAuth 2.0重定向URI。
- 勾选服务器(服务器对服务器连接)复选框。
- 单击连接。
- 复制并保存客户端ID和密钥。
获取服务器JWT
在应用程序的后端,实现一个方法通过生成JWT API调用来获取服务器JWT。请求必须包含以下参数:
grant_type
是JWT的类型,请传入值client_credentials
。client_secret
是设置服务器OAuth 2.0客户端时收到的密钥。client_id
是设置服务器OAuth 2.0客户端时收到的客户端ID。
注:
服务器JWT有效期是59分钟。
获取用户JWT
在应用程序的后端,实现一个方法使用通过自定义ID进行认证API调用获取用户JWT。请求必须包含X-Server-Authorization: <server_JWT>
头,其中<server_JWT>
是在上一步中获得的服务器JWT。
注:
使用用户JWT
将用户JWT作为授权令牌传入SDK方法。
实现JWT过期后重新获取的逻辑。建议在后台获取新令牌,这样用户就无须重新登录应用程序。
本文对您的有帮助吗?
感谢您的反馈!
我们会查看您的留言并运用它改进用户体验。有用链接
上次更新时间: 2024年1月22日发现了错别字或其他内容错误? 请选择文本,然后按Ctrl+Enter。