인증
인증
Frame.io V4 API는 Adobe의 OAuth 2.0 ID 플랫폼인 Adobe IMS(Identity Management Service)를 사용합니다. 인증에는 두 가지 범주가 있습니다.
기술 또는 서비스 계정 사용자가 사용자 개입 없이 작업을 수행할 수 있도록 합니다. Adobe Admin Console을 통해 관리되는 Frame.io V4 계정에서만 사용할 수 있습니다.
토큰을 소유한 사용자로 작동합니다. Adobe Admin Console을 통해 관리되는 모든 Frame.io V4 계정과 Adobe Authentication으로 전환된 Frame 관리 계정에서 사용할 수 있습니다.
SDK 인증 안내서
Frame.io SDK는 인증 URL, 토큰 교환, 자동 새로 고침, 해지 등 전체 OAuth 수명 주기를 처리합니다. 시작할 언어를 선택하세요.
동기 및 비동기 지원과 함께 ServerToServerAuth, WebAppAuth, SPAAuth를 제공합니다.
Node.js 및 브라우저 환경을 위한 ServerToServerAuth, WebAppAuth, SPAAuth, NativeApp 인증을 제공합니다.
백엔드 서비스나 자동화를 작성하는 경우 서버 간 인증으로 시작합니다. 사용자가 로그인하는 앱의 경우 웹 앱(클라이언트 시크릿을 저장할 수 있는 경우) 또는 SPA(저장할 수 없는 경우)를 선택하세요.
사용자 인증
사용자 인증 자격 증명은 Adobe Developer Console에서 만듭니다. Adobe는 세 가지 자격 증명 유형을 지원합니다. 애플리케이션 아키텍처에 맞는 것을 선택하세요.
클라이언트 시크릿(Flask, Django, FastAPI, Express 등)을 안전하게 저장할 수 있는 서버 측 애플리케이션용입니다.
클라이언트 시크릿을 저장할 수 없는 브라우저 기반 애플리케이션, CLI, 또는 데스크톱 앱용입니다. PKCE를 사용합니다.
사용자 지정 URI 체계 리디렉션을 사용하는 네이티브 모바일 또는 데스크톱 앱용입니다.
Frame.io Python SDK에는 Native App 자격 증명 클래스가 포함되어 있지 않습니다. Python에는 사용자 지정 URI 체계 핸들러를 등록하는 표준 방법이 없기 때문입니다. 대신 로컬 콜백 서버와 함께 Web App을 사용하세요. TypeScript SDK는 세 가지 자격 증명 유형을 모두 지원합니다.
서버 간 인증
서버 간 인증을 사용하면 애플리케이션이 서비스 계정 사용자로서 작동하므로 사용자 개입이 필요 없습니다. 앱이 클라이언트 자격 증명으로 인증하고 액세스 토큰을 직접 받습니다. 서비스 계정 작업은 Frame.io에서 서비스 계정 이름으로 표시됩니다. 서비스 계정 액세스는 Adobe Admin Console 및 Developer Console을 통해 관리됩니다. 현재 서비스 계정 이름은 수정할 수 없습니다. 구현에 대한 자세한 내용은 위의 SDK별 가이드를 확인하세요.
서비스 계정 설정에 대한 자세한 내용은 Frame.io 서버 간 지원을 사용하여 설정 자동화를 확인하세요.
Adobe IMS 인증 작동 방식
Adobe IMS(Identity Management Service)는 인증을 지원하는 Adobe의 OAuth 2.0 기반 ID 관리 기능입니다. 액세스 토큰을 생성하려면 두 단계가 필요합니다.
토큰 교환
다음으로, 액세스 토큰을 가져옵니다. 위 단계에서는 이 단계에서 필요한 코드를 응답 본문에 반환합니다. 액세스할 정확한 엔드포인트와 사용할 매개변수를 여기에서 확인하세요.
위 단계는 세 가지 유형의 앱 자격 증명 모두에 필요합니다. 토큰을 가져오기 위해 IMS 엔드포인트 /authorize/v2 및 /token/v3에 액세스하는 방식에는 차이가 있습니다. 액세스 토큰을 받은 후에는 이를 사용하여 Frame.io V4 API와 상호 작용할 수 있습니다.
서버 간 인증의 경우 사용자 권한 부여 단계가 없습니다 — 애플리케이션은 클라이언트 자격 증명을 직접 사용하여 client_credentials 권한 부여를 통해 액세스 토큰을 가져옵니다.
액세스 토큰 사용
액세스 토큰을 발급받으면 모든 API 요청의 Authorization 헤더에 이를 포함하세요.
Frame.io SDK가 이를 대신 처리해 줍니다 — 클라이언트를 생성할 때 토큰(또는 토큰을 제공하는 콜러블)을 전달하기만 하면 됩니다.
토큰 TTL
액세스 토큰은 수명이 짧으며, 일반적으로 1시간 후 만료됩니다. 사용자 인증 흐름(Web App, SPA, Native App)의 경우, Adobe IMS는 사용자가 다시 로그인하지 않고도 새 액세스 토큰을 얻을 수 있는 새로 고침 토큰을 반환합니다. 새로 고침 토큰은 수명이 더 길지만 결국 만료됩니다.
서버 간 인증의 경우 새로 고침 토큰이 없습니다. 클라이언트 자격 증명 자체는 (수동으로 교체하지 않는 한) 만료되지 않으므로, 애플리케이션은 항상 새 액세스 토큰을 요청할 수 있습니다.
Frame.io SDK는 토큰 새로 고침을 자동으로 처리합니다 — 자세한 내용은 SDK별 가이드를 확인하세요.
범위
Adobe Developer Console에서 자격 증명을 생성할 때, 애플리케이션이 액세스할 수 있는 대상을 결정하는 OAuth 범위를 구성하게 됩니다. Frame.io SDK는 다음 기본 범위를 사용합니다.
offline_access 범위는 사용자 인증 흐름에서 새로 고침 토큰을 수신하는 데 필요합니다. 그것이 없으면 액세스 토큰만 받게 되며, 만료되면 사용자가 다시 인증해야 합니다.
이전 개발자 토큰
아직 Adobe Admin Console을 통해 관리되지 않는 V4 마이그레이션 계정의 경우 Frame.io 개발자 사이트에서 관리되는 이전 개발자 토큰을 계속 사용할 수 있습니다. 토큰을 SDK에 직접 전달하세요.
V4 API와 함께 이전 개발자 토큰을 사용하는 경우 모든 API 요청에 값이 true인 x-frameio-legacy-token-auth 헤더를 추가해야 합니다. SDK를 사용하는 경우 클라이언트의 요청 옵션을 통해 설정하세요.
이전 개발자 토큰은 만료되지 않지만 전환용 메커니즘입니다. 새로운 통합 및 프로덕션 워크로드의 경우 아래의 OAuth 2.0 흐름 중 하나를 사용하는 것이 좋습니다. 자세한 내용은 마이그레이션 가이드를 참조하세요.
Frame.io 이전에서 V4로 마이그레이션하는 엔터프라이즈 고객인 경우 CSM에 문의하여 이전 개발자 토큰 및 V4 설정에 대한 도움을 받으세요.
이전 토큰에서 Adobe IMS 인증으로 전환하는 방법에 대한 자세한 내용은 마이그레이션 가이드를 참조하세요.