AWS amplify环境变量和AWS secrets都用于存储应用程序中的敏感信息。它们的主要区别在于使用的场景和存储的方式。
AWS amplify环境变量是应用程序中存储非敏感信息的首选方法。它们是在应用程序代码中定义的键-值对,用于存储环境特定的配置。例如,AWS的数据库凭证、应用程序的URL、等等。在AWS Amplify中,可以通过控制台或命令行轻松管理这些环境变量。
示例代码(在JavaScript应用程序中使用AWS amplify环境变量):
import Amplify from 'aws-amplify';
Amplify.configure({ Auth: { // 假设这里用了环境变量 // 存储了AWS Cognito的用户池凭据 userPoolId: process.env.USER_POOL_ID, userPoolWebClientId: process.env.USER_POOL_WEB_CLIENT_ID, region: 'us-east-1', } });
AWS secrets则用于存储敏感信息,例如API密钥、凭证等。AWS secrets用于在特定应用程序中的特定角色之间进行管理。它们可以存储在AWS Secrets Manager中,与IAM策略一起使用。
示例代码(使用AWS secrets在Python应用程序中):
import boto3 from botocore.exceptions import ClientError
def get_secret():
secret_name = "my_secret_name"
region_name = "us-west-2"
# 创建一个Secrets Manager client
session = boto3.session.Session()
client = session.client(
service_name='secretsmanager',
region_name=region_name
)
# 获取Secret值
try:
get_secret_value_response = client.get_secret_value(
SecretId=secret_name
)
except ClientError as e:
if e.response['Error']['Code'] == 'ResourceNotFoundException':
print("The requested secret " + secret_name
上一篇:AWSAmplify后台生成页面