Amazon Athena에서 사용자 고유의 ID 공급자 사용

Tableau 2023.2부터 OAuth 2.0/OIDC를 사용하여 외부 ID 공급자의 ID를 Amazon Athena에 페더레이션할 수 있습니다.

ID 공급자에 따라 통합을 구성하는 데 여러 단계가 필요할 수 있습니다. Tableau는 Tableau 제품 구성 방법에 대한 세부적인 지침만 제공합니다. ID 공급자(예: Okta)를 구성하는 방법에 대한 지침은 해당 제품의 도움말 및 자습서를 참조하십시오. 이 문서에서 다루는 구성 프로세스는 개괄적인 수준의 정보입니다.

참고: Tableau 및 Salesforce 콘텐츠 외부의 단계와 링크는 업데이트되지 않거나 정확하지 않을 수 있습니다.

IDP(ID 공급자) 구성

  1. Tableau Desktop 및 Tableau Server용 OAuth 클라이언트를 IDP에서 만듭니다. Desktop 클라이언트는 PKCE(링크가 새 창에서 열림)를 사용하도록 설정하고 http://localhost 리디렉션을 사용합니다.

  2. 권한 부여에 사용할 필수 사용자 지정 클레임을 역할에 추가합니다. 클레임 및 범위에 대한 자세한 내용은 범위 대비 클레임(링크가 새 창에서 열림)을 참조하십시오.

  3. Tableau OAuth 구성 파일을 만듭니다. 이를 수행하는 방법에 대한 자세한 내용은 githubOAuth 구성 및 사용(링크가 새 창에서 열림)여기에서 예를 참조하십시오. Tableau OAuth 구성 ID 앞에 "custom_"을 붙여야 합니다.

  4. 위 링크에 연결된 OAuth 구성 항목에서 설명한 대로 Tableau Desktop 컴퓨터, Tableau Server 및 Tableau Cloud 사이트에 Tableau OAuth 구성 파일을 설치합니다.

AWS에서 IDP 구성

  1. IDP 엔터티를 만듭니다. Amazon 설명서 웹 아이덴티티 페더레이션OIDC ID 공급자 생성을 참조하십시오.
  2. IDP는 Tableau의 드라이버 플러그인과 작동하는 방식으로 Athena에 페더레이션하도록 구성되어야 합니다. 다음 공급자 정보는 Tableau Server 및 Tableau Desktop 흐름에 모두 사용됩니다.
    AwsCredentialsProviderClas=com.simba.athena.iamsupport.plugin.JwtCredentialsProvider
    role_session_name=AthenaJWT

  3. IDP에 대한 역할과 정책을 구체적으로 만듭니다. AWS 설명서에서 OIDC를 위한 역할 생성을 참조하십시오.

Athena에 대한 역할 구성

Athena에 필요한 정책을 연결할 수 있습니다. 이를 수행하는 방법은 여러 가지가 있습니다. 한 가지 방법은 사용자 지정 클레임을 사용하는 것입니다. openID 토큰의 사용자 지정 클레임을 사용하여 역할에 권한을 부여할 수 있습니다. 이러한 역할에는 다른 리소스에 대한 액세스 권한이 부여됩니다. 자세한 내용은 다음을 참조하십시오.

Athena에 연결

사용자는 가정할 AWS 역할 ARN(Amazon 리소스 이름)을 지정한 다음 OAuth 공급자 아래에서 이전에 설치한 OAuth 구성을 선택해야 합니다. 참고로, 구성을 선택하는 드롭다운 메뉴는 선택할 수 있는 구성이 여러 개 있는 경우에만 나타납니다.

올바로 구성되면 사용자는 Tableau에 대해 토큰을 인증하고 권한을 부여할 수 있도록 IDP로 리디렉션됩니다. openid 및 새로 고침 토큰이 Tableau에 수신됩니다. AWS는 IDP에서 토큰과 서명을 검증하고, 토큰에서 클레임을 추출하고, 클레임과 IAM 역할의 매핑을 조회하고, Tableau가 사용자를 대신하여 역할을 맡는 것을 허용하거나 차단할 수 있습니다.

예: AssumeRoleWithWebIdentity

Athena에 로그인 창

토큰

기본적으로 Athena OAuth IAM은 ID 토큰을 드라이버에 전달합니다. Tableau Bridge를 사용하는 고객을 포함하여 온프레미스 고객의 경우 TDC 파일을 대신 사용하여 액세스 토큰을 전달할 수 있습니다.

<connection-customization class='athena' enabled='true' version='10.0'>
    <vendor name='athena' />
    <driver name='athena' />
    <customizations>
        <customization name='CAP_OAUTH_FEDERATE_ACCCESS_TOKEN' value='yes'/>
    </customizations>
</connection-customization>

.tdc 파일을 구성 및 설치하는 방법에 대한 자세한 내용은 연결 사용자 지정 및 조정(링크가 새 창에서 열림)을 참조하십시오.

Okta 구성

Okta를 사용하는 경우 '조직 권한 부여 서버'보다는 '사용자 지정 권한 부여 서버'를 사용하는 것이 더 좋습니다. 사용자 지정 권한 부여 서버가 더 유연합니다. 기본적으로 생성된 'default'라는 사용자 지정 권한 부여 서버가 있습니다. 권한 부여 URL은 다음 예와 유사합니다.

https://${yourOktaDomain}/oauth2/{authServerName}/v1/authorize

Okta 대시보드

피드백을 제공해 주셔서 감사합니다!귀하의 피드백이 제출되었습니다. 감사합니다!