我正在接近aws。
我尝试将参数存储在EC2实例的parameter store中,并将它们放入Codedeploy的AfterInstall步骤中的环境变量中。deploy可以工作,但我无论如何都无法获取参数。
我创建了策略ParameterStorePolicy,如下所示:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ssm:DescribeParameters"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"ssm:GetParameters"
],
"Resource": [
"arn:aws:ssm:us-east-2:<myId>:parameter/MySecureSQLPassword"
]
},
{
"Effect": "Allow",
"Action": [
"kms:Decrypt"
],
"Resource": "arn:aws:kms:us-east-2:<myId>:alias/aws/ssm"
}
]}我将策略附加到也附加了"AWSCodeDeployRole“的"CodeDeployServiceRole”。
最后,在我的脚本"Afterinstall.sh“中,我编写了以下代码:
cd /home/ubuntu/pypi
export PIPPO=$(aws ssm get-parameters --region us-east-2 --names
MySecureSQLPassword --with-decryption --query Parameters[0].Value)
echo $PIPPO >testPippo.txt结果是一个无效的testPippo.txt文件。
有人能告诉我我做错了什么吗?
谢谢
发布于 2018-09-25 12:28:54
检查"ParameterStorePolicy“IAM策略是否附加到要部署到的实例的EC2实例配置文件。
要确认实例是否具有正确的权限,您可以执行以下任一操作:
aws ssm get-parameters --region us-east-2 --names MySecureSQLPassword --带解密功能--查询Parameters.Value
发布于 2017-09-15 02:38:49
有一件事你可以试一试,那就是直接从实例安装,而不是运行CodeDeploy (也许直接从实例运行GetParameters脚本)。如果您能够获取,那么这意味着与CodeDeploy运行的用户有关,否则应该是参数设置有问题。
谢谢,宾宾
https://stackoverflow.com/questions/46155740
复制相似问题