设置用户认证
身份认证可以让用户在网页商城中购买商品及在目录中查看专属优惠。
含身份认证的网页商城的主要功能:
- 在网页商城中提供多种授权方式。
- 为授权用户设置个性化店面和促销码。
- 符合个人数据保护与处理的区域法律法规。
- 限流及DDoS保护。
您可以选择以下认证方式之一:
- 用户ID认证:
- 简化网页商城与游戏的集成。
- 用户认证小组件不要求注册或输入密码。用户需输入游戏中的用户ID或使用登录游戏时使用的同一社交网络帐户。
注:
如游戏未设置艾克索拉登录管理器,请使用用户ID认证。
- 用户ID加深度链接身份认证:
- 深度链接可用作用户ID登录时的额外身份认证方式。
- 用户ID加深度链接身份认证小组件无需注册或输入密码。用户只需输入游戏中的用户ID,或通过深度链接使用游戏进行登录即可。
注:
如果您的游戏支持深度链接身份认证,可以使用用户ID加深度链接的身份认证方式。
- 深度链接身份认证:
- 将深度链接作为主要登录方式时,用户可以保存支付方式,这是通过用户ID身份认证所无法实现的功能。
注:
如果您的游戏支持深度链接身份认证,请使用深度链接身份认证。
- 通过艾克索拉登录管理器进行认证:
- 提供丰富授权方式:社交网络、一次性验证码或链接、用户名和密码。
- 允许自定义艾克索拉登录管理器小组件。
- 可以在认证时加入年龄限制。
注:
如游戏已设置本解决方案,请使用艾克索拉登录管理器认证。
深度链接是一种特殊的URL,不仅可以将用户跳转至应用程序或网站的主页面,还可以直接将其跳转至特定的区段、页面或操作。
深度链接可用作用户ID登录时的额外身份认证方式。如果游戏安装在用户移动设备上,将通过深度链接跳转到游戏获取一个授权令牌。
用户流程
在移动应用中
- 网页商城中的未授权用户点击登录按钮或购买按钮。随后将打开一个用于输入用户ID或通过移动游戏登录的模态窗口。
- 用户点击通过手机游戏登录按钮。
- 用户将被跳转至游戏,然后自动以授权用户身份返回网页商城。
在桌面版本中
- 网页商城中的未授权用户点击登录按钮或购买按钮。随后将打开一个用于输入用户ID或使用二维码登录游戏移动版本的模态窗口。
- 用户使用移动设备扫描二维码。
- 网页商城在用户的移动设备上打开。
- 用户自动跳转至游戏,然后以已认证用户身份返回网页商城。
服务交互过程
如何设置
游戏侧
- 在游戏的移动应用设置中,注册一个URL机制来通过深度链接打开游戏:
- Android应用 —
AndroidManifest.xml
文件中 - iOS应用 —
Info.plist
文件中
- Android应用 —
- 注册机制后,用户通过游戏认证进入网页商城时,游戏应在指定地址打开。
- 游戏注册URL机制示例:
gamename
— 将在移动设备上打开用于用户身份认证的游戏名称。authorize
— 游戏打开后要执行的操作名称示例。请使用与应用程序操作系统中的操作相匹配的操作名称。operationPayload=<VALUE>
— 包含身份认证过程中用于生成令牌的信息的附加参数。
gamename://authorize?operationPayload=<VALUE>
,其中:- 示例:
Copy
- xml
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleURLSchemes</key>
<array>
<string>gamename</string>
</array>
</dict>
</array>

- 实现使用游戏中的用户ID生成JWT格式的授权令牌。
参数 | 类型 | 描述 |
---|---|---|
loginId | string | 发布商帐户中授权方式的ID。必需。 |
settings.projectId | string | 发布商帐户中的项目ID,可在浏览器地址栏中的项目名称旁边找到。该URL的格式如下:https://publisher.xsolla.com/<merchantId>/projects/<projectId> 。必需。 |
settings.merchantId | string | 发布商帐户中的商户ID,可在公司设置 > 公司部分或在发布商帐户任意页面的浏览器地址栏的URL中找到。该URL的格式如下:https://publisher.xsolla.com/<merchantId>/ 。必需。 |
user.id | string | 游戏中的用户ID。必需。 |
user.country | string | 两个大写字母的国家/地区代码(遵循ISO 3166-1 alpha-2标准)。有关艾克索拉支持的国家/地区以及确定国家/地区的流程的详细信息,请查看文档。必需。 示例:US |
operationPayload | string | 包含身份认证过程中用于生成令牌的信息的附加参数。必需。 |
- 使用curl调用用户令牌生成API方法的示例:
Copy
- curl
curl -X 'POST' \
'https://sb-user-id-service.xsolla.com/api/v1/user-id/token' \
-H 'accept: /' \
-H 'Content-Type: application/json' \
-d '{
"loginId": "000001aa-001a-0ab0-00001-01a01a01a01a",
"settings": {
"projectId": 123456,
"merchantId": 123456
},
"user": {
"id": "123",
"country": "US"
}
"operationPayload": "kosarb2NyrtIWaegJAH1f6P7XrBYPXYDya5coc_ZzcfiS_5o4QTUAL-CcGRC_Kv4CAtg"
}'
- 您将获得类似于
{token="JWT_TOKEN"}
的响应。- 添加一个包含授权成功通知(可选)。
- 实现使用获得的用户令牌在浏览器中打开网页商城。
- 在浏览器中为已授权用户打开网页商城的URL示例:
https://example.com/?token={token}
(使用自定义域名时)https://example.xsolla.site/?token={token}
(使用艾克索拉域名时)
- 其中
{token}
为用户的授权令牌。在建站器中
注:
首先请设置通过用户ID进行身份认证。这一步是必需的,以便在深度链接认证不可用时用户有其他认证方式。例如用户移动设备上未安装该游戏的情况。
- 在发布商帐户中打开您的项目,前往建站器。
- 在包含通过用户ID进行认证的网页商城网站所在卡片上单击配置。
- 前往登录设置,然后选择用户ID部分。
- 启用深度链接授权开关。
- 在深度链接URL字段,输入用于用户身份认证的链接。
- 如在网站上使用快速登录区块:
- 前往快速登录区块。
- 在布局部分,启用二维码开关。
- 要检查身份认证,请单击预览。
- 要发布网站,请单击发布。
设置快速登录区块
快速登录区块在网站上向用户提供一种额外身份认证方式。
区块的外观和功能取决于所选认证方式。
如为网站配置了通过用户ID进行认证,则快速登录区块将显示一个ID输入字段和一个登录按钮。
功能:
- 无需额外转移到模态窗口即可进行用户认证。
- 设置区块的内容。您可以启用并配置以下部分:
- 标题
- 描述
- 如何找到用户ID的说明
- 自定义背景
您还可以扩展区块功能,例如使用JS代码添加文字、按钮、图片等。

如为网站配置了通过艾克索拉登录管理器进行认证,则快速登录区块中将显示一个额外授权召唤按钮。在区块中点击该按钮时,将打开一个使用艾克索拉登录管理器方法之一进行授权的模态窗口。
功能:
- 设置召唤授权的按钮文字
- 设置自定义背景
您还可以扩展区块功能,例如使用JS代码添加文字、按钮、图片等。
对于新建网站,网页商城模板中默认包含快速登录区块,您可以在需要时移除该区块。
如之前已创建了网站且其中没有快速登录区块,您可以进行添加。
要添加快速登录区块:
- 在发布商帐户中打开项目。
- 在侧边栏中单击建站器。
- 在站点部分,选择您的网站,然后单击打开建站器。
- 单击添加区块。
- 选择快速登录区块。
注:
下一步
有用链接
本文对您的有帮助吗?
感谢您的反馈!
我们会查看您的留言并运用它改进用户体验。发现了错别字或其他内容错误? 请选择文本,然后按Ctrl+Enter。