2단계: IdP에 대한 SAML 어설션 구성 - Amazon Redshift

2단계: IdP에 대한 SAML 어설션 구성

IAM 역할을 만든 다음에는 조직의 사용자 내지 그룹을 IAM 역할에 매핑하는 IdP 애플리케이션에서 클레임 규칙을 정의합니다. 자세한 내용은 IAM User GuideConfiguring SAML Assertions for the Authentication Response를 참조하세요.

옵션으로 제공되는 GetClusterCredentials 파라미터인 DbUser, AutoCreate, DbGroups를 쓸 경우 두 가지 옵션이 있습니다. JDBC 또는 ODBC 연결로 파라미터의 값을 설정하거나 IdP에 SAML 속성 요소를 추가하여 값을 설정할 수 있습니다. DbUser, AutoCreate, DbGroups 파라미터에 대한 자세한 내용은 5단계: IAM 자격 증명을 사용하도록 JDBC 또는 ODBC 연결 구성 섹션을 참조하십시오.

참고

${redshift:DbUser}에서 설명한 대로 IAM 정책 변수 GetClusterCredentials에 대한 리소스 정책를 사용할 경우, DbUser의 값이, API 작업의 요청 컨텍스트에서 검색한 값으로 대체됩니다. Amazon Redshift 드라이버는 SAML 속성으로 제공된 값이 아니라 연결 URL에서 제공한 DbUser 변수의 값을 사용합니다.

이 구성의 보안을 위해 IAM 정책의 조건을 사용하여 RoleSessionName으로 DbUser 값을 확인할 것을 권장합니다. IAM 정책을 사용하여 조건을 설정하는 방법의 예는 GetClusterCredentials 사용을 위한 정책 예제에서 볼 수 있습니다.

DbUser, AutoCreate, DbGroups 파라미터를 설정하도록 IdP를 구성하려면 다음 Attribute 요소를 포함시킵니다.

  • Name 속성이 "https://redshift.amazon.com/SAML/Attributes/DbUser"로 설정된 Attribute 요소

    AttributeValue 요소를 Amazon Redshift 데이터베이스에 연결할 사용자 이름으로 설정합니다.

    AttributeValue 요소 값은 소문자여야 하며, 문자로 시작해서 알파벳 숫자, 밑줄(_), 더하기 기호(+), 마침표(.), 골뱅이(@), 하이픈(-)만 쓸 수 있고 길이는 128자 미만이어야 합니다. 일반적으로 사용자 이름은 사용자 ID(예: bobsmith) 또는 이메일 주소(예: bobsmith@example.com)입니다. 이 값에 공백이 들어가면 안 됩니다('Bob Smith'처럼 띄어 쓸 수 없음).

    <Attribute Name="https://redshift.amazon.com/SAML/Attributes/DbUser"> <AttributeValue>user-name</AttributeValue> </Attribute>
  • Name 속성이 "https://redshift.amazon.com/SAML/Attributes/AutoCreate"로 설정된 Attribute 요소

    데이터베이스 사용자가 없으면 새로 하나 만들어서 AttributeValue 요소를 True로 설정하십시오. Amazon Redshift 데이터베이스에 데이터베이스 사용자가 반드시 존재해야 한다고 지정하려면 AttributeValue를 false로 설정합니다.

    <Attribute Name="https://redshift.amazon.com/SAML/Attributes/AutoCreate"> <AttributeValue>true</AttributeValue> </Attribute>
  • Name 속성이 "https://redshift.amazon.com/SAML/Attributes/DbGroups"로 설정된 Attribute 요소

    이 요소에는 하나 이상의 AttributeValue 요소가 포함되어 있습니다. Amazon Redshift 데이터베이스에 연결할 때 세션 기간 동안 DbUser가 조인하는 데이터베이스 그룹 이름으로 각 AttributeValue 요소를 설정합니다.

    <Attribute Name="https://redshift.amazon.com/SAML/Attributes/DbGroups"> <AttributeValue>group1</AttributeValue> <AttributeValue>group2</AttributeValue> <AttributeValue>group3</AttributeValue> </Attribute>