Tableau Server에서 Azure AD IdP로 SAML 구성
Azure AD를 SAML ID 공급자(IdP)로 구성하고 Tableau Server를 지원되는 SSO(Single Sign-On) 응용 프로그램에 추가할 수 있습니다. SAML 및 Tableau Server에 Azure AD를 통합하면 사용자가 표준 네트워크 자격 증명을 사용하여 Tableau Server에 로그인할 수 있습니다.
시작하기 전에: 필수 요건
Azure AD로 Tableau Server 및 SAML을 구성하려면 환경에 다음이 필요합니다.
SHA-2(256 또는 512비트) 암호화를 사용하여 암호화되고 다음 섹션에 나열된 추가 요구 사항을 충족하는 SSL 인증서
사용자가 기본 도메인이 아닌 도메인에서 로그인하는 경우, SAML 요구 사항 및 외부 ID 저장소가 있는 배포의 사용자 관리를 검토하여 나중에 로그인 문제를 방지하기 위해 도메인 특성 값이 설정 및 정의되어 있는지 확인합니다.
1단계: Azure AD에 대한 SSL 연결 확인
Azure AD에는 SSL 연결이 필요합니다. 아직 완료하지 않은 경우 위에 명시된 요구 사항을 충족하는 인증서를 사용하여 Tableau Server에서 들어오고 나가는 외부 HTTP 트래픽에 대해 SSL 구성의 단계를 완료합니다.
또는 SSL이 종료(일반적으로 SSL 오프로딩이라고 함)되는 위치에서 역방향 프록시 또는 로드 부하 분산 장치가 작동하도록 Tableau Server를 구성한 경우 외부 SSL을 구성할 필요가 없습니다.
조직에서 Azure AD 앱 프록시를 사용하는 경우 아래의 Azure AD 앱 프록시 섹션을 참조하십시오.
2단계: Tableau Server에서 SAML 구성
Tableau Server 메타데이터를 XML 파일로 다운로드하여 서버 전체 SAML 구성의 단계를 완료합니다. 그런 다음 이 위치로 돌아와 다음 섹션을 계속합니다.
3단계: Azure AD 클레임 규칙 구성
매핑은 대/소문자를 구분하며 맞춤법이 정확해야 하므로 입력을 다시 한 번 확인하십시오. 이 표에서는 일반적인 특성과 클레임 매핑을 보여 줍니다. 사용 중인 특정 Azure AD 구성의 특성을 확인해야 합니다.
LDAP 특성 | 나가는 클레임 유형 |
---|---|
onpremisessamaccountname | username |
Given-Name | firstName 참고: 선택 사항입니다. |
Surname | lastName 참고: 선택 사항입니다. |
netbiosname | domain 참고: 기본 도메인이 아닌 도메인에서 사용자가 로그인하도록 하는 경우에만 필요합니다. |
일부 조직에서는 SAML IdP로서의 Azure AD가 Tableau Server의 ID 저장소로 Active Directory와 함께 사용됩니다. 이 경우 username
은 일반적으로 sAMAccountName 이름입니다. username
특성에 매핑할 Azure AD 내의 sAMAccountName 특성을 식별하는 것에 대해서는 Microsoft 설명서를 참조하십시오.
4단계: Tableau Server에 Azure AD 메타데이터 제공
TSM 웹 UI로 돌아가서 구성 > 사용자 ID 및 액세스 > 인증 방법 탭으로 이동합니다.
SAML 구성 패널의 4단계에서, Azure AD에서 내보낸 XML 파일의 위치를 입력하고 업로드를 선택합니다.
서버 전체 SAML 구성에 지정된 대로 나머지 단계를 완료합니다(어설션 일치 및 클라이언트 유형 액세스 권한 지정). 변경 내용 저장하고 적용합니다.
SAML을 처음 구성하는 것이 아닌 경우 다음 단계를 수행합니다.
Tableau Server를 중지하고, TSM CLI를 열고, 다음 명령을 실행합니다.
tsm configuration set -k wgserver.saml.sha256 -v true
tsm authentication saml configure -a -1
변경 내용을 적용합니다.
tsm pending-changes apply
보류 중인 변경 내용을 적용하려면 서버를 다시 시작해야 하는 경우
pending-changes apply
명령은 서버가 다시 시작됨을 알리는 메시지를 표시합니다. 서버가 중지된 경우에도 이 메시지가 표시되지만 이 경우 다시 시작은 없습니다.--ignore-prompt
옵션을 사용하여 이 메시지를 표시하지 않을 수 있지만 다시 시작 동작은 변경되지 않습니다. 변경 내용을 적용해도 다시 시작할 필요가 없는 경우 메시지 없이 변경 내용이 적용됩니다. 자세한 내용은 tsm pending-changes apply를 참조하십시오.
Tableau Server 앞에 Azure AD 앱 프록시를 실행하고 SAML을 사용하도록 설정한 경우 Azure AD 앱 프록시에 대한 추가 구성을 해야 합니다.
Tableau Server는 SAML을 사용하도록 설정한 경우 한 URL의 트래픽만 허용할 수 있습니다. 그러나 기본적으로 Azure AD 앱 프록시는 외부 URL과 내부 URL을 설정합니다.
이 두 값을 모두 사용자 지정 도메인에서 동일한 URL로 설정해야 합니다. 자세한 내용은 Microsoft 설명서 Azure AD 응용 프로그램 프록시로 사용자 지정 도메인 구성(영문)(링크가 새 창에서 열림)을 참조하십시오.
문제 해결
Azure AD 앱 프록시
경우에 따라 뷰에 대한 링크가 내부적으로 렌더링되지만 트래픽이 Azure AD 앱 프록시를 통과할 때 외부적으로 실패합니다. 이 문제는 URL에 파운드 기호(#)가 있고 사용자가 브라우저를 사용하여 링크에 액세스하는 경우 발생합니다. Tableau Mobile 앱은 파운드 기호가 있는 URL에 액세스할 수 있습니다.
사용자 세션 시간 초과가 무시되는 것으로 보임
Tableau Server를 SAML용으로 구성한 경우 IdP 최대 인증 설정이 Tableau의 최대 인증 수명 설정보다 큰 값으로 설정되기 때문에 사용자가 로그인 오류를 경험할 수 있습니다. 이 문제를 해결하려면 tsm configuration set 옵션 wgserver.saml.forceauthn
을 사용하여 Tableau가 인증 요청을 리디렉션할 때마다 사용자의 IdP 세션이 활성 상태인 경우에도 사용자를 다시 인증하도록 IdP에 요구할 수 있습니다.
예를 들어 Azure AD 설정 maxInactiveTime
이 Tableau Server의 설정 maxAuthenticationAge
보다 큰 경우 Tableau는 인증 요청을 IdP로 리디렉션하면 IdP는 Tableau에 사용자가 이미 인증되었다는 어설션을 보냅니다. 그러나 사용자가 Tableau Server의 maxAuthenticationAge
범위 밖에서 인증되었기 때문에 Tableau는 사용자 인증을 거부합니다. 이와 같은 경우 다음 중 하나 이상을 수행할 수 있습니다.
wgserver.saml.forceauthn
옵션을 사용하도록 설정하여 IdP에 Tableau가 인증 요청을 리디렉션할 때마다 사용자를 다시 인증하도록 요구합니다. 자세한 내용은 wgserver.saml.forceauthn을 참조하십시오.- Tableau Server의
maxAuthenticationAge
설정을 늘립니다. 자세한 내용은 tsm authentication 항목에서 “a, --max-auth-age <max-auth-age>”를 참조하십시오.
AppID 불일치
vizportal.log 파일을 검토하는 동안 “The intended audience’ t match the recipient” 오류가 표시될 수 있습니다.
이 문제를 해결하려면 appID가 전송된 것과 일치하는지 확인하십시오. Azure에서는 사용 중인 앱에서 응용 프로그램 ID를 사용할 때 “SPN”이 appID에 자동으로 추가됩니다. Tableau SAML 설정에서 “SPN:” 접두사를 응용 프로그램 ID에 추가하여 이 값을 변경할 수 있습니다.
예: SPN:myazureappid1234