AWS Doc SDK ExamplesWord
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
SDK for Python(Boto3)을 사용한 Secrets Manager 예제
다음 코드 예제에서는 Secrets Manager AWS SDK for Python (Boto3) 와 함께를 사용하여 작업을 수행하고 일반적인 시나리오를 구현하는 방법을 보여줍니다.
작업은 대규모 프로그램에서 발췌한 코드이며 컨텍스트에 맞춰 실행해야 합니다. 작업은 개별 서비스 함수를 직접적으로 호출하는 방법을 보여주며 관련 시나리오의 컨텍스트에 맞는 작업을 볼 수 있습니다.
시나리오는 동일한 서비스 내에서 또는 다른 AWS 서비스와 결합된 상태에서 여러 함수를 호출하여 특정 태스크를 수행하는 방법을 보여주는 코드 예제입니다.
각 예제에는 컨텍스트에서 코드를 설정하고 실행하는 방법에 대한 지침을 찾을 수 있는 전체 소스 코드에 대한 링크가 포함되어 있습니다.
작업
다음 코드 예시에서는 BatchGetSecretValue
을 사용하는 방법을 보여 줍니다.
- Python용 SDK(Boto3)
-
참고
더 많은 on GitHub가 있습니다. AWS 코드 예시 리포지토리
에서 전체 예시를 찾고 설정 및 실행하는 방법을 배워보세요. class BatchGetSecretsWrapper: def __init__(self, secretsmanager_client): self.client = secretsmanager_client def batch_get_secrets(self, filter_name): """ Retrieve multiple secrets from AWS Secrets Manager using the batch_get_secret_value API. This function assumes the stack mentioned in the source code README has been successfully deployed. This stack includes 7 secrets, all of which have names beginning with "mySecret". :param filter_name: The full or partial name of secrets to be fetched. :type filter_name: str """ try: secrets = [] response = self.client.batch_get_secret_value( Filters=[{"Key": "name", "Values": [f"{filter_name}"]}] ) for secret in response["SecretValues"]: secrets.append(json.loads(secret["SecretString"])) if secrets: logger.info("Secrets retrieved successfully.") else: logger.info("Zero secrets returned without error.") return secrets except self.client.exceptions.ResourceNotFoundException: msg = f"One or more requested secrets were not found with filter: {filter_name}" logger.info(msg) return msg except Exception as e: logger.error(f"An unknown error occurred:\n{str(e)}.") raise
-
API 세부 정보는 Word for Python(Boto3) BatchGetSecretValue 참조의 Word를 참조하세요. AWS SDK API
-
다음 코드 예시에서는 GetSecretValue
을 사용하는 방법을 보여 줍니다.
- Python용 SDK(Boto3)
-
참고
더 많은 on GitHub가 있습니다. AWS 코드 예시 리포지토리
에서 전체 예시를 찾고 설정 및 실행하는 방법을 배워보세요. class GetSecretWrapper: def __init__(self, secretsmanager_client): self.client = secretsmanager_client def get_secret(self, secret_name): """ Retrieve individual secrets from AWS Secrets Manager using the get_secret_value API. This function assumes the stack mentioned in the source code README has been successfully deployed. This stack includes 7 secrets, all of which have names beginning with "mySecret". :param secret_name: The name of the secret fetched. :type secret_name: str """ try: get_secret_value_response = self.client.get_secret_value( SecretId=secret_name ) logging.info("Secret retrieved successfully.") return get_secret_value_response["SecretString"] except self.client.exceptions.ResourceNotFoundException: msg = f"The requested secret {secret_name} was not found." logger.info(msg) return msg except Exception as e: logger.error(f"An unknown error occurred: {str(e)}.") raise
-
API 세부 정보는 Word for Python(Boto3) GetSecretValue 참조의 Word를 참조하세요. AWS SDK API
-
시나리오
다음 코드 예제는 Amazon Aurora 데이터베이스에서 지원하는 REST API를 사용하여 고객이 책을 빌리고 반환할 수 있는 대출 라이브러리를 생성하는 방법을 보여줍니다.
- Python용 SDK(Boto3)
-
Amazon Relational Database Service(Amazon RDS) API 및 AWS Chalice와 AWS SDK for Python (Boto3) 함께를 사용하여 Amazon Aurora 데이터베이스가 지원하는 REST API를 생성하는 방법을 보여줍니다. 웹 서비스는 완전히 서버리스이며 고객이 책을 빌리고 반납할 수 있는 간단한 대출 라이브러리를 나타냅니다. 다음 작업을 수행하는 방법에 대해 알아보십시오.
서버리스 Aurora 데이터베이스 클러스터를 생성하고 관리합니다.
AWS Secrets Manager 를 사용하여 데이터베이스 자격 증명을 관리합니다.
Amazon RDS를 사용하여 데이터를 데이터베이스 안팎으로 이동하는 데이터 스토리지 계층을 구현합니다.
AWS Chalice를 사용하여 Amazon API REST Gateway 및에 서버리스 API를 배포합니다 AWS Lambda.
요청 패키지를 사용하여 웹 서비스에 요청을 보냅니다.
전체 소스 코드와 설정 및 실행 방법에 대한 지침은 GitHub
의 전체 예제를 참조하세요. 이 예시에서 사용되는 서비스
API Gateway
Aurora
Lambda
Secrets Manager