# Cloud Save 玩家数据

> Understand how Cloud Save stores key and value pairs associated with players, and how you can query data and use different access classes.

Cloud Save 玩家数据以键/值的形式存储与玩家相关的数据。可以通过游戏客户端和 Cloud Code 读取和写入玩家数据。

您可以配置玩家数据，以便数据[可供查询](/cloud-save/concepts/queries.md)并支持不同的访问类。可查询数据意味着您可以获取只有玩家可以读取和写入的数据、其他玩家可以查看的公开数据以及玩家不能直接修改的数据。

您可以使用 [Unity Cloud 后台](https://cloud.unity.com/home/organizations/default/projects/default/environments/default/cloud-save/player-data/)查看和编辑玩家数据。

## 访问类型##access-classes

Cloud Save 支持 3 种不同的**玩家数据**访问类。

| 访问类     | 描述                                                                                         |
| :------ | :----------------------------------------------------------------------------------------- |
| **默认值** | 数据对应的玩家可读写。                                                                                |
| **公开**  | 任何玩家可读取，数据对应的玩家可写入。 **注意**：公开数据适合用于表示您希望其他玩家能够读取但相应玩家的客户端仍可以直接写入的公开配置文件数据。                 |
| **受保护** | 数据对应的玩家可读取，只能从服务器写入。**注意**：受保护数据适合与 Cloud Code 或游戏服务器一起用于表示服务器权威逻辑，您不希望客户端逻辑能够在其中直接修改相应数据。 |

> **Note:**
>
> **注意**：如果您希望数据可由玩家读取但只能由服务器写入，则可以使用[默认游戏数据](./game-data.md#access-classes)。

您可以从服务器权威环境（例如 Cloud Code、游戏服务器、Unity CLI 或 Unity Cloud 后台）读取和写入任何玩家数据。

为了进一步限制客户端访问，您可以使用 [Unity Gaming Services（Unity 游戏服务）的访问控制功能](/services/access-control.md)。例如，可以禁用来自客户端的所有写入访问，仅允许来自 Cloud Code 或游戏服务器的写入访问。

## 限制##limits

> **Note:**
>
> 这些限制是**每个玩家**的限制，对玩家数量没有限制。

* 每种访问类型的**玩家数据**键/值对数量上限为 2000 个
  * 默认访问类型 2000 个键
  * 公共数据 2000 个键
  * 受保护数据 2000 个键
* 每个访问类的**玩家数据**总上限为 5 MiB
  * 5 MiB 默认访问类数据
  * 5 MiB 公开数据
  * 5 MiB 受保护数据

例如，一个玩家可以有 2000 个键，每个键大小为 2.5 KB，或者有 1 个键，大小为 5 MiB。

## 其他资源##additional-resources

* [使用 Unity SDK 访问玩家数据](/cloud-save/tutorials/unity-sdk.md#player-data)
* [使用 Cloud Code 访问玩家数据](/cloud-save/tutorials/cloud-code.md)
