InfoGrab Docs

SAML Identity Provider 참조 문서

요약

이 페이지는 Teleport에서 사용 가능한 SAML identity provider에 대한 세부 정보를 제공합니다. SAML identity provider는 Teleport 사용자가 SAML Single Sign-On을 지원하는 외부 애플리케이션(Teleport 내부 및 외부 모두)에 인증하고 권한을 부여할 수 있도록 합니다.

이 페이지는 Teleport에서 사용 가능한 SAML identity provider에 대한 세부 정보를 제공합니다.

SAML identity provider란 무엇인가?#

SAML identity provider는 Teleport 사용자가 SAML Single Sign-On을 지원하는 외부 애플리케이션(Teleport 내부 및 외부 모두)에 인증하고 권한을 부여할 수 있도록 합니다.

기본 정의#

다음 정의는 이 페이지 하단에 참조된 OASIS의 SAML 사양 문서에서 발췌하고 요약한 것입니다.

Assertions#

identity provider가 작성한 0개 이상의 statement가 포함된 정보 패키지입니다. Assertions는 일반적으로 주체에 대해 작성되며, Teleport의 경우 Teleport 사용자가 됩니다. 이는 사용자에 대한 사실 진술로 볼 수 있습니다. 예: "사용자 bobeditor, access 역할에 속합니다."

Service Provider#

service provider는 주체에 대한 assertions를 활용하여 접근을 제어하고 맞춤 서비스를 제공할 수 있습니다. 이러한 assertions를 위해 identity provider에 의존합니다. Teleport의 경우, service provider는 일반적으로 SAML Single Sign-On을 허용하는 Slack, Vercel 등과 같은 애플리케이션입니다.

Identity Provider#

주체에 대한 assertions를 작성하는 서비스입니다.

Service/identity provider 주도 SSO#

로그인 프로세스는 service provider 또는 identity provider 중 하나에 의해 시작될 수 있습니다. 이 두 가지를 트리거하는 프로세스는 미묘하게 다릅니다. service provider는 service provider 주도 SSO의 SSO 프로세스를 시작할 책임이 있습니다. identity provider는 identity provider 주도 SSO의 프로세스를 시작할 책임이 있습니다.

엔드포인트#

메타데이터 URL#

https://<proxy-address>/enterprise/saml-idp/metadata

identity provider XML 메타데이터를 가져올 수 있는 URL입니다. Service provider는 service provider와 identity provider 간의 신뢰를 설정하기 위해 이 파일의 정보가 필요합니다.

Single Sign-On Service URL#

https://<proxy-address>/enterprise/saml-idp/sso

Service provider가 identity provider와 assertions를 교환하는 데 사용하는 URL입니다. 이 URL은 다음 바인딩을 지원합니다:

  • HTTP-Redirect
  • HTTP-POST

Identity provider 주도 SSO URL#

https://<proxy-address>/enterprise/saml-idp/login/<sp-name>

이 URL은 identity provider 주도 SSO를 트리거합니다. sp-name은 특정 service provider에 대한 service provider 객체의 metadata.name과 일치합니다.

Teleport SAML service provider 객체#

아래는 service provider 객체입니다. Teleport가 외부 service provider를 신뢰하려면 이러한 객체를 Teleport에 추가해야 합니다.

kind: saml_idp_service_provider
metadata:
  # The friendly name of the service provider. This is used to manage the
  # service provider as well as in identity provider initiated SSO.
  name: saml-service-provider
spec:
  # The entity_descriptor is the service provider XML.
  entity_descriptor: |
    <md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"...
version: v1

Assertions#

현재 Teleport의 SAML identity provider가 제공하는 assertions는 다음과 같습니다.

친숙한 이름 전체 이름 설명 형식
uid urn:oid:0.9.2342.19200300.100.1.1 Teleport의 사용자 ID urn:oasis:names:tc:SAML:2.0:attrname-format:uri
eduPersonAffiliation urn:oid:1.3.6.1.4.1.5923.1.1.1.1 사용자의 Teleport 역할 urn:oasis:names:tc:SAML:2.0:attrname-format:uri

RBAC#

SAML IdP service provider에 대한 접근은 saml_idp_service_provider 리소스를 대상으로 하는 허용/거부 규칙과 역할 app_labelssaml_idp_service_provider 리소스 레이블과 매칭하는 레이블 매처를 사용하여 Teleport 역할로 구성할 수 있습니다.

Teleport에서 SAML IdP Service provider 리소스에 대한 접근을 관리하는 방법을 알아보려면 이 RBAC 가이드를 참조하십시오.

문제 해결#

외부 애플리케이션 로그인 시 Bad Request#

Teleport 서버가 Bad Request를 반환하는 경우, service provider 메타데이터가 Teleport에 제대로 추가되지 않아 Teleport가 service provider를 찾을 수 없는 것일 수 있습니다. Teleport 로그에서 다음 로그 항목을 확인하십시오:

2023-03-01T10:32:34-05:00 INFO [SAMLIDP]   failed to validate request: cannot find service provider https://samltest.id/saml/sp: could not find service provider https://samltest.id/saml/sp pid:31036.1 saml@v0.4.12/identity_provider.go:232

참조#

SAML Identity Provider 참조 문서

원문 보기
요약

이 페이지는 Teleport에서 사용 가능한 SAML identity provider에 대한 세부 정보를 제공합니다. SAML identity provider는 Teleport 사용자가 SAML Single Sign-On을 지원하는 외부 애플리케이션(Teleport 내부 및 외부 모두)에 인증하고 권한을 부여할 수 있도록 합니다.

이 페이지는 Teleport에서 사용 가능한 SAML identity provider에 대한 세부 정보를 제공합니다.

SAML identity provider란 무엇인가?#

SAML identity provider는 Teleport 사용자가 SAML Single Sign-On을 지원하는 외부 애플리케이션(Teleport 내부 및 외부 모두)에 인증하고 권한을 부여할 수 있도록 합니다.

기본 정의#

다음 정의는 이 페이지 하단에 참조된 OASIS의 SAML 사양 문서에서 발췌하고 요약한 것입니다.

Assertions#

identity provider가 작성한 0개 이상의 statement가 포함된 정보 패키지입니다. Assertions는 일반적으로 주체에 대해 작성되며, Teleport의 경우 Teleport 사용자가 됩니다. 이는 사용자에 대한 사실 진술로 볼 수 있습니다. 예: "사용자 bobeditor, access 역할에 속합니다."

Service Provider#

service provider는 주체에 대한 assertions를 활용하여 접근을 제어하고 맞춤 서비스를 제공할 수 있습니다. 이러한 assertions를 위해 identity provider에 의존합니다. Teleport의 경우, service provider는 일반적으로 SAML Single Sign-On을 허용하는 Slack, Vercel 등과 같은 애플리케이션입니다.

Identity Provider#

주체에 대한 assertions를 작성하는 서비스입니다.

Service/identity provider 주도 SSO#

로그인 프로세스는 service provider 또는 identity provider 중 하나에 의해 시작될 수 있습니다. 이 두 가지를 트리거하는 프로세스는 미묘하게 다릅니다. service provider는 service provider 주도 SSO의 SSO 프로세스를 시작할 책임이 있습니다. identity provider는 identity provider 주도 SSO의 프로세스를 시작할 책임이 있습니다.

엔드포인트#

메타데이터 URL#

https://<proxy-address>/enterprise/saml-idp/metadata

identity provider XML 메타데이터를 가져올 수 있는 URL입니다. Service provider는 service provider와 identity provider 간의 신뢰를 설정하기 위해 이 파일의 정보가 필요합니다.

Single Sign-On Service URL#

https://<proxy-address>/enterprise/saml-idp/sso

Service provider가 identity provider와 assertions를 교환하는 데 사용하는 URL입니다. 이 URL은 다음 바인딩을 지원합니다:

  • HTTP-Redirect
  • HTTP-POST

Identity provider 주도 SSO URL#

https://<proxy-address>/enterprise/saml-idp/login/<sp-name>

이 URL은 identity provider 주도 SSO를 트리거합니다. sp-name은 특정 service provider에 대한 service provider 객체의 metadata.name과 일치합니다.

Teleport SAML service provider 객체#

아래는 service provider 객체입니다. Teleport가 외부 service provider를 신뢰하려면 이러한 객체를 Teleport에 추가해야 합니다.

kind: saml_idp_service_provider
metadata:
  # The friendly name of the service provider. This is used to manage the
  # service provider as well as in identity provider initiated SSO.
  name: saml-service-provider
spec:
  # The entity_descriptor is the service provider XML.
  entity_descriptor: |
    <md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"...
version: v1

Assertions#

현재 Teleport의 SAML identity provider가 제공하는 assertions는 다음과 같습니다.

친숙한 이름 전체 이름 설명 형식
uid urn:oid:0.9.2342.19200300.100.1.1 Teleport의 사용자 ID urn:oasis:names:tc:SAML:2.0:attrname-format:uri
eduPersonAffiliation urn:oid:1.3.6.1.4.1.5923.1.1.1.1 사용자의 Teleport 역할 urn:oasis:names:tc:SAML:2.0:attrname-format:uri

RBAC#

SAML IdP service provider에 대한 접근은 saml_idp_service_provider 리소스를 대상으로 하는 허용/거부 규칙과 역할 app_labelssaml_idp_service_provider 리소스 레이블과 매칭하는 레이블 매처를 사용하여 Teleport 역할로 구성할 수 있습니다.

Teleport에서 SAML IdP Service provider 리소스에 대한 접근을 관리하는 방법을 알아보려면 이 RBAC 가이드를 참조하십시오.

문제 해결#

외부 애플리케이션 로그인 시 Bad Request#

Teleport 서버가 Bad Request를 반환하는 경우, service provider 메타데이터가 Teleport에 제대로 추가되지 않아 Teleport가 service provider를 찾을 수 없는 것일 수 있습니다. Teleport 로그에서 다음 로그 항목을 확인하십시오:

2023-03-01T10:32:34-05:00 INFO [SAMLIDP]   failed to validate request: cannot find service provider https://samltest.id/saml/sp: could not find service provider https://samltest.id/saml/sp pid:31036.1 saml@v0.4.12/identity_provider.go:232

참조#