# 서비스 액세스 제어

> Restrict direct player access to backend services and only allow updates through trusted server code.

플레이어의 정보를 저장하려면 플레이어에 대한 ID가 필요합니다. UGS(Unity Gaming Services)는 보안과 식별을 확보하기 위해 플레이어가 [인증](/authentication.md)을 받은 경우에 대부분의 기능에 액세스할 수 있도록 지원합니다. 인증 프로세스는 동일한 플레이어가 새 디바이스에서 동일한 제공자를 통해 게임에 로그인하는 경우, 플레이어의 `playerId`가 동일하므로 디바이스 간에 게임 데이터를 동기화할 수 있도록 지원하는 프로세스입니다.

기본적으로 UGS를 사용하면 플레이어 애플리케이션에서 직접 API 엔드포인트를 호출하므로 이를 사용하여 테스트할 수 있습니다. 서버 권한 원칙에서는 플레이어의 직접 액세스를 제한하고 신뢰할 수 있는 서버 코드를 통해서만 업데이트를 허용할 것을 권장합니다. 즉, 플레이어 클라이언트는 프레젠테이션 레이어 역할을 하는 반면, Cloud Code는 무결성을 확인하고 정확한 게임 상태 데이터를 저장합니다.

엔드포인트 레벨에서 플레이어 API 액세스를 비활성화하기 위해 [액세스 제어](/services/access-control.md)를 사용할 수 있습니다. 액세스 제어를 사용하여 Cloud Code 함수를 통해 백엔드 서비스에 대한 호출만 허용할 수 있습니다. 프로젝트의 서비스 자격 증명을 사용하여 서버에 대한 액세스 권한을 부여하는 것도 가능합니다.

자세한 내용은 [액세스 제어 및 Cloud Code를 시작](./modules/how-to-guides/access-control.md)하는 방법에 관한 페이지를 참고하십시오.

## UGS 서비스와 연동##integration-with-ugs-services

Cloud Code는 [Remote Config](/remote-config.md), [Cloud Save](/cloud-save.md) 등의 다른 UGS(Unity Gaming Services)와 원활하게 연동되어 보다 완벽한 백엔드를 구축합니다. 일부 UGS 서비스는 특정 액션이 발생할 때 Triggers 서비스에 전송되는 [트리거 이벤트](/triggers/manage-events/supported-ugs-events.md)를 생성합니다.

서버 권한이 있는 게임을 보유한 경우 클라이언트는 이벤트를 생성할 수 없습니다. 즉, 트리거 등의 이벤트는 항상 서버에서 생성되어 데이터를 신뢰할 수 있다는 의미입니다.

게임에서 트리거와 다른 이벤트를 사용하는 방법에 관한 자세한 내용은 [Triggers](/triggers.md)를 참고하십시오.
