Okta로 Single Sign-On 설정하기

Table of Contents

설정 후 상담원은 Okta 계정으로 Taiwa에 로그인합니다. 앱 통합을 만들 수 있는 Okta 관리자와 Taiwa의 관리자 역할이 필요합니다.

시작하기 전에

  • 조직의 이메일 도메인을 인증해 달라고 Taiwa에 요청하세요. Taiwa는 인증되지 않은 이메일 도메인의 로그인을 거부합니다.
  • 각 상담원은 Okta에 기본 이메일 주소가 있어야 하며, 이 주소는 인증된 도메인 중 하나에 속해야 합니다. Taiwa는 Okta에서 이 이메일 주소가 인증되었다고 확인한 경우에만 사용자를 로그인시킵니다.

1. 앱 통합 만들기

  1. Okta Admin Console에서 Applications > Applications로 이동한 다음 Create App Integration을 선택합니다.
  2. Sign-in method에서 OIDC - OpenID Connect를 선택합니다. Application type에서 Web Application을 선택합니다. Next를 선택합니다.
  3. App integration name에 Taiwa를 입력합니다.
  4. Grant type에서 Authorization Code를 그대로 둡니다.
  5. Sign-in redirect URIs에 https://api.taiwa.cx/v1/auth/sso/callback을 입력합니다. 로그아웃 리디렉션 URI가 있으면 모두 삭제합니다.
  6. Assignments에서 Taiwa를 사용할 수 있는 사람을 선택합니다. Save를 선택합니다.

2. 클라이언트 정보 복사하기

  1. General 탭의 Client Credentials에서 Client ID를 복사합니다.
  2. Client authentication에서 Client secret을 그대로 둡니다. 클라이언트 Secret을 복사합니다.
  3. Require PKCE as additional verification이 선택되어 있으면 선택을 해제합니다. Taiwa는 PKCE를 보내지 않으므로, 선택되어 있으면 Okta가 로그인을 거부합니다.

3. 사용자 할당하기

Assignments 탭에서 Taiwa를 사용하는 사람 또는 그룹을 할당합니다. Okta는 할당되지 않은 사람의 로그인을 거부합니다.

4. 관리 포털에서 Okta 연결하기

  1. 관리 포털에서 SSO 및 프로비저닝을 엽니다.
  2. 발급자 URL에 Okta 도메인을 입력합니다(예: https://acme.okta.com). -admin이 없는 도메인을 사용하세요.
  3. 클라이언트 ID와 클라이언트 시크릿에 Okta에서 복사한 값을 입력합니다.
  4. 연결 저장을 선택합니다.

조직에서 Okta의 사용자 지정 권한 부여 서버를 사용하는 경우, 대신 해당 서버의 발급자를 입력합니다(예: https://acme.okta.com/oauth2/default).

5. 테스트하기

브라우저의 시크릿 창에서 관리 포털에 로그인합니다. SSO로 로그인을 선택하고 조직 ID를 입력한 다음, 할당한 Okta 계정으로 로그인합니다.

SCIM을 사용한 디렉터리 동기화(선택 사항)

Okta OIDC 앱 통합에서는 SCIM을 사용할 수 없습니다. 디렉터리 동기화용으로 두 번째 앱 통합을 만드세요.

  1. 관리 포털의 디렉터리 동기화(SCIM 2.0)에서 SCIM 기본 URL을 복사하고 토큰 생성을 선택합니다. 토큰은 바로 복사하세요.
  2. Okta에서 SCIM 프로비저닝에 관한 Okta 가이드에 따라 두 번째 앱 통합을 만듭니다(예: Taiwa provisioning).
  3. 해당 앱 통합의 General 탭에 있는 App Settings에서 Edit를 선택합니다. Provisioning에서 SCIM을 선택하고 Save를 선택합니다.
  4. Provisioning 탭의 Integration에서 SCIM 기본 URL을 SCIM connector base URL로 입력합니다. Unique identifier field for users에 userName을 입력합니다.
  5. 인증 모드로 HTTP Header를 선택하고, 토큰을 Bearer 토큰으로 입력합니다.
  6. Test Connector Configuration을 선택한 다음 저장합니다.
  7. Create Users, Update User Attributes, Deactivate Users를 켜고, 로그인용 앱 통합과 같은 사람을 할당합니다.

로그인에 실패하는 경우

ID 공급자를 거친 후 로그인에 실패하면, 브라우저에 api.taiwa.cx의 페이지가 표시되고 그 이유가 나옵니다. 이유는 영어로 표시됩니다.

이유 확인할 사항
SSO id_token email is not verified Okta에서 사용자의 기본 이메일을 인증하지 않았습니다.
SSO token exchange failed 클라이언트 시크릿이 잘못되었거나, 앱 통합에서 PKCE가 필수로 설정되어 있습니다.
SSO discovery failed 또는 SSO discovery issuer mismatch 발급자 URL이 -admin과 경로가 없는 Okta 도메인인지, 또는 사용자 지정 권한 부여 서버의 발급자인지 확인하세요.
Email domain is not verified for this tenant 이메일 도메인을 인증해 달라고 Taiwa에 요청하세요.
Okta에서 사용자가 할당되지 않았다고 표시됨 Assignments 탭에서 사용자를 할당하세요.
Was this helpful?