Azure - Amazon Redshift

Azure

Microsoft Azure AD를 IdP(자격 증명 공급자)로 사용하여 Amazon Redshift 클러스터에 액세스할 수 있습니다. 이 자습서에서는 Azure를 ID 제공업체(idP)로 사용하여 Amazon Redshift 클러스터에 액세스하는 방법을 보여 줍니다.

Microsoft Azure AD Single Sign-On을 사용하여 Amazon Redshift 액세스를 페더레이션하는 방법을 알아봅니다.

1단계: Azure와 AWS 계정을 서로 신뢰하도록 설정

다음 절차에서는 신뢰 관계를 설정하는 방법을 설명합니다.

Azure AD와 AWS 계정을 서로 신뢰하도록 설정하려면
  1. Azure AD 사용자가 연결할 기존 Amazon Redshift 클러스터를 사용하거나 생성합니다. 연결을 구성하려면 이 클러스터의 특정 속성(예: 클러스터 식별자)이 필요합니다. 자세한 내용은 클러스터 생성 섹션을 참조하세요.

  2. Microsoft Azure 포털에서 AWS에 사용되는 Azure Active Directory, 그룹, 사용자를 설정합니다.

  3. Microsoft Azure 포털에서 Amazon Redshift를 AWS 콘솔에 대한 통합 인증 및 Amazon Redshift에 대한 페더레이션 로그인에 사용할 엔터프라이즈 애플리케이션으로 추가합니다. Enterprise application(엔터프라이즈 애플리케이션)을 선택합니다.

  4. +New application(새 애플리케이션 추가)을 선택합니다. 애플리케이션 추가 페이지가 나타납니다.

  5. 검색 필드에서 AWS를 검색합니다.

  6. [Amazon Web Services(AWS)]와 [추가(Add)]를 차례로 선택합니다. 그러면 AWS 애플리케이션이 생성됩니다.

  7. 관리에서 Single sign-on을 선택합니다.

  8. SAML을 선택합니다. Amazon Web Services(AWS) | SAML -based Sign-on(SAML 기반 로그온) 페이지가 나타납니다.

  9. 를 선택하여 Set up Single Sign-On with SAML(SAML을 사용하여 Single Sign-On 설정) 페이지로 이동합니다. 이 페이지에는 미리 구성된 Single Sign-On 관련 속성 목록이 나와 있습니다.

  10. Basic SAML Configuration(기본 SAML 구성)에서 편집 아이콘을 선택하고 저장을 선택합니다.

  11. 둘 이상의 애플리케이션에 대해 구성하는 경우 식별자 값을 제공합니다. 예를 들면 https://signin.aws.amazon.com/saml#2를(을) 입력합니다. 두 번째 애플리케이션부터 이 형식을 # 기호와 함께 사용하여 고유한 SPN 값을 지정합니다.

  12. User Attributes and Claims(사용자 속성 및 클레임) 섹션에서 편집 아이콘을 선택합니다.

    기본적으로 고유한 사용자 식별자(UID), 역할, RoleSessionName 및 SessionDuration 클레임은 미리 구성되어 있습니다.

  13. + Add new claim(새 클레임 추가)을 선택하여 데이터베이스 사용자에 대한 클레임을 추가합니다.

    이름(Name)DbUser을 입력합니다.

    네임스페이스(Namespace)https://redshift.amazon.com/SAML/Attributes를 입력합니다.

    소스(Source)에서 속성(Attribute)를 선택합니다.

    소스 속성에서 user.userprincipalname을 선택합니다. 그런 다음 저장(Save)을 선택합니다.

  14. + Add new claim(새 클레임 추가)을 선택하여 AutoCreate에 대한 클레임을 추가합니다.

    Name(이름)에 AutoCreate을 입력합니다.

    네임스페이스(Namespace)https://redshift.amazon.com/SAML/Attributes를 입력합니다.

    Source(소스)에서Attribute(속성)를 선택합니다.

    소스 속성에서 "true"를 선택합니다. 그런 다음 Save(저장)을 선택합니다.

    여기에서 123456789012는 AWS 계정, AzureSSO는 생성한 IAM 역할, AzureADProvider는 IAM 공급자입니다.

    클레임 이름

    고유한 사용자 식별자(이름 ID)

    user.userprincipalname

    https://aws.amazon.com/SAML/Attributes/SessionDuration

    "900"

    https://aws.amazon.com/SAML/Attributes/Role

    arn:aws:iam::123456789012:role/AzureSSO,arn:aws:iam::123456789012:saml-provider/AzureADProvider

    https://aws.amazon.com/SAML/Attributes/RoleSessionName

    user.userprincipalname

    https://redshift.amazon.com/SAML/Attributes/AutoCreate

    "true"

    https://redshift.amazon.com/SAML/Attributes/DbGroups

    user.assignedroles

    https://redshift.amazon.com/SAML/Attributes/DbUser

    user.userprincipalname

  15. 앱 등록 > your-application-name > 인증에서 모바일 및 데스크톱 애플리케이션을 추가합니다. URL을 http://localhost/redshift/로 지정합니다.

  16. SAML Signing Certificate(SAML 서명 인증서) 섹션에서 다운로드를 선택하여 IAM SAML 자격 증명 공급자를 만들 때 사용할 연동 메타데이터 XML 파일을 다운로드하고 저장합니다. 이 파일은 Single Sign-On 페더레이션 자격 증명을 생성하는 데 사용됩니다.

  17. IAM 콘솔에서 IAM SAML 자격 증명 공급자를 만듭니다. 제공하는 메타데이터 문서는 Azure 엔터프라이즈 애플리케이션을 설정할 때 저장한 연동 메타데이터 XML 파일입니다. 자세한 단계는 IAM User GuideCreating and Managing an IAM Identity Provider (Console)를 참조하세요.

  18. IAM 콘솔에서 SAML 2.0 연동을 위한 IAM 역할을 만듭니다. 자세한 단계는 IAM User GuideCreating a Role for SAML을 참조하세요.

  19. IAM 콘솔에서 SAML 2.0 연동을 위해 생성한 IAM 역할에 연결할 수 있는 IAM 정책을 만듭니다. 자세한 단계는 IAM User GuideCreating IAM Policies (Console)를 참조하세요.

    환경에 맞게 다음 정책(JSON 형식)을 수정합니다.

    • us-west-1을 해당 클러스터의 AWS 리전으로 대체합니다.

    • 123456789012를 AWS 계정으로 대체합니다.

    • cluster-identifier를 클러스터 식별자(또는 모든 클러스터의 경우 *)로 대체합니다.

    • dev를 데이터베이스(또는 모든 클러스터의 경우 *)로 대체합니다.

    • AROAJ2UCCR6DPCEXAMPLE을 해당 IAM 역할의 고유 식별자로 대체합니다.

    • example.com은 해당 테넌트 또는 회사 이메일 도메인으로 대체합니다.

    • my_dbgroup은 사용자를 할당할 데이터베이스 그룹으로 대체합니다.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "redshift:GetClusterCredentials", "Resource": [ "arn:aws:redshift:us-west-1:123456789012:dbname:cluster-identifier/dev", "arn:aws:redshift:us-west-1:123456789012:dbuser:cluster-identifier/${redshift:DbUser}", "arn:aws:redshift:us-west-1:123456789012:cluster:cluster-identifier" ], "Condition": { "StringEquals": { "aws:userid": "AROAJ2UCCR6DPCEXAMPLE:${redshift:DbUser}@example.com" } } }, { "Effect": "Allow", "Action": "redshift:CreateClusterUser", "Resource": "arn:aws:redshift:us-west-1:123456789012:dbuser:cluster-identifier/${redshift:DbUser}" }, { "Effect": "Allow", "Action": "redshift:JoinGroup", "Resource": "arn:aws:redshift:us-west-1:123456789012:dbgroup:cluster-identifier/my_dbgroup" }, { "Effect": "Allow", "Action": [ "redshift:DescribeClusters", "iam:ListRoles" ], "Resource": "*" } ] }

    이 정책은 다음과 같이 권한을 부여합니다.

    • 첫 번째 섹션에서는 지정된 클러스터에 대한 임시 자격 증명을 얻기 위해 GetClusterCredentials API 작업에 권한을 부여합니다. 이 예에서 리소스는 cluster-identifier로, 데이터베이스 dev가 있으며, 계정 123456789012와 AWS 리전 us-west-1에 있습니다. ${redshift:DbUser} 절은 Azure AD에 지정된 DbUser 값과 일치하는 사용자만 연결하도록 허용합니다.

    • 조건 절은 특정 사용자만 임시 자격 증명을 받도록 적용합니다. 이는 회사 이메일 도메인의 이메일 주소로 식별되는 IAM 계정에서 역할 고유 ID AROAJ2UCCR6DPCEXAMPLE로 지정된 역할을 가진 사용자입니다. 고유 ID에 대한 자세한 내용은 IAM User GuideUnique IDs를 참조하세요.

      IdP(이 경우 Azure AD) 설정에 따라 조건 절의 작성 방법이 결정됩니다. 직원의 이메일이 johndoe@example.com인 경우, 먼저 ${redshift:DbUser}를 해당 직원의 사용자 이름 johndoe와 일치하는 수퍼 필드로 설정합니다. 그런 다음 AWS SAML RoleSessionName 필드를 해당 직원의 이메일 johndoe@example.com과 일치하는 수퍼 필드로 설정하여 이 조건을 작동시킵니다. 이 접근 방식을 이용할 때는 다음 사항을 고려하십시오.

      • ${redshift:DbUser}를 직원의 이메일이 되도록 설정한 경우, RoleSessionName과 일치하도록 JSON 예에서 @example.com을 제거합니다.

      • RoleSessionId를 직원의 사용자 이름이 되도록 설정한 경우, RoleSessionName과 일치하도록 예에서 @example.com을 제거합니다.

      • JSON 예제에서 ${redshift:DbUser}RoleSessionName 모두 직원의 이메일로 설정됩니다. 이 JSON 예에서는 Amazon Redshift 데이터베이스 사용자 이름과 @example.com을 사용해 사용자를 로그인하여 클러스터에 액세스합니다.

    • 두 번째 섹션에서는 지정된 클러스터에 dbuser 이름을 만들 수 있는 권한을 부여합니다. 이 JSON 예에서는 생성을 ${redshift:DbUser}로 제한합니다.

    • 세 번째 섹션에서는 사용자가 참여할 수 있는 dbgroup을 지정할 권한을 부여합니다. 이 JSON 예에서는 사용자가 지정된 클러스터의 my_dbgroup 그룹에 참여할 수 있습니다.

    • 네 번째 섹션에서는 사용자가 모든 리소스에 대해 수행할 수 있는 작업에 대한 권한을 부여합니다. 이 JSON 예에서는 사용자가 redshift:DescribeClusters를 호출하여 클러스터 엔드포인트, AWS 리전 및 포트와 같은 클러스터 정보를 가져올 수 있도록 합니다. 또한 사용자가 iam:ListRoles를 호출하여 사용자가 맡을 수 있는 역할을 확인할 수 있도록 합니다.

2단계: Azure에 대한 인증을 위해 JDBC 또는 ODBC 설정

JDBC
Microsoft Azure AD에 대한 인증을 위해 JDBC를 설정하려면
  • Azure AD Single Sign-On을 사용하여 JDBC를 통해 클러스터에 연결하도록 데이터베이스 클라이언트를 구성합니다.

    JDBC 드라이버를 사용하는 클라이언트를 사용하여 Azure AD Single Sign-On으로 연결하거나 Java와 같은 언어를 사용하여 스크립트를 통해 연결할 수 있습니다. 설치 및 구성 정보는 Amazon Redshift용 JDBC 드라이버 버전 2.1 연결 구성 단원을 참조하십시오.

    예를 들어 SQLWorkbench/J를 클라이언트로 사용할 수 있습니다. SQLWorkbench/j를 구성할 때 데이터베이스의 URL은 다음 형식을 사용합니다.

    jdbc:redshift:iam://cluster-identifier:us-west-1/dev

    SQLWorkbench/J를 클라이언트로 사용하는 경우 다음 단계를 수행합니다.

    1. SQL Workbench/J를 시작합니다. [연결 프로파일 선택(Select Connection Profile)] 페이지에서 AzureAuth라는 [프로파일 그룹(Profile Group)]을 추가합니다.

    2. Connection Profile(연결 프로파일)Azure를 입력합니다.

    3. 드라이버 관리(Manage Drivers)를 선택하고, Amazon Redshift를 선택합니다. [라이브러리(Library)] 옆에 있는 [폴더 열기(Open Folder)] 아이콘을 선택한 다음 적절한 JDBC .jar 파일을 선택합니다.

    4. 연결 프로파일 선택(Select Connection Profile) 페이지에서 다음과 같이 연결 프로파일에 정보를 추가합니다.

      • 사용자에 Microsoft Azure 사용자 이름을 입력합니다. 이는 Single Sign-On에 사용 중인 Microsoft Azure 계정의 사용자 이름으로, 인증하려는 클러스터에 대한 권한이 있습니다.

      • 암호에 Microsoft Azure 암호를 입력합니다.

      • 드라이버(Drivers)에서 Amazon Redshift(com.amazon.redshift.jdbc.Driver)를 선택합니다.

      • URLjdbc:redshift:iam://your-cluster-identifier:your-cluster-region/your-database-name을 입력합니다.

    5. Extended Properties(확장 속성)를 선택하여 다음 설명과 같이 연결 속성에 추가 정보를 추가합니다.

      Azure AD Single Sign-On 구성의 경우 다음과 같이 추가 정보를 추가합니다.

      • plugin_namecom.amazon.redshift.plugin.AzureCredentialsProvider를 입력합니다. 이 값은 드라이버에 Azure AD Single Sign-On을 인증 방법으로 사용하도록 지정합니다.

      • idp_tenantyour-idp-tenant를 입력합니다. Microsoft Azure AD에만 사용됩니다. 이는 Azure AD에 구성된 회사의 테넌트 이름입니다. 이 값은 테넌트 이름이거나 하이픈이 있는 테넌트 고유 ID일 수 있습니다.

      • client_secretyour-azure-redshift-application-client-secret를 입력합니다. Microsoft Azure AD에만 사용됩니다. 이는 Azure Single Sign-On 구성을 설정할 때 생성한 Amazon Redshift 애플리케이션의 클라이언트 암호입니다. 이는 com.amazon.redshift.plugin.AzureCredentialsProvider 플러그인에만 적용됩니다.

      • client_idyour-azure-redshift-application-client-id를 입력합니다. Microsoft Azure AD에만 사용됩니다. 이는 Azure Single Sign-On 구성을 설정할 때 생성한 Amazon Redshift 애플리케이션의 클라이언트 ID(하이픈 포함)입니다.

      MFA를 사용하는 Azure AD Single Sign-On 구성의 경우 다음과 같이 연결 속성에 추가 정보를 추가합니다.

      • plugin_namecom.amazon.redshift.plugin.BrowserAzureCredentialsProvider를 입력합니다. 이는 드라이버에 MFA를 사용하는 Azure AD Single Sign-On을 인증 방법으로 사용하도록 지정합니다.

      • idp_tenantyour-idp-tenant를 입력합니다. Microsoft Azure AD에만 사용됩니다. 이는 Azure AD에 구성된 회사의 테넌트 이름입니다. 이 값은 테넌트 이름이거나 하이픈이 있는 테넌트 고유 ID일 수 있습니다.

      • client_idyour-azure-redshift-application-client-id를 입력합니다. 이 옵션은 Microsoft Azure AD에만 사용됩니다. 이는 MFA를 사용하는 Azure AD Single Sign-On 구성을 설정할 때 생성한 Amazon Redshift 애플리케이션의 클라이언트 ID(하이픈 포함)입니다.

      • listen_portyour-listen-port를 입력합니다. 로컬 서버가 수신 대기하는 포트입니다. 기본값은 7890입니다.

      • idp_response_timeoutthe-number-of-seconds를 입력합니다. 이는 IdP 서버가 응답을 다시 보낼 때 제한 시간이 지나기 전까지 대기하는 시간(초)입니다. 최소 시간(초)은 10이어야 합니다. 연결 구성이 이 제한 시간보다 어래 걸리면 연결이 중단됩니다.

ODBC
Microsoft Azure AD에 대한 인증을 위해 ODBC를 설정하려면
  • Azure AD Single Sign-On을 사용하여 ODBC를 통해 클러스터에 연결하도록 데이터베이스 클라이언트를 구성합니다.

    Amazon Redshift는 Linux, Windows 및 macOS 운영 체제용 ODBC 드라이버를 제공합니다. ODBC 드라이버를 설치하려면 먼저 SQL 클라이언트 도구가 32비트인지, 64비트인지 확인합니다. SQL 클라이언트 도구의 요구 사항에 맞는 ODBC 드라이버를 설치합니다.

    Windows의 경우 Amazon Redshift ODBC 드라이버 DSN 설정(Amazon Redshift ODBC Driver DSN Setup) 페이지의 연결 설정(Connection Settings) 아래에 다음 정보를 입력합니다.

    • 데이터 원본 이름(Data Source Name)your-DSN을 입력합니다. 이는 ODBC 프로파일 이름으로 사용되는 데이터 원본 이름을 지정합니다.

    • Azure AD Single Sign-On 구성을 위한 Auth type(인증 유형)에서 Identity Provider: Azure AD를 선택합니다. 이는 ODBC 드라이버가 Azure Single Sign-On을 사용하여 인증할 때 사용하는 인증 방법입니다.

    • MFA를 사용하는 Azure AD Single Sign-On 구성을 위한 Auth type(인증 유형)에서 Identity Provider: Browser Azure AD를 선택합니다. 이는 ODBC 드라이버가 MFA를 사용하는 Azure Single Sign-On을 사용하여 인증할 때 사용하는 인증 방법입니다.

    • 클러스터 ID(Cluster ID)your-cluster-identifier를 입력합니다.

    • 리전(Region)your-cluster-region을 입력합니다.

    • 데이터베이스(Database)your-database-name을 입력합니다.

    • 사용자(User)your-azure-username을 입력합니다. 이는 Single Sign-On에 사용 중인 Microsoft Azure 계정의 사용자 이름으로, 인증하려는 클러스터에 대한 권한이 있습니다. 인증 유형(Auth Type)자격 증명 공급자: Azure AD(Identity Provider: Azure AD)인 경우에만 이를 사용합니다.

    • 암호(Password)your-azure-password를 입력합니다. Auth Type(인증 유형)이 Identity Provider: Azure AD(자격 증명 공급자: Azure AD)인 경우에만 이를 사용합니다.

    • IdP 테넌트your-idp-tenant를 입력합니다. 이는 IdP(Azure)에 구성된 회사의 테넌트 이름입니다. 이 값은 테넌트 이름이거나 하이픈이 있는 테넌트 고유 ID일 수 있습니다.

    • Azure 클라이언트 암호your-azure-redshift-application-client-secret를 입력합니다. 이는 Azure Single Sign-On 구성을 설정할 때 생성한 Amazon Redshift 애플리케이션의 클라이언트 암호입니다.

    • Azure 클라이언트 IDyour-azure-redshift-application-client-id를 입력합니다. 이는 Azure Single Sign-On 구성을 설정할 때 생성한 Amazon Redshift 애플리케이션의 클라이언트 ID(하이픈 포함)입니다.

    • 수신 대기 포트(Listen Port)your-listen-port를 입력합니다. 로컬 서버가 수신하는 기본 수신 대기 포트입니다. 기본값은 7890입니다. 이는 브라우저 Azure AD 플러그인에만 적용됩니다.

    • 응답 제한 시간(Response Timeout)the-number-of-seconds를 입력합니다. 이는 IdP 서버가 응답을 다시 보낼 때 제한 시간이 지나기 전까지 대기하는 시간(초)입니다. 최소 시간(초)은 10이어야 합니다. 연결 구성이 이 제한 시간보다 어래 걸리면 연결이 중단됩니다. 이 옵션은 브라우저 Azure AD 플러그인에만 적용됩니다.

    macOS 및 Linux에서는 다음과 같이 odbc.ini 파일을 편집합니다.

    참고

    모든 항목은 대/소문자를 구분하지 않습니다.

    • clusteridyour-cluster-identifier를 입력합니다. 이는 생성된 Amazon Redshift 클러스터의 이름입니다.

    • 리전(region)your-cluster-region을 입력합니다. 이는 생성된 Amazon Redshift 클러스터의 AWS 리전입니다.

    • 데이터베이스(database)your-database-name을 입력합니다. 이는 Amazon Redshift 클러스터에서 액세스하려는 데이터베이스의 이름입니다.

    • 로캘(locale)en-us를 입력합니다. 이는 오류 메시지가 표시되는 언어입니다.

    • iam1을 입력합니다. 이 값은 드라이버에 IAM 자격 증명을 사용하여 인증하도록 지정합니다.

    • Azure AD Single Sign-On 구성을 위한 plugin_nameAzureAD를 입력합니다. 이는 드라이버에 Azure Single Sign-On을 인증 방법으로 사용하도록 지정합니다.

    • MFA를 사용하는 Azure AD Single Sign-On 구성을 위한 plugin_nameBrowserAzureAD를 입력합니다. 이는 드라이버에 MFA를 사용하는 Azure Single Sign-On을 인증 방법으로 사용하도록 지정합니다.

    • uidyour-azure-username을 입력합니다. 이는 Single Sign-On에 사용 중인 Microsoft Azure 계정의 사용자 이름으로, 인증하려는 클러스터에 대한 권한이 있습니다. plugin_nameAzureAD인 경우에만 이를 사용합니다.

    • pwdyour-azure-password를 입력합니다. plugin_nameAzureAD인 경우에만 이를 사용합니다.

    • idp_tenantyour-idp-tenant를 입력합니다. 이는 IdP(Azure)에 구성된 회사의 테넌트 이름입니다. 이 값은 테넌트 이름이거나 하이픈이 있는 테넌트 고유 ID일 수 있습니다.

    • client_secretyour-azure-redshift-application-client-secret를 입력합니다. 이는 Azure Single Sign-On 구성을 설정할 때 생성한 Amazon Redshift 애플리케이션의 클라이언트 암호입니다.

    • client_idyour-azure-redshift-application-client-id를 입력합니다. 이는 Azure Single Sign-On 구성을 설정할 때 생성한 Amazon Redshift 애플리케이션의 클라이언트 ID(하이픈 포함)입니다.

    • listen_portyour-listen-port를 입력합니다. 로컬 서버가 수신 대기하는 포트입니다. 기본값은 7890입니다. 이는 브라우저 Azure AD 플러그인에 적용됩니다.

    • idp_response_timeoutthe-number-of-seconds를 입력합니다. 이는 Azure로부터 응답을 기다리는 지정된 시간(초)입니다. 이 옵션은 브라우저 Azure AD 플러그인에 적용됩니다.

    macOS 및 Linux에서는 프로파일 설정을 편집하여 다음 내보내기도 추가합니다.

    export ODBCINI=/opt/amazon/redshift/Setup/odbc.ini
    export ODBCINSTINI=/opt/amazon/redshift/Setup/odbcinst.ini

문제 해결

브라우저 Azure AD 플러그인 문제를 해결하려면 다음을 고려합니다.

  • 브라우저 Azure AD 플러그인을 사용하려면 요청에 지정된 회신 URL을 애플리케이션에 대해 구성된 회신 URL과 일치하도록 설정해야 합니다. Microsoft Azure 포털에서 SAML을 사용하여 SSO(Single Sign-On) 설정 페이지로 이동합니다. 그런 다음 회신 URL이 http://localhost/redshift/로 설정되어 있는지 확인합니다.

  • IdP 테넌트 오류가 발생하면 IdP 테넌트 이름이 Microsoft Azure에서 Active Directory를 설정하는 데 처음 사용한 도메인 이름과 일치하는지 확인합니다.

    Windows에서 [Amazon Redshift ODBC DSN 설정(Amazon Redshift ODBC DSN Setup)] 페이지의 [연결 설정(Connection Settings)] 섹션으로 이동합니다. 그런 다음 IdP(Azure)에 구성된 회사의 테넌트 이름이 Microsoft Azure에서 Active Directory를 설정하는 데 처음 사용한 도메인 이름과 일치하는지 확인합니다.

    macOS 및 Linux에서 odbc.ini 파일을 찾습니다. 그런 다음 IdP(Azure)에 구성된 회사의 테넌트 이름이 Microsoft Azure에서 Active Directory를 설정하는 데 처음 사용한 도메인 이름과 일치하는지 확인합니다.

  • 요청에 지정된 회신 URL이 애플리케이션에 대해 구성된 회신 URL과 일치하지 않는 오류가 발생하는 경우 리디렉션 URI가 회신 URL과 동일한지 확인합니다.

    Microsoft Azure 포털에서 애플리케이션의 앱 등록 페이지로 이동합니다. 그런 다음 리디렉션 URI가 응답 URL과 일치하는지 확인합니다.

  • 예기치 않은 응답: 무단 오류가 발생하는 경우 모바일 및 데스크톱 애플리케이션 구성을 완료했는지 확인합니다.

    Microsoft Azure 포털에서 애플리케이션의 앱 등록 페이지로 이동합니다. 그런 다음 인증으로 이동하여 http://localhost/redshift/를 리디렉션 URI로 사용하도록 모바일 및 데스크톱 애플리케이션을 구성했는지 확인합니다.