> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# PlayFab Game Manager의 API 기능 설정

> 사용자 지정 데이터에 대한 JSON 유효성 검사, 개인정보 보호 옵션 및 기타 타이틀 전역 API 동작을 포함하여 PlayFab Game Manager에서 API 기능 설정을 구성합니다.

PlayFab Game Manager의 API 기능은 타이틀에 대한 PlayFab API의 동작을 관리하기 위한 몇 가지 옵션입니다. 이러한 옵션은 액세스, 개인 정보 및 기타 기능을 관리하기 위한 도구를 제공합니다.

이러한 옵션을 구성하기 위한 화면을 찾으려면:

* **Game Manager**로 이동합니다.
* 왼쪽 메뉴에서 **Settings**를 선택합니다.
* **API Features** 탭을 선택합니다.

<img src="https://mintcdn.com/microsoft-4404708b/dqv53299jA1M-fNi/images/playfab/live-service-management/gamemanager/tutorials/game-manager-settings-api-features-full.png?fit=max&auto=format&n=dqv53299jA1M-fNi&q=85&s=ff65da3a46374af1c80aa9f84952074b" alt="Game Manager - Settings - API Features" width="1269" height="1255" data-path="images/playfab/live-service-management/gamemanager/tutorials/game-manager-settings-api-features-full.png" />

이러한 확인란 중 일부는 명확하지만, 일부는 그렇지 않습니다. 이 자습서에서는 그 중 몇 가지에 대해 자세히 설명합니다.

<Note>
  이 자습서의 여러 스크린샷 및 데모는 [Postman](/services/playfab/sdks/postman/postman-quickstart)을 활용합니다.
</Note>

## 사용자 지정 데이터 값에 유효한 JSON 요구

해킹된 클라이언트는 게임에 *심각한* 문제를 일으킬 수 있습니다. 잘못된 형식의 데이터를 게시하는 악의적인 API 호출자는 개발자에게 노이즈, 버그 및 문제를 유발할 수 있습니다. 잘못된 형식의 데이터가 있는 플레이어는 종종 정리 작업을 위해 수동 개입이 필요합니다.

사용자 지정 데이터 값에 유효한 JSON을 요구하면, 데이터가 데이터베이스에 저장되기 *전에* 기본 콘텐츠 유형 유효성 검사가 수행됩니다. 이러한 문제를 조기에 발견하면 문제가 지속되는 것을 방지하고, 해커가 정상적인 개발을 방해하는 것을 막을 수 있습니다.

이 플래그가 설정되면 클라이언트가 사용자 지정 데이터의 각 키에 대해 유효한 JSON을 전달하도록 강제됩니다. 단순한 JSON 유효성 검사만으로는 *모든* 문제를 방지할 수 없지만, 일부 잘못된 동작을 걸러내는 데 도움이 될 수 있습니다.

이 옵션을 선택하면 플레이어, 게시자, 캐릭터, 타이틀 및 아이템 데이터를 포함한 모든 사용자 지정 데이터에 저장되는 각 키가 유효한 JSON이어야 합니다.

<Note>
  이 플래그는 언제든지 *켜기* 또는 *끄기* 로 전환할 수 있습니다. 그러나 소급 적용은 *되지 않습니다*. 따라서 기존 값은 영향을 *받지 않습니다*. *새로 기록된 값만 유효성 검사됩니다.*
</Note>

값으로 유효하지 않은 JSON을 전달하려고 하면, 요청은 `HTTP Status Code 400 "Bad Request"`로 거부됩니다.

<img src="https://mintcdn.com/microsoft-4404708b/dqv53299jA1M-fNi/images/playfab/live-service-management/gamemanager/tutorials/postman-sending-invalid-json.png?fit=max&auto=format&n=dqv53299jA1M-fNi&q=85&s=f36cfcd0c8e160dfdac63e529c3a5b9e" alt="Postman - Sending invalid JSON" width="1355" height="1152" data-path="images/playfab/live-service-management/gamemanager/tutorials/postman-sending-invalid-json.png" />

## 모든 API 요청 액세스 비활성화

놀랍게도 타이틀에 대한 모든 API 액세스를 비활성화하는 것이 유용할 수 있습니다.

예를 들어, 다운타임이 있는 민감한 마이그레이션을 수행하는 경우, 잘못된 API 요청이 심각한 중단을 일으킬 수 있습니다. 게임을 종료하는 경우, 이 옵션을 통해 게임이 실제로 종료되었음을 보장할 수 있습니다.

<Warning>
  이 확인란을 표시하면 **문자 그대로 게임이 중단됨**을 명심하고, 주의해서 사용하세요!
</Warning>

API 액세스를 끄기로 결정하고 상자를 체크하면, 모든 API 요청이 몇 분 내에 실패하기 시작합니다.

PlayFab은 `HTTP Status Code 400 "Bad Request"`를 반환하여 타이틀이 그러한 사용을 비활성화했음을 나타냅니다.

<img src="https://mintcdn.com/microsoft-4404708b/dqv53299jA1M-fNi/images/playfab/live-service-management/gamemanager/tutorials/postman-accessing-a-disabled-api.png?fit=max&auto=format&n=dqv53299jA1M-fNi&q=85&s=5699272b227f83fc32e34ec6f7ac7eb0" alt="Postman - Accessing a disabled API" width="1368" height="1020" data-path="images/playfab/live-service-management/gamemanager/tutorials/postman-accessing-a-disabled-api.png" />

이러한 `HTTP Status Code 400` 응답은 상자의 체크를 해제할 때까지 지속됩니다. 다시 말하지만, 체크 해제가 적용되는 데 몇 분이 걸릴 수 있습니다.

## 플레이어 IP 주소 난독화 활성화

많은 스튜디오의 경우, **개인 식별 정보**(**PII**)를 보유하는 것은 피하는 것이 가장 좋은 책임입니다. 흔하고 (그리고 유용한) **PII** 형식 중 하나가 **IP 주소**입니다.

IP 주소는 지리적 위치 확인 등 여러 이유로 유용합니다. 그러나 IP의 *완전한* 정확도는 종종 PII로 간주됩니다.

PlayFab은 IP 주소의 일부를 난독화하여 이를 제한하는 데 도움을 줄 수 있습니다. 이제 확인란을 선택하여 이 민감한 데이터 수집을 중단할 수 있습니다.

이 상자를 체크하면 PlayFab은 항상 플레이어의 IP 마지막 옥텟에 **0**을 기록합니다. **Players** 탭에서 플레이어의 로그인 기록을 확인하여 이것이 작동하는지 확인할 수 있습니다.

모든 IP가 **.0**으로 끝나는 것을 볼 수 있습니다. IP 주소 난독화가 활성화되기 전에 기록된 모든 IP는 전체 세부 정보를 유지합니다. 따라서 게임이 PII에 민감하다면, 출시 전에 이 확인란을 설정하세요.

<Note>
  난독화를 활성화하면 IP 주소를 사용하는 *다른* 기능에 영향을 미칩니다. 가장 직접적으로 영향을 받는 세 가지는 IP 기반 지리적 위치, IP 차단 및 IP 주소를 지정하는 플레이어 차단입니다.
</Note>

PlayFab은 로그인 시 IP 기반 지리적 위치를 자동으로 수행합니다. 이는 플레이어가 지구상 어디에서 오는지 자동으로 확인하는 데 도움이 됩니다.

그러나 난독화된 IP를 사용할 때, *특히* 도시 수준에서 정확도가 감소할 수 있습니다. 이는 IP 난독화의 목표가 정확한 위치를 포함한 PII 기록을 피하는 것이기 때문에 의도적입니다.

또한, IP 난독화는 [IP 차단](/services/playfab/player-progression/player-data/ip-bans)에 영향을 미칠 수 있습니다. IP 차단을 발행하는 것이 계정을 한 번에 하나씩 차단하는 것보다 더 실용적인 경우가 많습니다. 악의적인 행위자가 새 계정을 만들 수 있기 때문입니다.

IP를 차단하면 악의적인 행위자가 동일한 인터넷 연결에서 새 계정을 만드는 것을 방지합니다. 많은 경우, 이는 효과적인 도구입니다.

그러나 난독화된 IP를 사용하면 정확한 IP를 차단할 수 없습니다. 대신, 마지막 옥텟이 **.0**인 IP에 대한 차단을 사용해야 합니다. 이는 사실상 \_전체 IP 범위\_를 차단하게 된다는 점에 유의하세요.

<img src="https://mintcdn.com/microsoft-4404708b/dqv53299jA1M-fNi/images/playfab/live-service-management/gamemanager/tutorials/game-manager-ipbans-obfuscated-ip-ban.png?fit=max&auto=format&n=dqv53299jA1M-fNi&q=85&s=efc08197810551e86f8922aa35b53f74" alt="Game Manager - IP Bans - Add Ban" width="823" height="728" data-path="images/playfab/live-service-management/gamemanager/tutorials/game-manager-ipbans-obfuscated-ip-ban.png" />

범위를 명시적으로 지정하려면, 아래와 같이 **.0**으로 끝나는 난독화된 주소에 의존하는 대신 동등한 CIDR 범위를 입력하세요. 두 차단은 기능적으로 동등합니다.

<img src="https://mintcdn.com/microsoft-4404708b/dqv53299jA1M-fNi/images/playfab/live-service-management/gamemanager/tutorials/game-manager-ipbans-range-ban.png?fit=max&auto=format&n=dqv53299jA1M-fNi&q=85&s=80c74e8f043eed7f9933c7bcadfc8036" alt="Game Manager - IP Bans - Range Ban" width="943" height="725" data-path="images/playfab/live-service-management/gamemanager/tutorials/game-manager-ipbans-range-ban.png" />

이렇게 해도 악의적인 행위자는 여전히 차단되지만, 유사한 IP 주소를 가진 다른 무고한 플레이어들이 영향을 받을 수 있습니다. 또한, 특정 난독화되지 않은 IP 주소에 대한 기존 차단은 더 이상 효과적이지 않을 것입니다.


## Related topics

- [Facebook과 Unity를 사용하여 PlayFab 인증 설정하기](/ko/services/playfab/identity/player-identity/platform-specific-authentication/facebook-unity.md)
- [실험](/ko/services/playfab/live-service-management/game-configuration/experiments/index.md)
- [Game Manager의 API 액세스 정책](/ko/services/playfab/live-service-management/gamemanager/api-access-page-doc.md)
- [Game Manager 참조](/ko/services/playfab/live-service-management/gamemanager/reference.md)
- [Game Manager](/ko/services/playfab/live-service-management/gamemanager/index.md)
