**Descope Inbound App은 “OIDC 클라이언트 + 사용자 동의(Consent) + 토큰/세션 정책”을 한 화면에 묶어 제공하는 콘솔**입니다. --- ## 1️⃣ Inbound App 기본 정보 (OIDC Client 메타데이터) **역할: OAuth/OIDC Client 정의** - **Inbound App Name / ID** - OIDC `client_id`에 대응 - **Description** - **Status (Verified / Unverified)** - 사용자에게 신뢰된 앱인지 표시용 👉 Hydra 기준으로 보면 `hydra clients create`의 **client 메타 정보 영역** --- ## 2️⃣ Scopes 관리 (권한 정의) **역할: “이 앱이 무엇을 요구할 수 있는가” 정의** ### Permission Scopes - `full_access` - `profile` - `email` - 각 scope별: - 설명 - Role 연계 여부 - Mandatory 여부 ### User Information Scopes - 사용자 claims에 포함될 정보 정의 - “토큰에 항상 authorization 정보 포함” 옵션 👉 OIDC의 `scope` + `claims` 설계를 **UI로 추상화** --- ## 3️⃣ Consents (사용자 동의) 탭 **역할: Descope 인바운드 앱의 핵심** - 사용자가 로그인 중 보게 되는 화면 - “이 앱이 아래 권한을 요청합니다” - Scope별 동의/거부 - Mandatory scope는 자동 포함 👉 이게 **Hydra의 `consent_challenge`를 처리하는 UI**에 해당 👉 김용연님이 **5174에 구현하라고 들은 바로 그 기능** --- ## 4️⃣ Connection Information (OIDC Endpoint 묶음) **역할: 외부 앱이 실제로 연동할 정보** - **Flow Hosting URL** - Descope가 제공하는 로그인 + consent orchestration URL - **Approved Redirect URIs** - OAuth redirect whitelist - **Client ID / Client Secret** - **Discovery URL** - `/.well-known/openid-configuration` - **Issuer** - **Authorization URL** - **Token URL** - **Audience Whitelist** - **Default Audience 설정** 👉 이 영역은 **OIDC 표준 설정을 전부 노출** 👉 Hydra로 치면: - discovery - issuer - `/oauth2/auth` - `/oauth2/token` --- ## 5️⃣ Session Management (토큰/세션 정책) **역할: 보안 정책 제어** ### Token Format - User JWT 템플릿 - Access Key JWT 템플릿 ### Token Expiration - Refresh Token Timeout (예: 520주) - Session Token Timeout (분 단위) - Access Token Timeout 👉 Hydra + Kratos 설정을 **앱 단위로 override**하는 개념 --- ## 6️⃣ Descope Inbound App이 “한 번에 제공하는 것” 요약 한 문장으로 정리하면: > **Descope Inbound App = > OIDC Client 관리 + Scope 정의 + Consent UI + Token/Session 정책 + Login Flow Hosting** --- ## 7️⃣ 김용연님 Baron SSO(5174)와의 1:1 대응표 | Descope Inbound App | Baron SSO(5174) | | ---------------------- | ------------------------------- | | Inbound App Details | Client 관리 화면 | | Scopes | Client Scope 설정 | | **Consents** | **/consent 페이지 (구현 대상)** | | Connection Information | Hydra Client 설정 | | Session Management | 토큰 정책 설정 | 👉 그래서 결론적으로, - **지금 5174 `/clients` 화면은 Descope의 “Settings 탭 일부”** - **Consents 탭이 빠져 있어서 아직 Descope의 절반만 구현된 상태** --- ## 최종 정리 한 줄 > **Descope Inbound App은 “OIDC Client + 사용자 동의 + 보안 정책”을 묶은 올인원 인바운드 애플리케이션 콘솔이고, > 5174는 그걸 Hydra 기반으로 우리가 직접 재구현하는 중이다.**