IAM 사용자 콘솔 비밀번호 변경 정책 점검

콘솔 로그인에 필요한 초기 비밀번호의 전달과 첫 로그인 시 변경을 관리하세요.

설명

콘솔 로그인용 IAM 사용자에게 초기 비밀번호 변경을 요구하지 않으면 관리자가 전달한 비밀번호를 계속 사용할 수 있습니다. 공유되거나 유출된 초기 값이 유지되면 계정 오용 위험이 커질 수 있습니다.

콘솔 접근이 필요 없는 사용자에게 LoginProfile을 추가할 필요는 없습니다. 비밀번호 변경은 API 액세스 키를 교체하지 않으며 MFA와 최소 권한을 대신하지 않습니다.

잠재적 영향

  • 초기 비밀번호를 아는 사람이 계정에 접근할 위험이 남을 수 있습니다.
  • 비밀번호 공유나 재사용으로 사용자별 자격 증명 관리가 약해질 수 있습니다.

해결 방법

콘솔 접근이 필요한 IAM 사용자는 LoginProfile.PasswordResetRequired를 true로 설정하고 본인 비밀번호 변경 권한을 확인하세요. 초기 값은 안전하게 전달하고 변경 완료를 확인하세요. MFA와 비밀번호 정책을 적용하고 가능하면 페더레이션을 사용하세요.

예시

InitialPassword는 계정의 비밀번호 정책을 만족하는 사용자별 초기 값입니다. 기본값 없는 NoEcho 입력 등 승인된 비밀 전달 방식으로 제공하고 Metadata나 Outputs에 출력하지 마세요. 사용자 권한은 별도로 구성해야 합니다.

변경 전

yaml
Resources:
  MyUser:
    Type: AWS::IAM::User
    Properties:
      LoginProfile:
        Password: !Ref InitialPassword
        PasswordResetRequired: false

초기 비밀번호 변경을 강제하지 않습니다. 입력값을 템플릿에서 분리해도 첫 로그인 변경 정책은 별도로 필요합니다.

변경 후

yaml
Resources:
  MyUser:
    Type: AWS::IAM::User
    Properties:
      LoginProfile:
        Password: !Ref InitialPassword
        PasswordResetRequired: true

로그인 시 비밀번호 변경을 요구합니다. 사용자가 실제로 변경할 수 있는 권한과 정상 로그인 절차를 확인하세요.

참조