단일 사용자 로테이션 설정 AWS Secrets Manager - AWS Secrets Manager

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

단일 사용자 로테이션 설정 AWS Secrets Manager

이 자습서에서는 데이터베이스 자격 증명이 포함된 보안 암호에 대해 단일 사용자 교체를 설정하는 방법을 알아봅니다. 단일 사용자 교체는 Secrets Manager가 보안 암호 및 데이터베이스 모두에서 사용자의 자격 증명을 업데이트하는 교체 전략입니다. 자세한 내용은 교체 전략: 단일 사용자 단원을 참조하십시오.

자습서를 마친 후에는 자습서에서 리소스를 정리하는 것이 좋습니다. 프로덕션 환경에서 리소스를 사용하지 마세요.

Secrets Manager 로테이션은 다음을 사용합니다. AWS Lambda 시크릿과 데이터베이스를 업데이트하는 함수입니다. Lambda 함수 사용 비용에 대한 자세한 내용은 요금 섹션을 참조하세요.

권한

튜토리얼 사전 요구 사항의 경우 다음과 같은 관리자 권한이 필요합니다. AWS 계정. 프로덕션 환경에서는 각 단계에 서로 다른 역할을 사용하는 것이 좋습니다. 예를 들어 데이터베이스 관리자 권한이 있는 역할은 Amazon RDS 데이터베이스를 생성하고, 네트워크 관리자 권한이 있는 역할은 VPC 및 보안 그룹을 설정합니다. 자습서 단계에서는 동일한 자격 증명을 계속 사용하는 것이 좋습니다.

프로덕션 환경에서 권한을 설정하는 방법에 대한 자세한 내용은 에 대한 인증 및 액세스 제어 AWS Secrets Manager 섹션을 참조하세요.

사전 조건

이 자습서의 사전 조건은 대체 사용자 로테이션 설정 AWS Secrets Manager입니다. 첫 번째 자습서가 끝나면 리소스를 정리하지 마세요. 이 자습서를 마치면 Amazon RDS 데이터베이스와 데이터베이스의 관리자 자격 증명이 포함된 Secrets Manager 암호가 포함된 현실적인 환경을 갖게 됩니다. 데이터베이스 사용자의 자격 증명이 포함된 두 번째 암호도 있지만 이 자습서에서는 해당 암호를 사용하지 않습니다.

또한 My SQL Workbench에 관리자 자격 증명을 사용하여 데이터베이스에 연결할 수 있도록 연결이 구성되어 있습니다.

1단계: Amazon RDS 데이터베이스 사용자 생성

먼저 보안 암호에 자격 증명을 저장할 사용자가 필요합니다. 사용자를 생성하려면 비밀에 저장된 관리자 자격 증명으로 Amazon RDS 데이터베이스에 로그인합니다. 간소화를 위해 자습서에서는 데이터베이스에 대한 전체 권한을 가진 사용자를 생성합니다. 프로덕션 환경에서 이는 일반적이지 않으므로 최소 권한 원칙을 따르는 것이 좋습니다.

관리자 암호를 검색하려면
  1. Amazon RDS 콘솔에서 데이터베이스로 이동합니다.

  2. 구성 탭의 마스터 자격 ARN 증명에서 Secrets Manager에서 관리를 선택합니다.

    Secrets Manager 콘솔이 열립니다.

  3. 보안 암호 세부 정보 페이지에서 Retrieve secret value(보안 암호 값 검색)를 선택합니다.

  4. 암호가 Secret value(암호 값) 섹션에 표시됩니다.

데이터베이스 사용자를 생성하려면
  1. My SQL Workbench에서 연결을 SecretsManagerTutorial마우스 오른쪽 단추로 클릭한 다음 연결 편집을 선택합니다.

  2. 서버 연결 관리(Manage Server Connections) 대화 상자에서 사용자 이름(Username)admin를 입력한 다음 닫기(Close)를 선택합니다.

  3. My SQL Workbench로 돌아가서 연결을 선택합니다. SecretsManagerTutorial

  4. 암호에서 검색한 관리자 암호를 입력합니다.

  5. 내 SQL 워크벤치의 쿼리 창에서 다음 명령 (강력한 비밀번호 포함) 을 입력한 다음 실행을 선택합니다. 로테이션 함수는 를 사용하여 업데이트된 암호를 SELECT 테스트하므로 사용자에게 dbuser 최소한 해당 권한이 있어야 합니다.

    CREATE USER 'dbuser'@'%' IDENTIFIED BY 'EXAMPLE-PASSWORD'; GRANT SELECT ON myDB . * TO 'dbuser'@'%';

    출력(Output) 창에서 명령이 성공한 것을 볼 수 있습니다.

2단계: 데이터베이스 사용자 자격 증명에 대한 보안 암호 생성

다음으로, 방금 생성한 사용자의 자격 증명을 저장하는 보안 암호를 생성하고, 즉시 교체를 포함한 자동 교체를 켭니다. Secrets Manager는 암호를 교체하므로 암호는 프로그래밍 방식으로 생성됩니다. 이 새 암호를 본 사람은 아무도 없습니다. 교체가 즉시 시작되도록 하면 교체가 올바르게 설정되었는지 확인할 수 있습니다.

  1. 에서 Secrets Manager 콘솔을 엽니다 https://console.aws.amazon.com/secretsmanager/.

  2. Store a new secret(새 보안 암호 저장)을 선택합니다.

  3. 보안 암호 유형 선택(Choose secret type) 페이지에서 다음을 수행합니다.

    1. 시크릿 유형에서 Amazon RDS 데이터베이스의 자격 증명을 선택합니다.

    2. 자격 증명에는 My SQL Workbench를 사용하여 생성한 데이터베이스 사용자에 대해 입력한 사용자 dbuser 이름과 비밀번호를 입력합니다.

    3. 데이터베이스(Database)에서 secretsmanagertutorialdb를 선택합니다.

    4. Next(다음)를 선택합니다.

  4. 보안 암호 구성(Configure secret) 페이지에서 보안 암호 이름(Secret name)SecretsManagerTutorialDbuser를 입력한 후 다음(Next)을 선택합니다.

  5. 교체 구성(Configure rotation) 페이지에서 다음을 수행합니다.

    1. Automatic rotation(자동 교체)을 켭니다.

    2. 교체 일정(Rotation schedule)에서 일(Days): 2일, 기간(Duration): 2h의 일정을 설정합니다. 즉시 교체(Rotate immediately)를 선택합니다.

    3. 교체 함수(Rotation function)에서 교체 함수 생성(Create a rotation function)을 선택한 다음 함수 이름에 tutorial-single-user-rotation을 입력합니다.

    4. 교체 전략에서 단일 사용자를 선택합니다.

    5. 다음(Next)을 선택합니다.

  6. 검토(Review) 페이지에서 시작(Store)을 선택합니다.

    Secrets Manager가 비밀 세부 정보 페이지로 돌아갑니다. 페이지 상단에서 교체 구성 상태를 확인할 수 있습니다. Secrets Manager는 Lambda 순환 함수 및 Lambda 함수를 실행하는 실행 역할과 같은 리소스를 생성하는 데 사용합니다 CloudFormation . CloudFormation 완료하면 배너가 순환 예약된 시크릿으로 변경됩니다. 첫 번째 교체가 완료되었습니다.

3단계: 교체된 암호 테스트

몇 초가 걸릴 수 있는 첫 번째 보안 암호 교체 이후 보안 암호에 유효한 자격 증명이 여전히 포함되어 있는지 확인할 수 있습니다. 보안 암호의 암호가 원래 자격 증명에서 변경되었습니다.

보안 암호에서 새 암호를 검색하려면
  1. 에서 Secrets Manager 콘솔을 엽니다 https://console.aws.amazon.com/secretsmanager/.

  2. 보안 암호(Secrets)를 선택한 다음 보안 암호 SecretsManagerTutorialDbuser를 선택합니다.

  3. 보안 암호 세부 정보(Secret details) 페이지를 아래로 스크롤하고 보안 암호 값 검색(Retrieve secret value)을 선택합니다.

  4. 키/값(Key/value) 테이블에서 password에 대한 보안 암호 값(Secret value)을 복사합니다.

자격 증명을 테스트하려면
  1. My SQL Workbench에서 연결을 SecretsManagerTutorial마우스 오른쪽 단추로 클릭한 다음 연결 편집을 선택합니다.

  2. 서버 연결 관리(Manage Server Connections) 대화 상자에서 사용자 이름(Username)dbuser를 입력한 다음 닫기(Close)를 선택합니다.

  3. My SQL Workbench로 돌아가서 연결을 선택합니다. SecretsManagerTutorial

  4. SSH연결 열기 대화 상자의 암호에서 암호에서 검색한 암호를 붙여넣은 다음 확인을 선택합니다.

    자격 증명이 유효하면 My SQL Workbench가 열리고 데이터베이스의 디자인 페이지가 표시됩니다.

4단계: 리소스 정리

잠재적 요금을 방지하려면 이 자습서에서 생성한 암호를 삭제합니다. 지침은 AWS Secrets Manager 비밀 삭제 단원을 참조하십시오.

이전 자습서에서 만든 리소스를 정리하려면 4단계: 리소스 정리를 참조하세요.

다음 단계