本指南讨论高级技术。如果应用不当,可能会使用此功能完全禁用客户端对游戏的访问。
策略控制和结构
游戏使用 PlayFab Admin API 调用来检索和更新访问策略。用于设置 API 访问策略的两个具体调用为 GetPolicy 和 UpdatePolicy。有关 Admin API 调用的详细信息,请参阅 PlayFab API 参考。 若要使用 Admin API,你必须提供与游戏关联的开发者密钥。开发者密钥用于授权你的游戏进行 Admin API 调用。有关检索密钥的信息,请参阅密钥管理。 每个策略都包含一个语句列表,这些语句作为一个或多个 PlayFab 资源的规则。PlayFab 定义了一组默认策略语句,允许所有策略。如果在不替换该组语句的情况下删除它,你的游戏将无法调用 Client API。 默认的 PlayFab 策略语句:- Resource - 唯一标识一个或多个 PlayFab 资源的字符串。若要描述 API 资源,请使用下面所示的约定。
pfrn:api--/API-GROUP/API-CALL将API-GROUP指定为 Client API:Client、Server或Admin。将API-CALL替换为 API 名称,例如ConfirmPurchase、LoginWithTwitch或ReportPlayer。资源字符串支持通配符。以下资源字符串匹配任何资源。pfrn:api--* - Action - 描述要对资源执行的操作的字符串。使用
*匹配任何操作。 - Effect - 指定规则定义的字符串。使用
Allow或Deny允许或拒绝对资源的操作。 - Principal - 唯一标识用户类别的字符串。使用
*匹配任何用户。 - Comment - 提供有关策略语句的详细信息的用户定义字符串。
- ApiConditions - 一个_可选对象_,定义高级规则条件,例如 - 加密和签名标头。
DeleteCharacterFromUser 调用:
API 访问策略示例
以下代码示例演示对策略的基本操作。该代码执行以下操作:- 检索并记录现有的 Policy。
- 更新策略。
- 再次检索并记录现有的 Policy。
