5단계: IAM 자격 증명을 사용하도록 JDBC 또는 ODBC 연결 구성 - Amazon Redshift

5단계: IAM 자격 증명을 사용하도록 JDBC 또는 ODBC 연결 구성

Amazon Redshift JDBC 또는 ODBC 드라이버를 사용하여 SQL 클라이언트를 구성할 수 있습니다. 이 드라이버는 데이터베이스 사용자 자격 증명을 생성하고 SQL 클라이언트와 Amazon Redshift 데이터베이스 간의 연결을 설정하는 프로세스를 관리합니다.

인증에 자격 증명 공급자를 쓰는 경우, 자격 증명 공급자 플러그인의 이름을 지정합니다. Amazon Redshift JDBC 및 ODBC 드라이버에는 다음 SAML 기반의 자격 증명 공급자를 위한 플러그인이 포함됩니다.

IAM 자격 증명을 사용하도록 JDBC 연결 구성
  1. Amazon Redshift용 JDBC 드라이버 버전 2.1 연결 구성 페이지에서 최신 Amazon Redshift JDBC 드라이버를 다운로드합니다.

  2. 다음 형식 중 한 가지로 IAM 자격 증명 옵션이 있는 JDBC URL을 새로 만듭니다. IAM 인증을 사용하려면 다음 예시에 보이는 것처럼 jdbc:redshift: 다음에 iam:을 Amazon Redshift JDBC URL에 넣습니다.

    jdbc:redshift:iam://

    cluster-name, regionaccount-id를 추가합니다. JDBC 드라이버는 IAM 계정 정보와 클러스터 이름을 이용해 클러스터 ID와 AWS 리전을 검색합니다. 이렇게 하려면 사용자 또는 역할에 지정된 클러스터로 redshift:DescribeClusters 작업을 호출할 권한이 있어야 합니다. 사용자 또는 역할에 redshift:DescribeClusters 작업 호출 권한이 없다면, 다음 예에 보이는 것처럼 클러스터 ID, AWS 리전, 포트를 포함합니다. 포트 번호는 선택에 따릅니다.

    jdbc:redshift:iam://examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com:5439/dev
  3. JDBC 옵션을 추가하여 IAM 자격 증명을 제공하십시오. 다른 JDBC 옵션 조합을 이용해 IAM 자격 증명을 제공할 수 있습니다. 세부 정보는 데이터베이스 사용자 자격 증명 생성을 위한 JDBC 및 ODBC 옵션을 참조하세요.

    다음 URL은 사용자에 대한 AccessKeyID와 SecretAccessKey를 지정합니다.

    jdbc:redshift:iam://examplecluster:us-west-2/dev?AccessKeyID=AKIAIOSFODNN7EXAMPLE&SecretAccessKey=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

    다음 예에서는 IAM 자격 증명을 포함한 이름 있는 프로필을 지정합니다.

    jdbc:redshift:iam://examplecluster:us-west-2/dev?Profile=user2
  4. JDBC 드라이버가 GetClusterCredentials API 작업을 호출하는 데 사용하는 JDBC 옵션을 추가합니다. GetClusterCredentials API 작업을 프로그래밍 방식으로 호출하는 경우 이러한 옵션을 포함하지 마십시오.

    다음 예에는 JDBC GetClusterCredentials 옵션이 포함되어 있습니다.

    jdbc:redshift:iam://examplecluster:us-west-2/dev?plugin_name=com.amazon.redshift.plugin.AzureCredentialsProvider&UID=user&PWD=password&idp_tenant=my_tenant&client_secret=my_secret&client_id=my_id
IAM 자격 증명을 사용하도록 ODBC 연결 구성

다음 절차에서는 IAM 인증 구성을 위한 단계만 안내합니다. 데이터베이스 사용자 이름과 암호를 이용한 표준 인증의 사용 단계는 ODBC 연결 구성 단원을 참조하십시오.

  1. 운영 체제에 맞는 최신 Amazon Redshift OBDC 드라이버를 설치하고 구성합니다. 자세한 내용은 ODBC 연결 구성 페이지를 참조하십시오.

    중요

    Amazon Redshift ODBC 드라이버는 버전 1.3.6.1000 이상이어야 합니다.

  2. 운영 체제에 맞는 단계를 따라 연결 설정을 구성하십시오.

    자세한 내용은 다음 중 하나를 참조하십시오.

  3. Microsoft Windows 운영 체제에서는 [Amazon Redshift ODBC 드라이버 DSN 설정(Amazon Redshift ODBC Driver DSN Setup)] 창에 액세스합니다.

    1. 연결 설정(Connection Settings)에서 다음 정보를 입력하세요.

      • Data Source Name(데이터 원본 이름)

      • 서버(선택 사항)

      • 포트(선택 사항)

      • 데이터베이스

      사용자 또는 역할에 redshift:DescribeClusters 작업을 호출할 수 있는 권한이 있는 경우 Data Source Name(데이터 소스 이름)과 Database(데이터베이스)만 필요합니다. Amazon Redshift는 [ClusterId]와 [리전(Region)]으로 DescribeCluster 작업을 호출하여 서버와 포트를 가져옵니다.

      사용자 또는 역할에 redshift:DescribeClusters 작업을 호출할 권한이 없다면 서버포트를 지정하십시오.

    2. 인증 아래에서 Auth Type(인증 유형) 값을 선택합니다.

      각 인증 유형에 대해 다음과 같이 값을 입력합니다.

      AWS 프로파일

      다음 정보를 입력합니다.

      • ClusterID

      • 리전(Region)

      • 프로필 이름

        ODBC 연결 옵션에 대한 값을 포함한 AWS config 파일에 프로파일 이름을 입력합니다. 자세한 내용은 구성 프로필 사용 단원을 참조하십시오.

      (선택 사항) ODBC 드라이버가 GetClusterCredentials API 작업을 호출하는 데 사용하는 옵션에 대한 세부 정보를 입력합니다.

      IAM 자격 증명

      다음 정보를 입력합니다.

      • ClusterID

      • 리전(Region)

      • AccessKeyIDSecretAccessKey

        IAM 데이터베이스 인증용으로 구성한 IAM 역할 또는 사용자에 대한 액세스 키 ID와 비밀 액세스 키.

      • SessionToken

        SessionToken은 임시 자격 증명을 가진 IAM 역할에 필요합니다. 자세한 내용은 임시 보안 자격 증명을 참조하십시오.

      ODBC 드라이버가 GetClusterCredentials API 작업을 호출하는 데 사용하는 옵션에 대한 세부 정보를 입력합니다.

      자격 증명 공급자: AD FS

      AD FS와의 Windows 통합 인증의 경우 User(사용자)Password(암호)를 빈 칸으로 놔두십시오.

      IdP 세부 정보를 제공합니다.

      • IdP Host

        기업 자격 증명 제공업체 호스트의 이름입니다. 이 이름에 슬래시(/)가 포함되면 안 됩니다.

      • IdP Port(선택 사항)

        자격 증명 공급자가 사용하는 포트. 기본값은 443입니다.

      • Preferred Role

        SAML 어설션에서 Role 속성에 대한 다중 값 AttributeValue 요소에서 IAM 역할의 Amazon 리소스 이름(ARN)입니다. 선호되는 역할에 적절한 값을 찾으려면 IdP 관리자에게 문의하십시오. 자세한 내용은 IdP에 대한 SAML 어설션 구성 단원을 참조하십시오.

      (선택 사항) ODBC 드라이버가 GetClusterCredentials API 작업을 호출하는 데 사용하는 옵션에 대한 세부 정보를 입력합니다.

      • DbUser

      • User AutoCreate

      • DbGroups

      자세한 내용은 데이터베이스 사용자 자격 증명 생성을 위한 JDBC 및 ODBC 옵션 단원을 참조하십시오.

      자격 증명 공급자: PingFederate

      사용자(User)암호(Password)에 IdP 사용자 이름과 암호를 입력합니다.

      IdP 세부 정보를 제공합니다.

      • IdP Host

        기업 자격 증명 제공업체 호스트의 이름입니다. 이 이름에 슬래시(/)가 포함되면 안 됩니다.

      • IdP Port(선택 사항)

        자격 증명 공급자가 사용하는 포트. 기본값은 443입니다.

      • Preferred Role

        SAML 어설션에서 Role 속성에 대한 다중 값 AttributeValue 요소에서 IAM 역할의 Amazon 리소스 이름(ARN)입니다. 선호되는 역할에 적절한 값을 찾으려면 IdP 관리자에게 문의하십시오. 자세한 내용은 IdP에 대한 SAML 어설션 구성 단원을 참조하십시오.

      (선택 사항) ODBC 드라이버가 GetClusterCredentials API 작업을 호출하는 데 사용하는 옵션에 대한 세부 정보를 입력합니다.

      • DbUser

      • User AutoCreate

      • DbGroups

      자세한 내용은 데이터베이스 사용자 자격 증명 생성을 위한 JDBC 및 ODBC 옵션 단원을 참조하십시오.

      자격 증명 공급자: Okta

      User(사용자) 및 Password(암호)에 IdP 사용자 이름과 암호를 입력합니다.

      IdP 세부 정보를 제공합니다.

      • IdP Host

        기업 자격 증명 제공업체 호스트의 이름입니다. 이 이름에 슬래시(/)가 포함되면 안 됩니다.

      • IdP Port

        이 값은 Okta에서 사용되지 않습니다.

      • Preferred Role

        SAML 어설션에서 Role 속성에 대한 AttributeValue 요소에서 IAM 역할의 Amazon 리소스 이름(ARN)입니다. 선호되는 역할에 적절한 값을 찾으려면 IdP 관리자에게 문의하십시오. 자세한 내용은 IdP에 대한 SAML 어설션 구성 단원을 참조하십시오.

      • Okta App ID

        Okta 애플리케이션을 위한 ID. Okta Application Embed Link에서 App ID의 값 뒤에 "amazon_aws"가 붙습니다. IdP 관리자에게 문의해 이 값을 얻으십시오.

      (선택 사항) ODBC 드라이버가 GetClusterCredentials API 작업을 호출하는 데 사용하는 옵션에 대한 세부 정보를 입력합니다.

      • DbUser

      • User AutoCreate

      • DbGroups

      자세한 내용은 데이터베이스 사용자 자격 증명 생성을 위한 JDBC 및 ODBC 옵션 단원을 참조하십시오.

      자격 증명 공급자: Azure AD

      User(사용자) 및 Password(암호)에 IdP 사용자 이름과 암호를 입력합니다.

      [클러스터 ID(Cluster ID)] 및 [리전(Region)]에 클러스터 ID와 Amazon Redshift 클러스터의 AWS 리전을 입력합니다.

      [데이터베이스(Database)]에 Amazon Redshift 클러스터에서 생성한 데이터베이스를 입력합니다.

      IdP 세부 정보를 제공합니다.

      • IdP 테넌트

        Azure AD에 사용되는 테넌트입니다.

      • Azure 클라이언트 암호

        Azure의 Amazon Redshift 엔터프라이즈 앱의 클라이언트 암호입니다.

      • Azure 클라이언트 ID

        Azure의 Amazon Redshift 엔터프라이즈 앱의 클라이언트 ID(애플리케이션 ID)입니다.

      (선택 사항) ODBC 드라이버가 GetClusterCredentials API 작업을 호출하는 데 사용하는 옵션에 대한 세부 정보를 입력합니다.

      • DbUser

      • User AutoCreate

      • DbGroups

      자세한 내용은 데이터베이스 사용자 자격 증명 생성을 위한 JDBC 및 ODBC 옵션 단원을 참조하십시오.