AWS IAM 是一种身份和访问管理服务,用于管理用户和资源的访问权限。而 Secrets Manager 是一种用于安全地存储和管理应用程序、服务和 IT 资源的机密信息的服务。
下面是一个使用 AWS SDK for Python(Boto3)设置和使用 IAM 和 Secrets Manager 的示例:
import boto3
# 初始化 IAM 客户端
iam = boto3.client('iam')
# 创建 IAM 用户
iam.create_user(
UserName='example_user'
)
# 创建访问密钥 ID 和私有密钥
access_key = iam.create_access_key(UserName='example_user')['AccessKey']
import boto3
import base64
from botocore.exceptions import ClientError
# 初始化 Secrets Manager 客户端
secretsmanager = boto3.client('secretsmanager')
# 创建机密信息
password = 'my_super_secret_password'
encoded_password = base64.b64encode(password.encode())
# 创建机密记录
try:
response = secretsmanager.create_secret(
Name='database_password',
SecretString=encoded_password.decode()
)
except ClientError as e:
# 处理错误
print(e.response['Error']['Message'])
# 获取机密信息
try:
response = secretsmanager.get_secret_value(SecretId='database_password')
decoded_password = base64.b64decode(response['SecretString']).decode()
except ClientError as e:
# 处理错误
print(e.response['Error']['Message'])