samlSettings 엔터티
이 문서에는 samlSettings
엔터티에 대한 키 및 값이 있는 구성 파일을 사용하여 Tableau Server에서 서버 전체 SAML을 구성하기 위한 템플릿과 참조 자료가 포함되어 있습니다. 이 정보는 서버 전체 SAML 구성에 나와 있는 SAML 구성 단계를 보완합니다.
SAML 구성 템플릿을 만들고 Tableau Server에 적용하려면 다음 단계를 수행합니다.
템플릿과 템플릿 구조에 대해 설명하는 다음 두 섹션을 확인하십시오(템플릿 범주 및 정의 및 samlSettings 구성 템플릿).
템플릿에 나와 있는 JSON 코드를 새 텍스트 파일에 붙여 넣고 .json 확장명을 사용하여 저장합니다.
필요한 위치에 값을 제공하려면 SAML 구성 엔터티 참조를 참조하십시오.
환경과 관련된 선택적 키/값 쌍을 추가합니다. 예를 들어 SAML 인증서 키 파일에 암호가 필요한 경우 tsm configuration set 명령을 사용하여
wgserver.saml.key.passphrase
매개 변수에 암호를 지정해야 합니다.
템플릿 범주 및 정의
템플릿에서는 각 키 값에 대해 자리 표시자를 사용합니다. 이러한 자리 표시자는 다음과 같이 분류됩니다.
필수:
"required"
값이 있는 특성은 구성 명령을 실행하기 전에 유효한 데이터로 바꿔야 합니다. 유효한 값에 대해서는 구성 파일 참조를 확인하십시오.하드 코딩: 앞에 밑줄(_)이 붙은 특성 이름(예:
"_type"
)은 하드 코딩된 값을 유지합니다. 이러한 값을 변경하지 마십시오.기본값:
"required"
가 아닌 값으로 설정된 특성이 기본값입니다. 이러한 특성은 환경에 맞게 변경할 수 있는 필수 특성입니다.빈 집합: 비어 있는 값(
""
)은 그대로 전달하거나, 설치에 사용할 값을 제공할 수 있습니다.
중요: 모든 엔터티 옵션은 대/소문자를 구분합니다.
samlSettings 구성 템플릿
이 코드를 텍스트 파일에 붙여 넣고 아래 참조를 사용하여 환경에 맞게 사용자 지정합니다.
{ "configEntities": { "samlSettings": { "_type": "samlSettingsType", "enabled": true, "returnUrl": "required", "entityId": "required", "certFile": "required", "keyFile": "required", "idpMetadataFile": "required", "idpDomainAttribute": "", "idpUsernameAttribute": "required" } } }
SAML 구성 엔터티 참조
다음 목록에는 "samlSettings"
엔터티 집합과 함께 포함할 수 있는 모든 옵션이 나와 있습니다.
idpMetadataFile
필수 항목입니다. IdP에 의해 생성된 XML 파일의 경로 및 파일 이름입니다. XML 메타데이터에는 사용자 이름 특성(어설션)이 포함되어야 합니다.
서버 전체 SAML 구성에 설명된 단계를 완료한 경우 여기에 입력하는 값은 다음과 같습니다.
/var/opt/tableau/tableau_server/data/saml/<metadata-file.xml>
enabled
true | false
필수 항목입니다. SAML 인증을 사용하도록 설정되어 있는지 여부를 나타냅니다. 다른 필수 SAML 구성 옵션을 설정하기 전에 이 옵션을
true
로 설정하지 마십시오.
returnURL
일반적으로 Tableau Server 사용자가 서버에 액세스하기 위해 브라우저에 입력하는 외부 URL입니다(예:
https://tableau_server.example.com
). 이 값은 IdP를 구성할 때 ACS URL 특성을 만드는 데 사용됩니다.
entityId
필수 항목입니다. 서비스 공급자(이 경우 Tableau Server) 엔터티 ID 값입니다.
IdP에 대한 Tableau Server 구성을 식별합니다.
returnURL
옵션과 동일한 값을 입력하는 것이 좋습니다.
idpUsernameAttribute
필수 항목입니다. IdP 메타데이터에서 사용자 이름 값을 지정하는 데 사용되는 특성을 찾아 해당 특성의 이름을 입력합니다. 기본값은
username
입니다.
certFile
필수 항목입니다. SAML용 x509 인증서(.crt) 파일의 위치 및 파일 이름을 입력합니다. 예를 들면 다음과 같습니다.
/var/opt/tableau/tableau_server/data/saml/<file.crt>
자세한 내용은 SAML 요구 사항 및 서버 전체 SAML 구성을 참조하십시오.
keyFile
필수 항목입니다. 인증서 파일과 함께 사용되는 개인 키(.key) 파일의 위치를 지정합니다. 예를 들면 다음과 같습니다.
/var/opt/tableau/tableau_server/data/saml/<file.key>
참고: 암호가 필요한 RSA PKCS#8 키를 사용하는 경우 configKey 엔터티(구성 파일 예제 참조) 또는 tsm configuration set 명령을 사용하여 암호를 설정해야 합니다. 이러한 방법을 사용하는 암호의 키는
wgserver.saml.key.passphrase
입니다. 값은 Null이 아닌 문자열이어야 합니다.
idpDomainAttribute
LDAP 또는 Active Directory를 사용하는 조직의 경우 이 값은 Tableau Server가 도메인 이름을 결정하기 위해 참조할 SAML 특성을 지정합니다. 예를 들어 IdP가
domain
특성에 도메인 이름을 지정하는 경우 이 값에domain
을 지정합니다. 참고: 사용자가 여러 도메인에서 로그인해야 하는 조직의 경우 이 값이 필요합니다.이 키의 값을 제공하지 않는 경우 사용되는 값은 Tableau Server ID 저장소 설정에 따라 달라집니다.
로컬 ID 저장소의 경우
idpDomainAttribute
값이 무시됩니다.Active Directory 또는 LDAP ID 저장소의 경우 Tableau는
wgserver.domain.default
구성 설정의 FQDN을 사용합니다.wgserver.domain.default
의 값을 구하려면 다음 명령을 실행하면 됩니다.tsm configuration get --key wgserver.domain.default
desktopNoSAML
true | false
선택 사항입니다. 사용자가 Tableau Desktop에서 로그인할 때 SAML 인증을 사용할 수 있도록 설정합니다.
기본적으로 이 옵션은 설정되지 않으며, false로 설정한 것과 동일하게 작동합니다. Tableau 클라이언트 응용 프로그램의 SSO(Single Sign-On)가 사용 중인 IdP에서 작동하지 않는 경우 이 옵션을 true로 설정하여 Tableau Desktop에서 SAML 인증이 사용되지 않게 할 수 있습니다.
appNoSAML
true | false
선택 사항입니다. Tableau Mobile 앱의 이전 버전에서 SAML을 사용하여 로그인할 수 있도록 설정합니다. Tableau Mobile 앱 버전 19.225.1731 이상을 실행하는 기기는 이 옵션을 무시합니다. Tableau Mobile 앱 버전 19.225.1731 이상을 실행하는 기기를 사용할 수 없게 하려면 Tableau Server에서 SAML을 클라이언트 로그인 옵션으로 사용하지 않도록 설정하십시오.
logoutEnabled
true | false
선택 사항입니다. SAML로 로그온한 사용자에 대해 싱글 로그아웃을 사용하도록 설정합니다. 기본값은
true
입니다.IdP 구성 메타데이터에는 POST 바인딩이 있는 싱글 로그아웃 끝점이 포함되어야 합니다.
이 설정은 서버 전체 SAML에만 적용됩니다.
false
로 설정하면 Tableau Server가 싱글 로그아웃을 시도하지 않습니다.
logoutUrl
선택 사항입니다. 사용자가 서버에서 로그아웃한 후 리디렉션되는 URL을 입력합니다. 이 옵션을 설정하려면
logoutEnabled
를true
로 설정해야 합니다.기본적으로 이는 Tableau Server 로그인 페이지입니다. 절대 또는 상대 URL을 지정할 수 있습니다.
maxAuthenticationAge
선택 사항입니다. IdP를 사용하는 사용자의 인증과 AuthNResponse 메시지의 처리 사이에 허용되는 최대 시간(초)을 지정합니다. 기본값은 -1이며, 이는 maxAuthenticationAge가 설정되지 않았거나 기본적으로 무시됨을 의미합니다. 2022년 2월 전에는 기본값이 7200(2시간)이었습니다.
세션 길이를 최적화하려면 IdP에 설정된 것과 동일한 시간 초과 값을 사용합니다.
maxAssertionTime
선택 사항입니다. 만들어진 시점부터 SAML 어설션을 사용할 수 있는 최대 시간(초)을 지정합니다. 기본값은 3000(50분)입니다.
sha256Enabled
true | false
선택 사항입니다. Tableau Server가 IdP에 메시지를 보낼 때 사용할 서명의 유형입니다.
true
로 설정하면 Tableau Server가 SHA 256 서명 알고리즘을 사용하여 메시지에 서명합니다.false
로 설정하면 Tableau Server가 SHA 1을 사용하여 메시지에 서명합니다. 기본값은true
입니다.이 옵션은 Tableau Server가 서명하는 다음 메시지에 대한 서명 알고리즘을 설정합니다.
signRequests
를 사용하도록 설정하면 AuthnRequest 메시지입니다.logoutEnabled
를 사용하도록 설정하면 LogoutRequest 메시지입니다.
signRequests
true | false
선택 사항입니다. Tableau Server가 IdP로 전송되는 AuthnRequests에 서명할지 여부를 지정합니다. 모든 IdP에 서명된 요청이 필요한 것은 아닙니다. SAML 구성 시 가장 안전 옵션을 사용하도록 요청에 서명하는 것이 좋습니다. IdP가 서명된 요청을 수락하는지 여부를 확인하려면 IdP 메타데이터를 검사합니다.
wantAuthnRequestsSigned
가true
로 설정되면 IdP가 서명된 요청을 수락합니다.기본값은
true
입니다. 서명된 요청을 사용하지 않으려면 이 옵션을false
로 설정합니다.
acceptableAuthnContexts
선택 사항입니다.
AuthNContextClassRef
SAML 특성을 설정합니다. 이 선택적 특성은 IdP에서 시작된 흐름에서 특정 인증 "컨텍스트"의 유효성 검사를 적용합니다. 이 특성에는 쉼표로 구분된 값 집합을 설정하십시오. 이 특성이 설정되면 Tableau Server는 SAML 응답에 나열된 값 중 하나 이상이 포함되어 있는지 확인합니다. SAML 응답에 구성된 값 중 하나가 포함되어 있지 않으면 사용자가 IdP를 사용하여 성공적으로 인증되었더라도 인증이 거부됩니다.이 옵션을 비워두면 기본 동작이 실행됩니다. 즉, 성공적으로 인증된 SAML 응답이 있으면 Tableau Server 내에서 사용자에게 세션이 부여됩니다.
iFramedIdpEnabled
true | false
선택 사항입니다. 기본값은
false
입니다. 즉, 사용자가 내장된 뷰에서 로그인 단추를 선택하면 IdP의 로그인 양식이 팝업 창에 열립니다.이 값을 true로 설정하고 이미 로그인한 서버 SAML 사용자가 내장된 뷰가 있는 웹 페이지로 이동하면 사용자가 로그인하지 않도록 뷰를 볼 수 있습니다.
IdP가 iframe 내부의 로그인을 지원하는 경우에만 이 값을 true로 설정할 수 있습니다. iframe 옵션은 팝업을 사용하는 것보다 안전하지 않기 때문에 일부 IdP는 이 기능을 지원하지 않습니다. 대부분의 경우처럼, IdP 로그인 페이지에 클릭재킹 방지 기능이 구현된 경우 iframe에 로그인 페이지를 표시할 수 없고 사용자가 로그인할 수 없습니다.
IdP가 iframe을 통한 로그인을 지원하는 경우에도 명시적으로 사용하도록 설정해야 할 수도 있습니다. 하지만 이 옵션을 사용할 수 있더라도 SAML에 대한 Tableau Server의 클릭재킹 방지 기능이 비활성화되므로 여전히 보안 위험이 존재합니다.
Tableau Server에 구성 파일 전달
구성 템플릿에 포함시킨 각 엔터티에 적절한 값을 지정한 후 다음 명령을 사용하여 .json 파일을 전달하고 설정을 Tableau Server에 적용합니다.
tsm settings import -f path-to-file.json
tsm pending-changes apply
참고 항목
초기 SAML 구성을 완료한 후 tsm authentication mutual-ssl <commands>를 사용하여 추가 값을 설정합니다.
SAML을 구성하는 명령줄에 대한 자세한 내용은 tsm authentication saml <commands>를 참조하십시오.