被遺忘權 (RTBF) 允許您聲明哪些鍵和數據存儲持有用戶的數據。當Roblox處理您遊戲的RTBF請求時,系統將使用這些模板自動刪除相匹配的數據。您可以通過數據存儲管理器在創作者中心進行可視化配置,或通過開放雲配置API以編程方式配置。
自動RTBF
要使用自動RTBF處理,您必須定義刪除模板。這些模板告訴Roblox哪些數據存儲或鍵屬於特定用戶。您可以最多擁有100個模板來識別您的用戶數據。
刪除模板
自動RTBF是通過匹配模式來工作的。您使用 {UserId} 令牌為您的用戶數據定義模板。當Roblox收到被遺忘權請求時,系統將用請求者的實際ID替換該令牌,並掃描您的數據存儲以找到匹配項進行刪除。
符合條件的要求
要使條目符合自動刪除的資格,必須滿足以下標準:
- 存儲類型 — 用戶數據應存儲在標準數據存儲或有序數據存儲中。僅支持對標準數據存儲進行整體刪除。
- 標識符 — 用戶ID必須是數據存儲或鍵的 Name 或 Scope 的一部分。
- 格式 — ID必須通過靜態字符串模式可識別(例如,User_{UserId})。
通過數據存儲管理器配置自動RTBF
創作者中心提供了一個可視化界面,以便在不使用命令行的情況下管理您的RTBF模板。
訪問創作者中心。
選擇您想要配置的遊戲。
在左側導航菜單中,轉到 配置 ⟩ 數據存儲管理器。
選擇 RTBF刪除 標籤。
點擊 創建模板。
選擇 類型(標準數據存儲、標準鍵或 有序鍵)。
使用 {UserId} 令牌填寫相應的字段(例如,PlayerInventory_{UserId})。該令牌是區分大小寫的。
再次檢查示例輸出,然後點擊 創建。

通過配置API配置自動RTBF
您還可以使用開放雲配置API以編程方式管理RTBF模板。這對於自動化或大規模管理模板非常有用。
在創作者儀表板中,創建或編輯API密鑰,為每個想要自動化RTBF刪除的宇宙包括 universe:read 和 universe:write 權限。更多詳情,請參見管理API密鑰。
模板存儲為名為 user_data_templates 的JSON配置。主要有兩種類型:
- 鍵模板 — 識別特定的鍵。需要 data_store_type(STANDARD 或 ORDERED)、data_store_name 和 key_pattern。 scope_pattern 是可選的,但建議使用。
- 數據存儲模板 — 識別整個數據存儲。需要 data_store_type(目前僅支持 STANDARD)和 data_store_pattern。
對於這兩種類型的模板,處理RTBF請求時,{UserId} 令牌會被用戶的ID替換。
範例配置{"user_data_templates": [{"key_template": {"data_store_type": "STANDARD","data_store_name": "PlayerInventory","key_pattern": "User_{UserId}","scope_pattern": "Scope_{UserId}"}},{"key_template": {"data_store_type": "ORDERED","data_store_name": "PlayerLeaderboard","key_pattern": "User_{UserId}","scope_pattern": "global"}},{"data_store_template": {"data_store_type": "STANDARD","data_store_pattern": "Player_{UserId}_Save"}}]}接下來,通過開放雲配置API提交。在以下示例中,將每個請求中的 <API_KEY> 和 <UNIVERSE_ID> 替換為您的值,並將所有請求發送到 DataStoresConfig 存儲庫。
通過 PUT 請求創建草稿,該請求定義您的配置。如果草稿已存在,則該請求會覆蓋它。
curl --location --request PUT 'https://apis.roblox.com/creator-configs-public-api/v1/configs/universes/<UNIVERSE_ID>/repositories/DataStoresConfig/draft:overwrite' \--header 'x-api-key: <API_KEY>' \--header 'Content-Type: application/json' \--data-raw '{"entries": {"user_data_templates": [{"key_template": {"data_store_type": "STANDARD","data_store_name": "PlayerInventory","key_pattern": "User_{UserId}","scope_pattern": "Scope_{UserId}"}},{"key_template": {"data_store_type": "ORDERED","data_store_name": "PlayerLeaderboard","key_pattern": "User_{UserId}","scope_pattern": "global"}},{"data_store_template": {"data_store_type": "STANDARD","data_store_pattern": "Player_{UserId}_Save"}}]}}'通過 GET 請求驗證您的草稿,以檢索和查看草稿,然後再使其上線。
curl --location --request GET 'https://apis.roblox.com/creator-configs-public-api/v1/configs/universes/<UNIVERSE_ID>/repositories/DataStoresConfig/draft' \--header 'x-api-key: <API_KEY>'驗證後,發送此 POST 請求進行發布。撤回此操作的唯一方法是恢復之前的版本。該操作還要求與API密鑰相關聯的帳戶符合發布遊戲的條件。
curl --location --request POST 'https://apis.roblox.com/creator-configs-public-api/v1/configs/universes/<UNIVERSE_ID>/repositories/DataStoresConfig/publish' \--header 'x-api-key: <API_KEY>' \--header 'Content-Type: application/json' \--data-raw '{"deploymentStrategy": "Immediate"}'發布後,使用此 GET 請求確認配置已上線。
curl --location --request GET 'https://apis.roblox.com/creator-configs-public-api/v1/configs/universes/<UNIVERSE_ID>/repositories/DataStoresConfig/full' \--header 'x-api-key: <API_KEY>'
最佳實踐
- 區分大小寫 — 在您的模式中使用精確的 {UserId} 令牌。不接受 {userId} 等變體。
- 手動驗證 — 在發布配置之前,通過使用數據存儲管理器比較您的模式與您的實時Luau使用情況。
- 默認範圍 — 如果數據存儲使用默認範圍,則在鍵模板中將 scope_pattern 設置為 "global"。
- 在測試遊戲上測試端到端流程 — 為全面驗證您的模板,考慮創建一個測試遊戲和虛擬帳戶,並填充該帳戶的用戶ID的虛擬數據,在該虛擬帳戶上請求RTBF,並在帳戶處理後確保數據被刪除。
- 確認刪除 — 在您的實時遊戲上線後,當RTBF請求出現在您的Roblox消息中時,驗證相應的數據在30天內被刪除。