

# SEC 2  사람과 시스템에 대한 인증은 어떻게 관리합니까?
<a name="w2aac19b7b7b5"></a>

 안전한 AWS 워크로드 운영에 접근할 때 관리해야 하는 두 가지 유형의 자격 증명이 있습니다. 액세스 권한을 관리하고 부여하는 데 필요한 자격 증명의 유형을 이해하면 적절한 자격 증명이 적절한 조건에서 적절한 리소스에 액세스할 수 있도록 보장할 수 있습니다. 

인적 자격 증명: 관리자, 개발자, 운영자 및 최종 사용자가 AWS 환경과 애플리케이션에 액세스하려면 자격 증명이 필요합니다. 이들은 조직의 구성원이거나 협업하는 외부 사용자로, 웹 브라우저, 클라이언트 애플리케이션 또는 대화형 명령줄 도구를 통해 AWS 리소스와 상호작용합니다. 

시스템 자격 증명: 서비스 애플리케이션, 운영 도구 및 워크로드에서 AWS 서비스에 요청하려면(예: 데이터 읽기) 자격 증명이 필요합니다. 이러한 자격 증명에는 Amazon EC2 인스턴스 또는 AWS Lambda 함수와 같이 AWS 환경에서 실행되는 시스템이 포함됩니다. 액세스가 필요한 외부 당사자의 시스템 자격 증명을 관리할 수도 있습니다. 또한 AWS 환경에 액세스해야 하는 시스템이 AWS 외부에 있을 수도 있습니다. 

**Topics**
+ [SEC02-BP01 강력한 로그인 메커니즘 사용](sec_identities_enforce_mechanisms.md)
+ [SEC02-BP02 임시 보안 인증 정보 사용](sec_identities_unique.md)
+ [SEC02-BP03 안전하게 보안 암호를 저장 및 사용](sec_identities_secrets.md)
+ [SEC02-BP04 중앙 집중식 자격 증명 공급자 사용](sec_identities_identity_provider.md)
+ [SEC02-BP05 정기적으로 보안 인증 정보 감사 및 교체](sec_identities_audit.md)
+ [SEC02-BP06 사용자 그룹 및 속성 활용](sec_identities_groups_attributes.md)

# SEC02-BP01 강력한 로그인 메커니즘 사용
<a name="sec_identities_enforce_mechanisms"></a>

 최소 암호 길이를 적용하고, 사용자에게 일반적인 암호나 재사용된 암호를 사용하지 않도록 교육합니다. 추가적인 확인 계층을 제공하기 위해 소프트웨어 또는 하드웨어 메커니즘을 사용하여 MFA(Multi-Factor Authentication)를 적용합니다. 예를 들어 IAM Identity Center를 자격 증명 소스로 사용하는 경우, MFA에 “컨텍스트 인식” 또는 “상시 작동” 설정을 구성하고 사용자가 자신의 MFA 디바이스를 등록하여 도입 속도를 향상할 수 있습니다. 외부 자격 증명 공급자(IdP)를 사용하는 경우 MFA에 IdP를 구성합니다. 

 **이 모범 사례를 정립하지 않을 경우 노출되는 위험의 수준:** 높음 

## 구현 가이드
<a name="implementation-guidance"></a>
+  Identify and Access Management(IAM) 정책 생성: 사용자가 내 보안 인증 정보 페이지에서 역할을 수임하고 자신의 보안 인증 정보를 변경하고 MFA 디바이스를 관리할 수 있도록 하는 몇 가지 작업을 제외한 모든 IAM 작업을 금지하는 고객 관리형 IAM 정책을 [생성합니다](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_users-self-manage-mfa-and-creds.html#tutorial_mfa_step1). 
+  자격 증명 공급자에서 MFA 사용: 사용하는 자격 증명 공급자 또는 Single Sign-On에서 [MFA](https:/aws.amazon.com/iam/details/mfa) 를 사용합니다(예: [AWS IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/step1.html)). 
+  강력한 암호 정책 구성: 무작위 대입 공격으로부터 보호할 수 있도록 강력한 [암호 정책을](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_passwords_account-policy.html?ref=wellarchitected) IAM 또는 연동 자격 증명 시스템에서 구성합니다. 
+  [정기적인 자격 증명 교체](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#rotate-credentials): 워크로드 관리자가 암호와 액세스 키(사용하는 경우)를 정기적으로 변경해야 합니다. 

## 리소스
<a name="resources"></a>

 **관련 문서:** 
+  [AWS Secrets Manager 시작하기](https://docs.aws.amazon.com/secretsmanager/latest/userguide/getting-started.html) 
+  [IAM 모범 사례](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) 
+  [자격 증명 공급자 및 연동](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers.html) 
+  [AWS 계정 루트 사용자](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html?ref=wellarchitected) 
+  [AWS Secrets Manager 시작하기](https://docs.aws.amazon.com/secretsmanager/latest/userguide/getting-started.html?ref=wellarchitected) 
+   [임시 보안 자격 증명](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html?ref=wellarchitected) 
+  [보안 파트너 솔루션: 액세스 및 액세스 제어](https://aws.amazon.com/security/partner-solutions/#access-control) 
+  [임시 보안 자격 증명](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html) 
+  [AWS 계정 루트 사용자](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html) 

 **관련 동영상:** 
+  [Best Practices for Managing, Retrieving, and Rotating Secrets at Scale(대규모 보안 암호 관리, 검색, 교체 모범 사례)](https://youtu.be/qoxxRlwJKZ4) 
+  [Managing user permissions at scale with IAM Identity Center(AWS SSO를 사용하여 대규모로 사용자 권한 관리)](https://youtu.be/aEIqeFCcK7E) 
+  [Mastering identity at every layer of the cake](https://www.youtube.com/watch?v=vbjFjMNVEpc) 

# SEC02-BP02 임시 보안 인증 정보 사용
<a name="sec_identities_unique"></a>

 자격 증명이 있어야 [임시 자격 증명을 동적으로 획득할 수 있습니다.](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html). 인력 자격 증명의 경우 AWS IAM Identity Center를 사용하거나 AWS Identity and Access Management(IAM)과의 페더레이션을 사용하여 AWS 계정에 액세스합니다. 시스템 자격 증명(예: Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스 또는 AWS Lambda 함수)의 경우 장기적인 액세스 키를 포함한 IAM 사용자 대신 IAM 역할을 사용해야 합니다. 

AWS Management Console을 사용하는 인적 자격 증명의 경우, 사용자가 임시 보안 인증을 획득하여 AWS에 연동해야 합니다. AWS IAM Identity Center 사용자 포털을 사용하면 됩니다. CLI 액세스가 필요한 사용자의 경우, [AWS CLI v2](http://aws.amazon.com/blogs/developer/aws-cli-v2-is-now-generally-available/)를 사용합니다. CLI v2는 IAM Identity Center와의 직접적인 통합을 지원합니다. 사용자는 IAM Identity Center 계정과 역할에 연결된 CLI 프로필을 생성할 수 있습니다. 그러면 CLI가 자동으로 IAM Identity Center에서 AWS 보안 인증 정보를 검색하여 사용자를 대신해 새로 고칩니다. 따라서 IAM Identity Center 콘솔에서 임시 AWS 보안 인증 정보를 복사해 붙여넣지 않아도 됩니다. SDK의 경우, 사용자는 AWS Security Token Service(AWS STS)를 사용하여 임시 보안 인증 정보를 수신할 역할을 수임해야 합니다. 경우에 따라 임시 자격 증명이 실용적이지 않을 수 있습니다. 액세스 키를 저장하는 데 수반되는 위험을 알고 있어야 하고, 키를 자주 교체해 사용해야 하며, 가능한 경우 다중 인증(MFA)을 필수 조건으로 지정해야 합니다. 마지막으로 액세스한 정보를 사용하여 액세스 키를 교체하거나 제거할 시기를 결정합니다.

소비자에게 AWS 리소스에 대한 액세스 권한을 부여해야 하는 경우, [Amazon Cognito](https://docs.aws.amazon.com/cognito/latest/developerguide/role-based-access-control.html) 자격 증명 풀을 사용해 임시적이고 권한이 제한된 일련의 보안 인증 정보를 할당하여 AWS 리소스에 액세스합니다. 각 사용자에 대한 권한은 생성한 [IAM 역할](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) 을 통해 제어됩니다. 사용자의 ID 토큰에 있는 클레임에 따라 각 사용자의 역할을 선택하는 규칙을 정의할 수 있습니다. 인증된 사용자에 대한 기본 역할을 정의할 수 있습니다. 또한 인증되지 않은 게스트 사용자의 경우, 권한이 제한된 별도의 IAM 역할을 정의할 수 있습니다.

시스템 자격 증명의 경우, IAM 역할을 사용하여 AWS에 대한 액세스 권한을 부여해야 합니다. Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스의 경우 [Amazon EC2 역할](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html)을 사용할 수 있습니다. Amazon EC2 인스턴스에 IAM 역할을 연결하면 Amazon EC2에서 실행 중인 애플리케이션에서 Instance Metadata Service(IMDS)를 통해 AWS가 생성, 배포 및 교체하는 임시 보안 인증 정보를 자동으로 사용하도록 할 수 있습니다. 이 [최신 버전의](https://aws.amazon.com/blogs/security/defense-in-depth-open-firewalls-reverse-proxies-ssrf-vulnerabilities-ec2-instance-metadata-service/) IMDS는 임시 보안 인증 정보를 노출하는 취약점을 예방하는 데 도움이 되므로 구현해야 합니다. 키 또는 암호를 사용하여 Amazon EC2 인스턴스에 액세스하는 경우 [AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html) 를 사용하면 저장된 보안 암호 없이 사전 설치된 에이전트를 통해 보다 안전하게 인스턴스에 액세스하고 이를 관리할 수 있습니다. 또한 AWS Lambda와 같은 다른 AWS 서비스를 사용하여 IAM 서비스 역할을 구성하고, 이를 통해 임시 보안 인증 정보를 사용해 AWS 작업을 수행하도록 서비스 권한을 부여할 수 있습니다. 임시 보안 인증 정보를 사용하지 못하는 경우 프로그래밍 방식의 도구(예: [AWS Secrets Manager](https://aws.amazon.com/secrets-manager/))를 사용하여 보안 인증 정보 교체와 관리를 자동화합니다.

**정기적으로 자격 증명 감사 및 교체: **올바른 제어 기능이 적용되는지 확인하려면 주기적인 검증(가능한 자동화된 도구 사용)을 실시해야 합니다. 인적 자격 증명의 경우, 사용자가 주기적으로 암호를 변경하고 액세스 키 사용을 중지하며 그 대신 임시 자격 증명을 사용하도록 규정해야 합니다. IAM 사용자에서 중앙화된 자격 증명으로 이전할 때 [보안 인증 보고서를 생성하여 ](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_getting-report.html)IAM 사용자를 감사할 수 있습니다. 또한 자격 증명 공급자에 MFA 설정을 사용하는 것이 좋습니다. 이를 위해 [AWS Config 규칙](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html) 를 설정하여 이러한 설정을 모니터링할 수 있습니다. 시스템 자격 증명의 경우, IAM 역할을 사용한 임시 보안 인증 정보를 사용해야 합니다. 이러한 방법이 불가능한 경우, 액세스 키를 자주 감사하고 교체해 사용해야 합니다.

**안전하게 보안 암호 저장 및 사용:** IAM과 관련이 없는 보안 인증 정보이며 임시 보안 인증 정보를 사용할 수 없는 경우(예: 데이터베이스 로그인) [Secrets Manager](https://aws.amazon.com/secrets-manager/)와 같이 보안 암호 관리 작업을 처리하도록 설계된 서비스를 사용합니다. Secrets Manager를 사용하면 [지원 서비스를 통해 간편하게 암호화된 보안 암호를 관리 및 교체하고 안전하게 저장할 수 있습니다.](https://docs.aws.amazon.com/secretsmanager/latest/userguide/integrating.html). 보안 암호에 액세스하기 위한 호출은 감사를 위해 AWS CloudTrail에 기록되며, IAM 권한은 이에 액세스하기 위한 최소 권한을 부여할 수 있습니다.

 **이 모범 사례가 수립되지 않을 경우 노출되는 위험의 수준:** 높음 

## 구현 가이드
<a name="implementation-guidance"></a>
+  최소 권한 정책 구현: IAM 그룹 및 역할에 최소 권한 액세스 정책을 적용하여 사용자별로 정의한 역할 또는 기능을 반영합니다. 
  +  [최소 권한 부여](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) 
+  불필요한 권한 제거: 불필요한 권한을 제거하여 최소 권한 정책을 구현합니다. 
  +  [사용자 활동 보기를 통한 정책 범위 축소](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html) 
  +  [역할 액세스 보기](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage_delete.html#roles-delete_prerequisites) 
+  권한 경계 고려: 권한 경계는 자격 증명 기반 정책을 통해 IAM 엔터티에 부여할 수 있는 최대 권한을 설정하는 관리형 정책을 사용하는 고급 기능입니다. 엔터티의 권한 경계는 자격 증명 기반 정책과 권한 경계 모두에서 허용되는 작업만 수행하도록 허용합니다. 
  +  [실습: 역할 생성을 위임하는 IAM 권한 경계](https://wellarchitectedlabs.com/Security/300_IAM_Permission_Boundaries_Delegating_Role_Creation/README.html) 
+  권한에 리소스 태그 고려: 태그를 사용하여 태깅을 지원하는 AWS 리소스에 대한 액세스를 제어할 수 있습니다. IAM 사용자 및 역할에 태깅하여 액세스할 수 있는 항목을 제어할 수도 있습니다. 
  +  [실습: EC2에 대한 IAM 태그 기반 액세스 제어](https://wellarchitectedlabs.com/Security/300_IAM_Tag_Based_Access_Control_for_EC2/README.html) 
  +  [ABAC(속성 기반 액세스 제어)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html) 

## 리소스
<a name="resources"></a>

 **관련 문서:** 
+  [AWS Secrets Manager 시작하기](https://docs.aws.amazon.com/secretsmanager/latest/userguide/getting-started.html) 
+  [IAM 모범 사례](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) 
+  [자격 증명 공급자 및 연동](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers.html) 
+  [보안 파트너 솔루션: 액세스 및 액세스 제어](https://aws.amazon.com/security/partner-solutions/#access-control) 
+  [임시 보안 자격 증명](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html) 
+  [AWS 계정 루트 사용자](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html) 

 **관련 동영상:** 
+  [Best Practices for Managing, Retrieving, and Rotating Secrets at Scale(대규모 보안 암호 관리, 검색, 교체 모범 사례)](https://youtu.be/qoxxRlwJKZ4) 
+  [Managing user permissions at scale with AWS IAM Identity Center(AWS SSO를 사용하여 대규모로 사용자 권한 관리)](https://youtu.be/aEIqeFCcK7E) 
+  [Mastering identity at every layer of the cake](https://www.youtube.com/watch?v=vbjFjMNVEpc) 

# SEC02-BP03 안전하게 보안 암호를 저장 및 사용
<a name="sec_identities_secrets"></a>

 보안 암호(예: 서드 파티 애플리케이션에 대한 암호)가 필요한 인력 및 시스템 자격 증명의 경우 특수 서비스의 최신 업계 표준을 사용하여 자동화된 교체 시스템에 암호를 저장합니다. 예를 들면, IAM과 관련이 없는 보안 인증 정보이며 임시 보안 인증 정보를 사용할 수 없는 경우(예: 데이터베이스 로그인) AWS Secrets Manager와 같이 보안 암호 관리 작업을 처리하도록 설계된 서비스를 사용합니다. Secrets Manager를 사용하면 지원 서비스를 통해 간편하게 암호화된 보안 암호를 관리 및 교체하고 안전하게 저장할 수 있습니다. 보안 암호에 액세스하기 위한 호출은 감사를 위해 AWS CloudTrail에 기록되며, IAM 권한은 이에 액세스하기 위한 최소 권한을 부여할 수 있습니다. 

 **이 모범 사례를 정립하지 않을 경우 노출되는 위험의 수준:** 높음 

## 구현 가이드
<a name="implementation-guidance"></a>
+  AWS Secrets Manager 사용: [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) 는 보안 암호를 쉽게 관리할 수 있게 해 주는 AWS 서비스입니다. 데이터베이스 자격 증명, 암호, 타사 API 키는 물론 임의의 텍스트도 보안 정보에 해당할 수 있습니다. 

## 리소스
<a name="resources"></a>

 **관련 문서:** 
+  [AWS Secrets Manager 시작하기 ](https://docs.aws.amazon.com/secretsmanager/latest/userguide/getting-started.html)
+  [자격 증명 공급자 및 연동](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers.html) 

 **관련 동영상:** 
+  [Best Practices for Managing, Retrieving, and Rotating Secrets at Scale(대규모 보안 암호 관리, 검색, 교체 모범 사례)](https://youtu.be/qoxxRlwJKZ4) 

# SEC02-BP04 중앙 집중식 자격 증명 공급자 사용
<a name="sec_identities_identity_provider"></a>

 인력 자격 증명의 경우 중앙 집중식 위치에서 자격 증명을 관리할 수 있는 자격 증명 공급자를 사용합니다. 이렇게 하면 단일 위치에서 액세스를 생성, 관리 및 취소하므로 여러 애플리케이션과 서비스에 대한 액세스를 더 쉽게 관리할 수 있습니다. 예를 들어 누군가가 퇴사한다면 한 곳에서 모든 애플리케이션 및 서비스(AWS 포함)에 대한 액세스 권한을 취소할 수 있습니다. 이렇게 하면 자격 증명을 여러 개 만들 필요가 없고, 기존 인사(HR) 프로세스와 통합할 수도 있습니다. 

개인 AWS 계정과 페더레이션하려면 AWS Identity and Access Management의 SAML 2.0 기반 공급자를 통해 AWS용 중앙 집중식 자격 증명을 사용할 수 있습니다. AWS에서 직접 호스팅하든, AWS 외부에서 호스팅하든, AWS Partner에서 제공하든 [SAML 2.0](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html) 프로토콜과 호환되기만 하면 어느 공급자를 사용해도 됩니다. AWS 계정과 선택한 공급자 사이의 페더레이션을 활용하면 SAML 어설션을 사용해 임시 보안 인증 정보를 얻어 사용자나 애플리케이션에 AWS API 작업을 호출할 액세스 권한을 부여할 수 있습니다. 웹 기반 SSO(Single Sign-On)도 지원되므로 사용자가 로그인 웹 사이트에서 AWS Management Console에 로그인할 수 있습니다.

AWS Organizations 내 여러 계정에 페더레이션하려면 [AWS IAM Identity Center(IAM Identity Center)](http://aws.amazon.com/single-sign-on/)에서 자격 증명 소스를 구성하여 사용자와 그룹이 저장될 위치를 지정하면 됩니다. 구성이 완료되면 자격 증명 공급자가 실제 소스가 되며, System for Cross-domain Identity Management(SCIM) v2.0 프로토콜을 사용해 정보를 [동기화](https://docs.aws.amazon.com/singlesignon/latest/userguide/provision-automatically.html) 할 수 있습니다. 그러면 사용자나 그룹을 검색하여 이들에게 AWS 계정, 클라우드 애플리케이션 또는 둘 모두에 IAM Identity Center 액세스 권한을 부여할 수 있습니다.

IAM Identity Center는 AWS Organizations와 통합되므로 자격 증명 공급자를 한 번 구성하면 조직에서 관리하는 [기존 및 새 계정에 대한 액세스 권한을 부여](https://docs.aws.amazon.com/singlesignon/latest/userguide/useraccess.html) 할 수 있습니다. IAM Identity Center는 사용자 및 그룹을 관리하는 데 사용할 수 있는 기본 스토어를 제공합니다. IAM Identity Center 스토어를 사용하는 경우, 최소 권한의 모범 사례를 염두에 두고 사용자와 그룹을 생성하고 해당 액세스 수준을 AWS 계정 및 애플리케이션에 할당합니다. 또는 SAML 2.0을 사용하여 [외부 자격 증명 공급자에 연결 ](https://docs.aws.amazon.com/singlesignon/latest/userguide/manage-your-identity-source-idp.html)하거나 [Microsoft AD Directory에 연결](https://docs.aws.amazon.com/singlesignon/latest/userguide/manage-your-identity-source-ad.html) (AWS Directory Service 사용)할 수 있습니다. 구성이 완료되면 중앙 자격 증명 공급자를 통해 인증한 후 AWS Management Console 또는 AWS 모바일 앱에 로그인할 수 있습니다.

최종 사용자 또는 워크로드 소비자(예: 모바일 앱)를 관리할 때는 다음을 사용할 수 있습니다. [Amazon Cognito](http://aws.amazon.com/cognito/). 이는 웹 및 모바일 앱의 인증, 권한 부여 및 사용자 관리 등의 기능을 제공합니다. 사용자는 사용자 이름과 암호를 통해 직접 로그인하거나, Amazon, Apple, Facebook 또는 Google 등 타사를 통해 로그인할 수 있습니다.

 **이 모범 사례가 수립되지 않을 경우 노출되는 위험의 수준:** 높음 

## 구현 가이드
<a name="implementation-guidance"></a>
+  중앙화된 관리 액세스: AWS 계정과 ID 제공업체(idP) 간의 신뢰 관계를 구축하기 위해 Identity and Access Management(IAM) 자격 증명 공급자 엔터티를 생성합니다. IAM는 OpenID Connect (OIDC) 또는 SAML 2.0(Security Assertion Markup Language 2.0)과 호환되는 idP를 지원합니다. 
  +  [자격 증명 공급자 및 연동](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers.html) 
+  중앙화된 애플리케이션 액세스: 애플리케이션 액세스 중앙화에는 Amazon Cognito를 고려하십시오. Amazon Cognito를 사용하면 웹 및 모바일 앱에 사용자 가입/로그인 기능 및 액세스 제어를 빠르고 손쉽게 추가할 수 있습니다. [Amazon Cognito](https://aws.amazon.com/cognito/) 는 수백만 명의 사용자로 확장되며 Facebook, Google 및 Amazon과 같은 소셜 자격 증명 공급자와 SAML 2.0을 통한 엔터프라이즈 자격 증명 공급자를 통한 로그인을 지원합니다. 
+  오래된 IAM 사용자 및 그룹 제거: ID 제공업체(idP)를 사용하기 시작한 후 더 이상 필요하지 않은 IAM 사용자 및 그룹을 제거합니다. 
  +  [사용되지 않는 보안 인증 정보 찾기](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_finding-unused.html) 
  +  [IAM 그룹 삭제](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups_manage_delete.html) 

## 리소스
<a name="resources"></a>

 **관련 문서:** 
+  [IAM 모범 사례](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) 
+  [보안 파트너 솔루션: 액세스 및 액세스 제어](https://aws.amazon.com/security/partner-solutions/#access-control) 
+  [임시 보안 자격 증명](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html) 
+  [AWS 계정 루트 사용자](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html) 

 **관련 동영상:** 
+  [Best Practices for Managing, Retrieving, and Rotating Secrets at Scale(대규모 보안 암호 관리, 검색, 교체 모범 사례)](https://youtu.be/qoxxRlwJKZ4) 
+  [Managing user permissions at scale with AWS IAM Identity Center(AWS SSO를 사용하여 대규모로 사용자 권한 관리)](https://youtu.be/aEIqeFCcK7E) 
+  [Mastering identity at every layer of the cake](https://www.youtube.com/watch?v=vbjFjMNVEpc) 

# SEC02-BP05 정기적으로 보안 인증 정보 감사 및 교체
<a name="sec_identities_audit"></a>

 임시 보안 인증 정보를 사용할 수 없으며 장기 보안 인증 정보가 필요한 경우 보안 인증 정보를 감사하여 정의된 제어(예: 다중 인증(MFA))가 적용되고 정기적으로 교체되며 적절한 액세스 수준을 보유하는지 확인합니다. 올바른 제어 기능이 적용되는지 확인하려면 주기적인 검증(가능한 자동화된 도구 사용)을 실시해야 합니다. 인적 자격 증명의 경우, 사용자가 주기적으로 암호를 변경하고 액세스 키 사용을 중지하며 그 대신 임시 자격 증명을 사용하도록 규정해야 합니다. AWS Identity and Access Management(IAM) 사용자에서 중앙화된 자격 증명으로 이전할 때 [보안 인증 보고서를 생성하여 ](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_getting-report.html)IAM 사용자를 감사할 수 있습니다. 또한 자격 증명 공급자에 MFA 설정을 사용하는 것이 좋습니다. 이를 위해 [AWS Config 규칙](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html) 를 설정하여 이러한 설정을 모니터링할 수 있습니다. 시스템 자격 증명의 경우, IAM 역할을 사용한 임시 보안 인증 정보를 사용해야 합니다. 이러한 방법이 불가능한 경우, 액세스 키를 자주 감사하고 교체해 사용해야 합니다. 

 **이 모범 사례가 수립되지 않을 경우 노출되는 위험의 수준:** 보통 

## 구현 가이드
<a name="implementation-guidance"></a>
+  정기적으로 보안 인증 정보 감사: 보안 인증 보고와 Identify and Access Management(IAM) Access Analyzer를 사용하여 IAM 보안 인증 정보 및 권한을 감사합니다. 
  +  [IAM Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html) 
  +  [보안 인증 보고서 가져오기](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_getting-report.html) 
  +  [실습: 자동화된 IAM 사용자 정리](https://wellarchitectedlabs.com/Security/200_Automated_IAM_User_Cleanup/README.html?ref=wellarchitected-tool) 
+  액세스 수준을 사용하여 IAM 권한 검토: AWS 계정의 보안을 강화하기 위해 각 IAM 정책을 정기적으로 검토하고 모니터링합니다. 필요한 작업을 수행하는 데 필요한 최소 권한만 정책에서 부여하는지 확인합니다. 
  +  [액세스 수준을 사용하여 IAM 권한 검토](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#use-access-levels-to-review-permissions) 
+  IAM 리소스 생성 및 업데이트 자동화 고려: AWS CloudFormation을 사용하면 템플릿을 확인하고 버전을 제어할 수 있으므로, 역할 및 정책을 포함한 IAM 리소스 배포를 자동화하고 인적 오류를 줄일 수 있습니다. 
  +  [실습: IAM 그룹 및 역할의 자동 배포](https://wellarchitectedlabs.com/Security/200_Automated_Deployment_of_IAM_Groups_and_Roles/README.html) 

## 리소스
<a name="resources"></a>

 **관련 문서:** 
+  [AWS Secrets Manager 시작하기](https://docs.aws.amazon.com/secretsmanager/latest/userguide/getting-started.html) 
+  [IAM 모범 사례](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) 
+  [자격 증명 공급자 및 연동](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers.html) 
+  [보안 파트너 솔루션: 액세스 및 액세스 제어](https://aws.amazon.com/security/partner-solutions/#access-control) 
+  [임시 보안 자격 증명](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html) 

 **관련 동영상:** 
+  [Best Practices for Managing, Retrieving, and Rotating Secrets at Scale(대규모 보안 암호 관리, 검색, 교체 모범 사례)](https://youtu.be/qoxxRlwJKZ4) 
+  [Managing user permissions at scale with AWS IAM Identity Center(AWS SSO를 사용하여 대규모로 사용자 권한 관리)](https://youtu.be/aEIqeFCcK7E) 
+  [Mastering identity at every layer of the cake](https://www.youtube.com/watch?v=vbjFjMNVEpc) 

# SEC02-BP06 사용자 그룹 및 속성 활용
<a name="sec_identities_groups_attributes"></a>

 관리하는 사용자 수가 늘어나면서 사용자를 체계적으로 정리하여 대규모로 관리할 방법을 결정해야 합니다. 공통 보안 요구 사항이 있는 사용자들을 자격 증명 공급자가 정의한 그룹에 배치하고, 액세스 제어에 사용할 수 있는 사용자 속성(예: 부서 또는 위치)이 정확하게 업데이트되었는지 확인하는 메커니즘을 적절히 설정합니다. 액세스를 제어할 때는 개별적인 사용자가 아니라 이러한 그룹과 속성을 사용합니다. 이를 통해 사용자의 액세스 권한을 변경해야 할 때 여러 개별 정책을 업데이트하는 대신 [권한 세트](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsets.html)를 사용해 사용자의 그룹 멤버십 또는 속성을 한 번 변경하여 중앙에서 액세스를 관리할 수 있습니다. AWS IAM Identity Center(IAM Identity Center)를 사용하여 사용자 그룹 및 속성을 관리할 수 있습니다. IAM Identity Center는 가장 보편적으로 사용되는 속성을 지원합니다. 사용자 생성 중에 수동으로 입력한 것이든, 동기화 엔진을 사용하여 자동으로 프로비저닝된 것(예: System for Cross-Domain Identity Management(SCIM) 사양에 정의된 대로)이든 마찬가지입니다. 

공통 보안 요구 사항이 있는 사용자들을 자격 증명 공급자가 정의한 그룹에 배치하고, 액세스 제어에 사용할 수 있는 사용자 속성(예: 부서 또는 위치)이 정확하게 업데이트되었는지 확인하는 메커니즘을 적절히 설정합니다. 개별 사용자가 아닌 이러한 그룹 및 속성을 사용하여 액세스를 제어합니다. 이를 통해 사용자의 액세스 권한을 변경해야 할 때 여러 개별 정책을 업데이트하는 대신 사용자의 그룹 멤버십 또는 속성을 한 번 변경하여 중앙에서 액세스를 관리할 수 있습니다.

 **이 모범 사례가 수립되지 않을 경우 노출되는 위험의 수준:** 낮음 

## 구현 가이드
<a name="implementation-guidance"></a>
+  AWS IAM Identity Center(IAM Identity Center)를 사용하는 경우 그룹 구성: IAM Identity Center는 사용자 그룹을 구성하고 그룹에 원하는 수준의 권한을 할당할 수 있는 기능을 제공합니다. 
  +  [AWS Single Sign-On - 자격 증명 관리](https://docs.aws.amazon.com/singlesignon/latest/userguide/manage-your-identity-source-sso.html) 
+  속성 기반 액세스 제어(ABAC) 자세히 알아보기: ABAC는 속성을 기반으로 권한을 정의하는 권한 부여 전략입니다. 
  +  [AWS용 ABAC란 무엇입니까?](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html) 
  +  [실습: EC2에 대한 IAM 태그 기반 액세스 제어](https://www.wellarchitectedlabs.com/Security/300_IAM_Tag_Based_Access_Control_for_EC2/README.html) 

## 리소스
<a name="resources"></a>

 **관련 문서:** 
+  [AWS Secrets Manager 시작하기](https://docs.aws.amazon.com/secretsmanager/latest/userguide/getting-started.html) 
+  [IAM 모범 사례](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) 
+  [자격 증명 공급자 및 연동](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers.html) 
+  [AWS 계정 루트 사용자](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html) 

 **관련 동영상:** 
+  [Best Practices for Managing, Retrieving, and Rotating Secrets at Scale(대규모 보안 암호 관리, 검색, 교체 모범 사례)](https://youtu.be/qoxxRlwJKZ4) 
+  [Managing user permissions at scale with AWS IAM Identity Center(AWS SSO를 사용하여 대규모로 사용자 권한 관리)](https://youtu.be/aEIqeFCcK7E) 
+  [Mastering identity at every layer of the cake](https://www.youtube.com/watch?v=vbjFjMNVEpc) 

 **관련 예시:** 
+  [실습: EC2에 대한 IAM 태그 기반 액세스 제어](https://www.wellarchitectedlabs.com/Security/300_IAM_Tag_Based_Access_Control_for_EC2/README.html) 