
제가 일하는 회사는 AWS용 okta의 레거시 로그인을 사용합니다. 따라서 aws-cli를 사용하려면 aws-cli 명령을 실행하기 전에 okta MFA가 필요한 aws-okta 유틸리티가 필요합니다.
Terraform으로 인프라를 작성 중인데 aws 구성 요소를 생성할 수 있도록 terraform에서 okta를 사용하도록 만드는 방법을 찾지 못했습니다.
이것이 가능한가?
또한 이것은 ci/cd 파이프라인에서 실행되어야 하는데 MFA 때문에 그곳에서 어떻게 작동할지 잘 모르겠습니다. 제게 알려주실 수 있는 제안이 있습니까?
답변1
예...Okta에는 꽤 많은 접근 방식이 있습니다. Okta는 AWS, 타사 SaaS 도구 및 LDAP 인증 등을 사용하는 레거시 도구 전반에서 SSO/연동 ID를 매우 쉽게 만들어 광범위한 로그/감사 추적을 제공합니다.
https://github.com/oktadeveloper/okta-aws-cli-assume-role
https://github.com/segmentio/aws-okta
https://bitbucket.org/atlassian/cloudtoken/src/master/
https://github.com/Nike-Inc/gimme-aws-creds
우리는 약 30개의 AWS 계정에 gimme-aws-creds를 사용합니다. 우리는 데브옵스 팀과 개발 팀 전체에서 Mac과 PC 모두에서 도커 컨테이너 접근 방식을 사용합니다. 이를 통해 사용자는 특정 AWS 계정에서 역할을 맡을 수 있으며 PC에서 Terraform을 실행할 수 있습니다. Terraform AWS 공급자에서 역할 수임 기능을 사용할 수도 있습니다.
https://www.terraform.io/docs/providers/aws/index.html
CI/CD 관점에서는 Okta가 필요하지 않으며 MFA도 필요하지 않습니다. jenkins EC2 서버 또는 이에 상응하는 서버에는 동일한 계정 또는 다른 계정에서 다른 역할을 맡는 인스턴스 역할이 있습니다. Terraform은 이 가정된 역할을 사용합니다. 우리는 Jenkins 서버(LDAP 인증)를 보호하기 위해 Okta를 사용합니다.