신뢰할 수 있는 인증
Tableau Server 뷰를 웹 페이지에 내장하는 경우 Tableau Server의 허가된 사용자만 이 페이지를 방문해야 합니다. 사용자가 페이지를 방문하면 뷰를 보기 전에 Tableau Server에 로그인하라는 메시지가 표시됩니다. 이미 웹 페이지에서 또는 웹 응용 프로그램 내에서 사용자를 인증하는 방법이 있는 경우 신뢰할 수 있는 인증을 설정하여 로그인 메시지가 표시되지 않도록 하고 사용자가 두 번 로그인할 필요가 없도록 지정할 수 있습니다.
신뢰할 수 있는 인증은 Tableau Server와 여러 웹 서버 간에 신뢰할 수 있는 관계가 설정되었음을 의미합니다. Tableau Server가 신뢰할 수 있는 웹 서버의 요청을 받을 때 웹 서버가 이미 필요한 인증을 처리했다고 가정합니다.
참고: 내장된 뷰에 신뢰할 수 있는 인증을 사용하려면 타사 쿠키를 허용하도록 클라이언트 브라우저를 구성해야 합니다.
신뢰할 수 있는 인증의 작동 방식
아래 다이어그램에서는 클라이언트의 웹 브라우저, 웹 서버 및 Tableau Server 간의 신뢰할 수 있는 인증 작동 방식에 대해 설명합니다.
사용자가 웹 페이지 방문: 사용자가 내장된 Tableau Server 뷰가 있는 웹 페이지를 방문하면 해당 페이지의 HTML에 대한 GET 요청이 웹 서버에 전송됩니다.
웹 서버가 Tableau Server에 POSTS를 보냅니다. 웹 서버가 신뢰할 수 있는 Tableau Server에 POST 요청을 보냅니다. 예를 들어 https://<server_name>
가 아니라 https://<server_name>/trusted
입니다. 이 POST 요청에는 username
매개 변수가 포함되어야 합니다. username
값은 라이선스가 있는 Tableau Server 사용자의 사용자 이름이어야 합니다. Tableau Server에서 다중 사이트를 호스팅하고 뷰가 기본 사이트 이외의 사이트에 있는 경우에는 POST 요청에 target_site
매개 변수도 포함되어야 합니다.
Tableau Server에서 티켓을 만듭니다. Tableau Server가 POST 요청을 보낸 웹 서버의 IP 주소 또는 호스트 이름(위 다이어그램에서 192.168.1.XXX임)을 확인합니다. 웹 서버가 신뢰할 수 있는 호스트로 나열된 경우 Tableau Server는 고유한 문자열 형식의 티켓을 만듭니다. 티켓은 발급되고 나서 3분 내에 교환되어야 합니다. Tableau Server는 해당 티켓의 POST 요청에 응답합니다. 오류가 발생하여 티켓을 만들 수 없는 경우 Tableau Server는 값 -1
로 응답합니다. 서버에는 IPv4 주소가 있어야 합니다. IPv6 주소는 지원되지 않습니다. 자세한 내용은 Tableau Server에서 반환된 티켓 값 -1을 참조하십시오.
웹 서버가 URL을 브라우저에 전달합니다. 웹 서버가 뷰의 URL을 생성하고 해당 페이지의 HTML에 삽입합니다. 티켓이 포함됩니다(예: https://<server_name>/trusted/<unique_ticket>/views/<view_name>
). 웹 서버가 HTML을 다시 클라이언트의 웹 브라우저에 전달합니다.
브라우저가 Tableau Server의 뷰를 요청합니다. 클라이언트 웹 브라우저가 URL(티켓 있음)을 포함한 GET 요청을 Tableau Server에 보냅니다.
Tableau Server가 티켓을 교환합니다. Tableau Server가 티켓을 교환하고, 세션을 만들고, 사용자를 로그인하고, URL에서 티켓을 제거한 다음 내장된 뷰에 대한 최종 URL을 클라이언트에 보냅니다.
사용자는 세션을 통해 서버에 로그온했을 때와 동일한 모든 뷰에 액세스할 수 있습니다. 기본 구성에서 신뢰할 수 있는 티켓으로 인증된 사용자는 제공되는 뷰로만 액세스가 제한됩니다. 서버에서 호스팅되는 통합 문서, 프로젝트 페이지 또는 기타 콘텐츠에 액세스할 수 없습니다.
이 동작을 변경하려면 tsm configuration set 옵션에서 wgserver.unrestricted_ticket
옵션을 참조하십시오.
신뢰할 수 있는 티켓이 저장되는 방법
Tableau Server는 다음 프로세스를 사용하여 Tableau Server 리포지토리에 신뢰할 수 있는 티켓을 저장합니다.
- Tableau Server가 두 부분으로 구성된 티켓을 생성합니다. 첫 번째 부분은 Base64로 인코딩된 고유 ID(UUID)이고 두 번째 부분은 24자의 임의 암호 문자열입니다.
- Tableau Server가 암호 문자열을 해시 처리하고 고유 ID와 함께 리포지토리에 저장합니다. 해시 처리는 암호 문자열을 입력으로 간주하며 고유 문자열을 계산하는 알고리즘을 사용합니다. 이 고유 문자열은 암호 문자열을 무단 사용자로부터 보호합니다.
- Tableau Server가 Base64 UUID 및 원래 24자 임의 문자열을 클라이언트에 보냅니다.
- 클라이언트가 뷰에 대한 요청의 일부로 Base64 UUID 및 원래 24자 암호 문자열을 Tableau Server에 반환합니다.
- Tableau Server는 Base64 UUID가 포함된 문자열 쌍을 찾은 다음 암호 문자열을 해시 처리하여 리포지토리에 저장된 해시와 일치하는지 확인합니다.
이 프로세스는 Tableau Server에 저장된 모든 신뢰할 수 있는 티켓 콘텐츠가 사용자를 가장하거나 인증으로 보호되는 콘텐츠에 액세스하는 데 사용될 수 없도록 합니다. 그러나 신뢰할 수 있는 티켓 전체가 HTTP를 통해 Tableau Server와 클라이언트 간에 전송되므로 이 프로세스에서는 HTTP 데이터의 보안 및 암호화된 전송이 중요합니다. 따라서 SSL/TLS 또는 다른 계층의 네트워크 암호화를 통해서만 신뢰할 수 있는 티켓을 배포하는 것이 좋습니다.