Azure AD에서 SAML 인증 및 AWSCLI를 실행하는 방법

3104 단어 AzureADaws-cliSAMLAWS

개요


  • 보안 정책에서 IAM User의 작성/사용이 원칙적으로 금지되어 있는 현장이 있습니까?
  • AWS의 APIKey 유출 사고는 여러 번 들었으므로 IAMUser 생성을 금지하는 것을 이해할 수 있습니다.
  • IAMUser를 사용하지 않고 로그인하는 한 가지 방법은 AzureAD를 통해 SAML 인증하는 것입니다.
  • AzureAD 측에서 MFA 로그인을 필수화할 수도 있어 매우 안전한 설계이지만 AWS CLI를 사용하는 데는 시간이 걸립니다.
  • 이번에는 그 수고를 생략하는 툴 aws-azure-login 를 발견했으므로, 사용법을 메모해 둡니다.

  • 설치 방법


    $ npm install -g aws-azure-login
    
  • 설치가 간단하네요.

  • 초기 설정 절차


    $ aws-azure-login --configure --profile <profile_name>
    
  • README에 쓰여진 대로 설정해 갑니다.
  • Configuring profile '<profile_name>'
    ? Azure Tenant ID:
    
  • 갑자기 넘어집니다. Azure Tenant ID 란 무엇입니까?
  • 문제 해결을 위해 브라우저에서 SAML 응답을 보는 방법 을 참고로 SAML 응답을 뽑아 보았습니다.
  • 응답에서 이러한 임계값 발견<Attribute Name="http://schemas.microsoft.com/identity/claims/tenantid"><AttributeValue>xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx</AttributeValue>
  • ↑의 AttributeValue를 입력합니다.
  • ? Azure App ID URI:
    
  • 이번에는 Azure App ID URI 를 듣게 됩니다. Azure 측의 무엇인가의 URL일까라고 생각했습니다만, MS가 제공하는 문서 에 의하면, https://signin.aws.amazon.com/saml 를 설정하는 것이라고 써 있습니다. 왜 AWS 로그인 URL이었습니다. 그래서 ↑ URL을 입력합니다.
  • ? Default Username:
    
  • AzureAD에 로그인할 사용자 이름을 입력합니다.
  • ? Default Role ARN (if multiple):
    
  • Role ARN을 듣습니다. SAML 인증을 위한 IAMRole의 ARN을 입력합니다. 예 : arn:aws:sts::<account_id>:assumed-role/<role_name>
  • ? Default Session Duration Hours (up to 12): (1)
    
  • 세션의 유효 기간을 듣기 때문에 입력하십시오.

  • 로그인 절차


    $ aws-azure-login --profile <profile_name>
    
  • PassWord, MFA-token 등을 듣기 때문에, 잘 입력해 주세요.
  • 앞의 순서로 UserName 등에는 디폴트치가 등록되어 있다고 생각합니다.

  • AWSCLI 실행


    $ aws s3 ls --profile <profile_name>
    
  • 이제 AWSCLI를 실행할 수 있어야합니다.

  • 참고 자료


  • 기주 b. 코 m / s 포 rt 등다 r / 아 ws - 아즈레 - ㄉ
  • 문제 해결을 위해 브라우저에서 SAML 응답을 보는 방법
  • 자습서: Azure Active Directory Single Sign-On(SSO)과 Amazon Web Services(AWS) 통합
  • 좋은 웹페이지 즐겨찾기