인포레터에서 최신 DevOps 트렌드를 격주로 만나보세요!
SCIM 전용 Okta 통합 설치
SCIM (System for Cross-domain Identity Management) 통합은 자동화된 사용자 관리를 가능하게 하며, Teleport에 있는 사용자 계정이 해당 Okta 사용자 프로필과 동기화되도록 보장합니다. 이 통합은 Okta 조직 내의 변경에 따라 Teleport 사용자 계정을 자동으로 생성, 업데이트 및 삭제함으로써 온보딩 및 오프보딩 프로세스를 간소화합니다. SCIM Teleport 통합은 Okta에서 사용자 탈락 시 Teleport에서 즉시 사용자를 잠글 수 있게 하여 모든 진행 중인 사용자 Teleport 세션을 중지하고 보안 및 규정을 유지합니다.
작동 방식
SCIM을 사용한 사용자 프로비저닝(및 비프로비저닝)에는 두 개의 Teleport 구성 요소가 함께 작동해야 합니다:
- 업스트림 Okta 사용자에게 Teleport에 대한 SSO 로그인을 제공하는 SAML 커넥터
- 업스트림 Okta 조직의 변경에 따라 Teleport 사용자 계정을 프로비저닝 및 비프로비저닝 하는 Teleport SCIM 플러그인 통합
이 두 Teleport 구성 요소는 Teleport와 Okta 간의 인터페이스 역할을 하는 Okta SAML 애플리케이션에 의존합니다. 일관성을 위해, 두 Teleport 구성 요소 모두 동일한 Okta 애플리케이션을 사용해야 합니다.
사용자가 Okta 앱에 직접 또는 그룹 구성원 자격을 통해 할당되면, 상응하는 Teleport 사용자 계정이 생성됩니다. 만약 Okta 사용자가 유효한 임시 Teleport SAML 사용자 계정을 이미 가지고 있다면 (즉, SCIM 프로비저닝이 활성화되기 전에 SAML SSO를 통해 클러스터에 로그인한 경우), 임시 계정은 SAML 통합에 의해 자동으로 채택되고 장기적으로 관리되는 SCIM 계정으로 승격됩니다.
Note
현재 SCIM 사용자 프로필 특성은 Teleport 사용자에 저장되지 않지만, 이는 미래에 변경될 수 있습니다.
사용자가 Okta 앱에서 할당 해제되거나 Okta 관리자에 의해 비활성화되면, Teleport는 해당 사용자를 즉시 삭제하고, 기존 세션을 즉시 종료하며 이미 발급된 자격 증명의 재사용을 방지하는 잠금을 생성합니다. 이 잠금은 사용자가 이후 SCIM을 통해 다시 프로비저닝되는 경우 자동으로 해제되지만, 그렇지 않으면 잠금은 영구적이며 삭제해야 제거할 수 있습니다.
Warning
Okta는 사용자가 단순히 일시 중지될 때 SCIM 업데이트를 Teleport에 전송하지 않습니다. Okta는 일시 중지된 사용자가 클러스터에 다시 로그인하는 것을 방지하지만, 기존 세션은 종료되지 않으며, 이전에 발급된 자격 증명은 정상적인 유효 기간 동안 유효합니다.
전제 조건
-
실행 중인 Teleport 클러스터. Teleport를 시작하려면 가입하여 무료 평가판을 이용해 보십시오.
-
tctl
관리자 도구 및tsh
클라이언트 도구.tctl
및tsh
다운로드에 대한 지침은 설치 를 방문하십시오.
1/2단계. Teleport SCIM 통합 설치
Teleport는 두 가지 SCIM 통합 모드를 지원합니다:
- API 토큰 없음 - 사용자의 특성과 역할 매핑은 사용자가 Teleport에 로그인할 때 전파됩니다. 그 부작용으로 사용자 역할은 사용자가 Teleport에 로그인할 때 보이고 업데이트됩니다.
- API 토큰 있음 - 사용자 특성과 역할 매핑은 SCIM 사용자 프로비저닝동안 즉시 전파됩니다.
다음 tctl
명령을 실행하여 SCIM 통합을 설치합니다.
tctl plugins install okta \ --org https://trial-12356.okta.com \ --saml-connector "${SAML_CONNECTOR_NAME}" \ --no-users-sync \ --no-accesslist-sync \ --no-appgroup-sync \ --scim성공적으로 Okta 플러그인 "okta"가 생성되었습니다.
SCIM 기본 URL: https://teleport.example.com:443/v1/webapi/scim/oktaSCIM 사용자 식별자 필드: userNameSCIM 베어러 토큰: 1234567891234567891234567890
tctl plugins install okta \ --org https://trial-12356.okta.com \ --saml-connector "${SAML_CONNECTOR_NAME}" \ --no-users-sync \ --no-accesslist-sync \ --no-appgroup-sync \ --scim--api-token="${OKTA_API_TOKEN}"성공적으로 Okta 플러그인 "okta"가 생성되었습니다.
SCIM 기본 URL: https://teleport.example.com:443/v1/webapi/scim/oktaSCIM 사용자 식별자 필드: userNameSCIM 베어러 토큰: 1234567891234567891234567890
2/2단계. Okta 앱 구성
Teleport SCIM 통합을 활용하려면, Okta 앱에서 SCIM 프로비저닝을 활성화해야 하며, 이는 사용자 관리 변경 사항을 Teleport에 전파합니다. Okta 앱에서 SCIM 프로비저닝을 구성하는 방법에 대한 자세한 지침은 Okta Integration SCIM 프로비저닝 구성 가이드를 참조하십시오.
SCIM 프로비저닝이 활성화되기 전에 Okta 앱에 할당된 사용자가 있는 경우,
그들의 프로비저닝을 명시적으로 트리거해야 합니다. 이는 Okta 앱 할당 페이지에서 사용자 프로비저닝 버튼을 선택하여 수행할 수 있습니다.

Tip
일부 Okta 인스턴스에서는 사용자 프로비저닝 버튼이 누락되어 있는 것을 보았습니다. 그 경우, 사용자 프로비저닝을 강제하는 가장 좋은 방법은 사용자를 앱에서 제거하고 다시 추가하는 것입니다. 프로비저닝/앱으로의 패널에서 강제 동기화를 트리거하는 것도 효과가 있을 수 있지만, 우리는 intermittent한 성공만을 경험했습니다.
Teleport에서 프로필 데이터 숨기기
Okta 사용자 프로필에 Teleport 클러스터와 공유하고 싶지 않은 데이터가 있는 경우,
Okta 애플리케이션 사용자 프로필을 편집하여 Teleport에 전체 사용자 프로필의 부분 집합 및/또는 매핑된 버전을 제공할 수 있습니다.
SCIM 통합 삭제
Teleport UI의 통합 페이지 또는 다음과 같은 tctl을 사용하여 SCIM 통합을 삭제할 수 있습니다:
tctl plugins delete okta
Warning
SCIM 서비스에 의해 프로비저닝된 사용자는 SCIM 플러그인과 함께 자동으로 삭제되지 않습니다.
tctl과 jq를 조합하여 모든 SCIM 프로비저닝 사용자를 반자동으로 삭제할 수 있습니다.
예를 들어:
tctl get users --format=json \ | jq '.[] | select(.metadata.labels["teleport.dev/origin"] == "okta") | .metadata.name' -r \ | xargs -L 1 tctl users rm