클라이언트 코드의 취약성을 보완하고 데이터 조작을 방지하기 위해 서버 측 로직과 데이터를 안전하게 처리하는 Unity Cloud Code의 중요성을 강조합니다. 🛡️
Unity Registry에서 Cloud Code 및 Deployment 패키지 설치, .NET 환경 설정, C# 모듈 참조 파일 생성 및 솔루션 배포 등 Cloud Code의 상세한 설정 과정을 안내합니다. ⚙️
클라이언트와 서버 간의 '대화'와 같은 통신 모델을 이해하고, Unity에서 바인딩을 생성하여 클라우드 코드 함수를 타입-세이프하게 호출하는 방법을 설명합니다. 💬
플레이어 이름 입력 시 서버 측(Cloud Code)에서 길이 및 특수 문자 유효성 검사를 통해 보안을 강화하고, 클라이언트 측에서도 동일한 로직을 구현하여 즉각적인 피드백과 서버 호출 절감을 달성하는 이중 유효성 검사 전략을 제시합니다. 🔒
Cloud Code 내에서 GameApiClient를 활용하여 Unity Cloud Save와 같은 다른 Unity Gaming Services와 쉽게 연동하는 방법을 소개하며, IExecutionContext를 통해 플레이어 ID 등 중요한 컨텍스트 정보를 활용할 수 있음을 보여줍니다. 💾
SaveData나 GetData와 같은 민감한 데이터 처리 함수는 클라이언트에서 직접 호출할 수 없도록 private으로 유지하고, 유효성 검증된 특정 엔드포인트를 통해서만 간접적으로 접근하도록 설계하는 데이터 저장 보안 원칙을 강조합니다. 🔑
클라우드 코드 로직 변경 시 모듈 재배포, 새로운 함수 추가 시 클라이언트 바인딩 재생성 등 배포 및 바인딩 관리의 중요성을 설명합니다. 🔄
Unity 서비스는 프로젝트 내에서 한 번만 초기화하고, 플레이어 로그인 성공 후 클라우드 코드 호출을 시도하는 것이 바람직하다고 조언합니다. 🚀