Lambda 교체 함수 이해 및 사용자 지정 - AWS Secrets Manager

문서의 영문과 번역 사이에 충돌이 있는 경우에는 영문 버전을 따릅니다. 번역 버전은 기계 번역을 사용하여 제공합니다.

Lambda 교체 함수 이해 및 사용자 지정

Lambda 교체 함수에 대한 자세한 내용은 Lambda 교체 함수 개요 단원을 참조하십시오.

보안 암호 유형에 대해 지원되는 데이터베이스 중 하나를 선택하면 AWS Secrets Manager에서는 Lambda 교체 함수를 생성해 구성합니다. Amazon RDS 데이터베이스 보안 암호 교체 활성화 단계에 따라 해당 데이터베이스에 대해 교체를 활성화할 수 있습니다. 그러나 다른 서비스에 대해 사용자 지정 Lambda 교체 함수를 생성하려는 경우 다른 데이터베이스 또는 서비스의 보안 암호에 대한 교체 활성화의 단계를 따라야 합니다.

이 단원에서는 Lambda 함수가 작동하는 방법과 보안 암호를 성공적으로 교체하도록 함수를 구성하는 방법에 대해 자세히 설명합니다.

중요

Lambda 함수 및 이 함수를 호출하는 Secrets Manager 보안 암호는 동일한 AWS 리전에 위치해 있어야 합니다. 다른 리전에 있는 경우 보안 암호 메타데이터에 함수의 Amazon 리소스 이름(ARN)을 추가하려고 하면 "Lambda가 존재하지 않습니다."라는 오류 메시지가 표시됩니다.

다음은 교체에 사용할 고유한 Lambda 함수를 생성할 때 고려해야 할 시나리오입니다. 보안 리소스를 보호하는 인증 시스템에서 지원하는 기능 및 사용자의 보안 문제에 따라 시나리오를 적용합니다.

  • 단일 사용자의 암호만 변경할 수 있습니다. 이는 서비스에 액세스하는 사용자 이외의 다른 사람이 소유한 서비스의 경우 일반적인 시나리오입니다. 서비스의 소유자는 일반적으로 사용자의 이메일 주소를 사용자 이름 또는 최소한 고유성 키로 사용하여 고객이 단일 사용자 계정을 생성하도록 합니다. 이 시나리오에서 서비스는 일반적으로 사용자가 필요한 만큼 자주 암호를 변경할 수 있도록 허용합니다. 하지만 추가 사용자를 생성하도록 허용하지 않으며, 대부분의 경우 사용자 이름도 변경할 수 없습니다.

    사용자에게는 주로 암호를 변경할 수 있는 권한이 있기 때문에 암호를 변경할 수 있는 관리자 권한이 있는 별도의 사용자가 필요하지 않습니다. 하지만 활성 상태의 단일 사용자에 대해 암호를 변경하고 있으므로 이 사용자를 통해 서비스에 액세스하는 클라이언트가 암호 변경 중 일시적으로 로그인에 실패할 수 있습니다.

    암호가 변경되는 시점과 모든 클라이언트가 암호의 새 버전 사용에 대한 알림을 받는 시점 간에 가동 중지가 발생할 수 있습니다. 이 시간은 일반적으로 몇 초 정도여야 하며, 보안 암호를 사용하는 애플리케이션 코드에서 허용 가능한 범위여야 합니다. 그 사이에 약간의 지연을 통해 재시도가 활성화되어 교체 중에 이 짧은 중단 시간이 허용될 수 있어야 합니다.

  • 교대로 적용 가능한 두 사용자를 생성할 수 있습니다. 이 시나리오에서는 교체 프로세스가 복제하는 한 명의 사용자를 생성하여 보안 리소스에 대해 동일한 액세스 권한을 가진 두 사용자를 생성할 수 있습니다. 교체 프로세스는 두 사용자 간에 교대로 나타납니다. 사용자가 "활성" 보안 암호의 자격 증명을 사용하여 데이터베이스 또는 서비스에 계속 액세스하는 동안 Secrets Manager는 암호를 변경하고 "비활성" 보안 암호를 테스트합니다.

    클라이언트가 기본 스테이징 레이블인 AWSCURRENT가 연결된 버전을 쿼리하여 한 사용자 이름으로 보안 리소스에 액세스하는 동안 교체 함수는 비활성 상태인 두 번째 사용자의 암호를 변경합니다. 교체 함수는 업데이트된 암호를 스테이징 레이블이 AWSCURRENT인 새 버전의 보안 암호에 저장합니다. 테스트를 마친 후에는 AWSCURRENT 스테이징 레이블을 대체 사용자 및 새 암호를 가리키는 새 버전으로 옮겨 지정합니다. 모든 클라이언트가 바로 대체 사용자 및 업데이트된 암호를 사용하여 보안 리소스에 액세스하기 시작합니다.

    다음 교체 시기가 되면 현재 유휴 상태인 원래 사용자 계정에 대한 암호를 변경합니다. 이렇게 보안 암호의 다른 새 버전이 생성되고 주기가 반복됩니다.

    이 시나리오에서는 두 사용자 모두에 대해 암호를 변경할 수 있는 권한을 가진 관리자 또는 수퍼유저를 가리키는 두 번째 보안 암호가 필요합니다.

  • 단일 사용자에 대해 새 자격 증명을 생성할 수 있습니다. 일부 시스템에서는 여러 개의 액세스 자격 증명 세트를 사용하는 단일 사용자를 만들 수 있습니다. 각 액세스 자격 증명은 전체 자격 증명 세트를 제공하며 서로 독립적으로 작동합니다. Secrets Manager에서 두 번째 액세스 자격 증명을 사용하는 동안 첫 번째 액세스 자격 증명을 삭제하고 다시 만들 수 있습니다. 그런 다음 모든 클라이언트를 새로운 첫 번째 액세스 자격 증명으로 전환할 수 있습니다. 다음에 교체 시에는 고객이 계속해서 두 번째 액세스 자격 증명을 사용하는 동안 두 번째 액세스 자격 증명을 삭제하여 다시 생성합니다.

각 시나리오를 구성하는 방법에 대한 자세한 내용 및 지침은 다음 항목을 참조하십시오.