• release

Logto 제품 업데이트 (2024년 7월)

지난 달 우리는 아주 많은 새로운 기능과 개선 사항을 소개했습니다. 또한 준수와 관련된 중요한 소식도 공유하려고 합니다.

Gao
Gao
Founder

준수

우리는 SOC 2 유형 I을 공식적으로 준수하게 되었습니다! 🎉 유형 II 감사가 곧 다가옵니다.

SOC 2 유형 I

조직을 위한 Just-in-Time 프로비저닝

이 기능은 사용자가 일부 인증 방법을 통해 처음으로 로그인할 때 자동으로 조직에 참여하고 역할을 부여받을 수 있도록 합니다. Just-in-Time 프로비저닝을 위해 충족해야 할 요구 사항을 설정할 수 있습니다.

이 기능을 사용하려면 조직 설정 페이지로 이동하여 "Just-in-Time 프로비저닝" 섹션을 찾으세요. 이 기능을 구성하는 라우트를 통해 관리 API도 사용할 수 있습니다. 자세한 내용은 Just-in-Time 프로비저닝을 참조하세요.

조직 JIT 프로비저닝

이메일 도메인

새로운 사용자는 다음 조건을 만족했을 때 Just-in-Time 프로비저닝이 설정된 조직에 자동으로 가입됩니다:

  • 인증된 이메일 주소로 가입하거나;
  • 인증된 이메일 주소로 소셜 로그인 사용.

이것은 동일한 이메일 도메인이 설정된 조직에 적용됩니다.

확장하려면 클릭하세요

이 기능을 활성화하려면 관리 API 또는 Logto 콘솔을 통해 이메일 도메인을 추가할 수 있습니다:

  • 관리 API에 다음과 같은 새로운 엔드포인트를 추가했습니다:
    • GET /organizations/{organizationId}/jit/email-domains
    • POST /organizations/{organizationId}/jit/email-domains
    • PUT /organizations/{organizationId}/jit/email-domains
    • DELETE /organizations/{organizationId}/jit/email-domains/{emailDomain}
  • Logto 콘솔에서 조직 세부 정보 페이지 -> "Just-in-Time 프로비저닝" 섹션에서 이메일 도메인을 관리할 수 있습니다.

SSO 커넥터

새 사용자 또는 기존 사용자가 최초로 엔터프라이즈 SSO를 통해 로그인할 때, 그들이 사용하는 커넥터에 대해 Just-in-Time 프로비저닝이 설정된 조직에 자동으로 가입됩니다.

확장하려면 클릭하세요

이 기능을 활성화하려면 관리 API 또는 Logto 콘솔을 통해 SSO 커넥터를 추가할 수 있습니다:

  • 관리 API에 다음과 같은 새로운 엔드포인트를 추가했습니다:
    • GET /organizations/{organizationId}/jit/sso-connectors
    • POST /organizations/{organizationId}/jit/sso-connectors
    • PUT /organizations/{organizationId}/jit/sso-connectors
    • DELETE /organizations/{organizationId}/jit/sso-connectors/{ssoConnectorId}
  • Logto 콘솔에서 조직 세부 정보 페이지 -> "Just-in-Time 프로비저닝" 섹션에서 SSO 커넥터를 관리할 수 있습니다.

기본 조직 역할

이 기능을 통해 프로비저닝된 사용자를 위한 기본 역할을 구성할 수 있습니다. 기본 역할은 사용자가 프로비저닝될 때 할당됩니다.

확장하려면 클릭하세요

이 기능을 활성화하려면 관리 API 또는 Logto 콘솔을 통해 기본 역할을 설정할 수 있습니다:

  • 관리 API에 다음과 같은 새로운 엔드포인트를 추가했습니다:
    • GET /organizations/{organizationId}/jit/roles
    • POST /organizations/{organizationId}/jit/roles
    • PUT /organizations/{organizationId}/jit/roles
    • DELETE /organizations/{organizationId}/jit/roles/{organizationRoleId}
  • Logto 콘솔에서 조직 세부 정보 페이지 -> "Just-in-Time 프로비저닝" 섹션에서 기본 역할을 관리할 수 있습니다.

조직을 위한 머신-투-머신 애플리케이션

이 기능은 머신-투-머신 애플리케이션을 조직에 연관시키고 조직 역할을 부여할 수 있도록 합니다.

OpenID Connect 부여

이제 client_credentials 부여 유형이 조직에 지원됩니다. 이 부여 유형을 사용하여 조직에 대한 액세스 토큰을 얻을 수 있습니다.

콘솔 업데이트 확장하기
  • 조직 역할에 새로운 "머신-투-머신" 유형을 추가했습니다. 모든 기존 역할은 이제 "사용자" 유형입니다.
  • 조직 세부 정보 페이지의 머신-투-머신 애플리케이션 섹션에서 머신-투-머신 애플리케이션을 관리할 수 있습니다.
  • 머신-투-머신 애플리케이션 세부 사항 페이지에서 연관된 조직을 볼 수 있습니다.
관리 API 업데이트 확장하기

관리 API에 새로운 엔드포인트 세트를 추가했습니다:

  • /api/organizations/{id}/applications에서 머신-투-머신 애플리케이션을 관리할 수 있습니다.
  • /api/organizations/{id}/applications/{applicationId}에서 조직 내 특정 머신-투-머신 애플리케이션을 관리할 수 있습니다.
  • /api/applications/{id}/organizations에서 머신-투-머신 애플리케이션의 연관된 조직을 확인할 수 있습니다.

Swagger (OpenAPI) 개선사항

OpenAPI 응답에서 관리 API에 대한 operationId 생성

명세서에 따르면:

operationId는 지정된 경우, API에 설명된 모든 작업 간에 고유해야 하는 선택적 고유 문자열입니다.

이것은 자동으로 생성된 이름이 아닌, 더 의미 있는 함수 이름을 생성하므로 다른 언어로 클라이언트 SDK를 만들 때 크게 도움이 됩니다. 예를 들어 다음과 같은 코드가 생성됩니다:

GET /api/swagger.json 엔드포인트에서 반환된 OpenAPI 스키마 수정

  • : 문자는 organizationId:root와 같은 매개 변수 이름에서 유효하지 않습니다. 이러한 문자를 -로 대체했습니다.
  • /api/.well-known/endpoints/{tenantId} 경로의 tenantId 매개 변수가 생성된 OpenAPI 명세 문서에서 누락되어 유효성 검사 오류가 발생했습니다. 이 문제가 수정되었습니다.

백채널 로그아웃 지원

OpenID Connect Back-Channel Logout 1.0의 지원이 가능해졌습니다.

백채널 로그아웃을 등록하려면 Logto 콘솔의 애플리케이션 세부 정보 페이지에서 "백채널 로그아웃" 섹션을 찾아 RP의 백채널 로그아웃 URL을 입력하고 "저장"을 클릭하세요.

세션 요구 사항을 백채널 로그아웃에 대해 활성화할 수도 있습니다. 활성화되면 Logto는 로그아웃 토큰에 sid 클레임을 포함할 것입니다.

프로그래밍 방식의 등록을 위해 애플리케이션의 oidcClientMetadata 객체에서 backchannelLogoutUribackchannelLogoutSessionRequired 속성을 설정할 수 있습니다.

로그인 경험

Google One Tap 지원

Google을 소셜 커넥터로 추가했을 때, 이제 Google One Tap을 활성화하여 Google 계정을 사용하는 사용자들에게 매끄러운 로그인 경험을 제공할 수 있습니다.

Logto 콘솔의 Google 커넥터 설정으로 이동하여 "Google One Tap" 옵션을 켜세요.

Google One Tap

Google One Tap에 대해 더 알아보려면 Google One Tap 활성화를 참조하세요.

로그인 중 수동 계정 연결 생략 허용

이 구성을 콘솔 -> 로그인 경험 -> 가입 및 로그인 -> 소셜 로그인 -> 자동 계정 연결에서 찾을 수 있습니다.

활성화되면, 사용자가 시스템에 새로운 소셜 아이덴티티로 로그인하고 동일한 식별자(예: 이메일)를 가진 기존 계정이 하나만 있을 때, Logto는 사용자에게 계정 연결을 묻는 대신 자동으로 소셜 아이덴티티와 연결합니다.

로그인 경험에 대한 이용약관 동의 설정

이제 로그인 경험을 위한 이용 약관 동의 정책을 설정할 수 있는 새로운 구성이 추가되었습니다:

  • 자동: 사용자가 서비스를 계속 사용함으로써 자동으로 약관에 동의합니다.
  • 수동(등록 시만): 사용자가 등록 중에 체크박스를 통해 이용 약관에 동의해야 하며, 로그인할 때는 동의할 필요가 없습니다.
  • 수동: 사용자가 등록 또는 로그인 시 체크박스를 통해 이용 약관에 동의해야 합니다.

콘솔 개선사항

  • Ruby 및 Chrome 확장 프로그램 가이드가 추가되었습니다.
  • 애플리케이션 세부 정보 양식에 OIDC 발행자 엔드포인트가 표시됩니다.
  • 애플리케이션 가이드가 더 나은 개발자 경험을 제공하도록 재구성되었습니다.
  • 이제 사용자 설정 페이지에서 사용자의 profile 속성을 보고 업데이트할 수 있습니다.
  • 머신-투-머신 애플리케이션 통합 사용자 경험이 개선되었습니다.
  • 삭제된 애플리케이션과 연관된 로그가 있을 때 감사 로그에서 오류 알림이 나타나는 회귀 버그가 수정되었습니다.

기타 개선사항

  • 사용자 정의 JWT 사용자 컨텍스트에 hasPassword를 추가했습니다.
  • 커넥터: 이제 Google 및 Azure AD 커넥터가 사용자 지정 prompt를 지원합니다.
  • 조직별 다중 요소 인증(MFA) 요구 사항 지원:
    • 이제 조직은 구성원에게 다중 요소 인증(MFA)을 설정하도록 요구할 수 있습니다. 만약 어떤 조직이 이 요구 사항을 가지고 있고 구성원이 MFA를 설정하지 않은 경우, 그 구성원은 조직의 액세스 토큰을 가져올 수 없습니다.
  • 실시간 미리보기에 로그인한 후 개발자 패널을 사용할 수 있습니다.
  • GET /api/organizations/{id}/users/{userId}/roles에 대한 페이지 네이션이 선택 사항이 되었습니다. 만약 pagelimit 쿼리 매개 변수를 제공하지 않으면, API는 모든 역할을 반환합니다.
  • User.Deleted 웹훅 이벤트에 사용자 세부 정보 데이터 페이로드가 추가되었습니다.