OAuth 2.0 개요

*이 콘텐츠는 AI(베타)를 사용해 번역되었으며, 오류가 있을 수 있습니다. 이 페이지를 영어로 보려면 여기를 클릭하세요.

Open Cloud API를 사용하여 Roblox 리소스에 액세스하는 앱을 빌드하거나 승인할 수 있습니다.Open Cloud는 OAuth 2.0을 사용하여 이러한 앱에 대한 인증을 제공합니다.

경험 크리에이터 또는 그룹 소유자로서

다른 사람이 만든 도구를 사용하여 생성 효율성을 향상시킬 수 있습니다.OAuth 2.0 인증 레이어를 통해 제3자 앱에 귀하 또는 그룹의 경험에 액세스할 수 있는 권한을 부여하여 비밀번호와 개인 정보를 제공하지 않고도 액세스할 수 있습니다.특정 Roblox 리소스의 액세스 권한을 선택하고, Roblox는 OAuth 2.0 프레임워크를 사용하여 승인 프로세스를 처리합니다.

앱 개발자로서

Roblox 커뮤니티에서 자신과 다른 사람을 위한 앱을 만들 수 있습니다.OAuth 2.0은 승인 프로세스에 참여하는 역할, 역할이 서로 상호작용하는 프로토콜 및 안전하고 호환되는 앱을 개발하기 위해 따라야 하는 승인 흐름을 정의합니다.

역할

오픈 클라우드 OAuth 2.0 프로토콜에는 다음 역할이 있습니다.권한 흐름에서 서로 상호작용하는 방법을 배우기 전에 특정 역할을 이해하는 것이 유용합니다.

  • 리소스 소유자 : 보호된 리소스에 액세스를 부여할 수 있는 엔터티.예를 들어, 타사 앱이 Open Cloud Web API를 통해 Roblox 리소스에 액세스할 수 있도록 허용하는 크리에이터.

  • 리소스 서버 : 보호된 리소스를 호스팅하고 리소스 소유자의 요청에 응답하는 Roblox 서비스.

  • 클라이언트 : 리소스 소유자를 대신하여 보호된 리소스에 액세스하는 앱(소유자의 승인 있음).

  • 인증 서버 : 리소스 소유자의 정체성을 인증하고 클라이언트에 액세스 토큰을 발행하는 Roblox 서버.

보장 유형

승인 흐름 또는 승인 유형은 역할이 승인 프로세스 중에 수행하는 작업의 단계입니다.Roblox는 OAuth 2.0 인증 코드 흐름과 코드 교환(PKCE) 확장의 증명 키를 지원하며, 클라이언트 비밀을 저장할 수 있는 앱과 불가능한 앱에 대해 다른 구현 요구 사항을 가집니다.

승인 코드 흐름

승인 코드 흐름을 통해 클라이언트는 액세스 토큰과 새로 고침 토큰을 교환하여 다음 단계에서 승인 프로세스를 완료합니다.

  1. 클라이언트가 Roblox 인증 서버에 인증 요청을 보냅니다.

  2. 인증 서버는 리소스 소유자의 정체를 확인합니다.

  3. 권한 서버는 리소스 소유자로부터 특정 Roblox 리소스에 대한 액세스 권한을 받습니다.

  4. 권한 서버는 리소스 소유자를 권한 코드로 클라이언트로 리디렉션하여 다시 가져옵니다.

  5. 클라이언트는 토큰 끝점에서 인증 코드를 사용하여 액세스 토큰을 요청합니다.

  6. 클라이언트는 액세스 토큰, ID 토큰 및 새로 고침 토큰이 포함된 토큰 끝점의 응답을 받습니다.

  7. 클라이언트는 액세스 토큰을 가져온 후 허용된 리소스를 검색합니다.

다음 그림에서는 다음 섹션에서 읽을 권한 코드 흐름의 역할 간 상호 작용을 설명합니다.

PKCE로 인증 코드 흐름

권한 코드 흐름의 PKCE 확장은 권한 코드 누출 위험을 줄이고 사이트 간 요청 위조(CSRF)를 방지하여 사용자가 의도하지 않은 웹 요청을 제출하도록 속이는 공격을 방지합니다.이 흐름은 다음 단계로 권한 부여 프로세스를 완료합니다:

  1. 클라이언트는 모든 승인 요청에 대해 고유하고 암호화된 랜덤 키인 코드 확인자를 생성합니다.

  2. 클라이언트는 코드 검사기에서 SHA-256 해시 알고리즘을 실행하여 코드 챌린지를 생성합니다.

  3. 클라이언트가:

    • 클라이언트 비밀을 사용하는 대신 공용 클라이언트에서 클라이언트 ID와 코드 도전을 인증 요청에 전달합니다.

    • 기밀 클라이언트인 경우, 클라이언트 ID와 비밀을 요청과 함께 코드 챌린지를 추가합니다.

  4. 클라이언트가 Roblox 인증 서버에 인증 요청을 보냅니다.

  5. 인증 서버는 리소스 소유자의 정체를 확인합니다.

  6. 권한 서버는 리소스 소유자로부터 특정 Roblox 리소스에 대한 액세스 권한을 받습니다.

  7. 권한 서버는 리소스 소유자를 권한 코드로 클라이언트로 리디렉션하여 다시 가져옵니다.

  8. 클라이언트에는 권한 코드와 원래 코드 검사기가 토큰 요청에 포함되어 토큰 끝점에 전달됩니다.

  9. 승인 서버는 승인 코드와 연관된 코드 검사기를 확인합니다.

  10. 클라이언트는 액세스 토큰, ID 토큰 및 새로 고침 토큰이 포함된 토큰 끝점의 응답을 받습니다.

  11. 클라이언트는 액세스 토큰을 가져온 후 허용된 리소스를 검색합니다.

OpenID Connect 지원

Roblox는 OpenID Connect(OIDC)를 인증을 위한 OAuth 2.0 프로토콜 위에 있는 식별 계층으로 사용하여 중요한 계정 정보를 보호합니다.OIDC는 응용 프로그램이 사용자의 정체성을 확인하고 사용자 ID, 사용자 이름, 디스플레이 이름 및 프로필 링크와 같은 기본 공개 프로필 정보를 얻을 수 있도록 합니다.

등록 및 구현

승인 코드 흐름을 사용하는 웹 또는 모바일 앱을 구현하려면 다음이 필요합니다.

  1. Register 앱을 Roblox에 등록합니다.이렇게 하면 Roblox에 앱을 등록하고 끝점에 호출하기 위한 클라이언트 ID와 비밀을 얻을 수 있습니다.

  2. 권한 코드 흐름 구현호출해야 하는 OAuth 2.0 끝점의 전체 참조는 인증 참조를 참조하십시오.

  3. 검토 프로세스를 통해 더 많은 사용자 할당량을 얻으세요