ปัญหาสิทธิ์ในบทบาท AWS IAM
เราเพิ่งสร้างเซิร์ฟเวอร์ Things Enterprise ใหม่ที่โฮสต์ที่ AWS บนอินสแตนซ์ EC2 และสร้างแอปพลิเคชันเพื่อใช้ AWS IOT เราได้รับข้อผิดพลาดต่อไปนี้
“ ข้อความ”:“ ผู้ใช้: arn: aws: sts :: 446971925991: สันนิษฐานบทบาท / Things-Enterprise-Stack-Srv-StackIAMRole-DBHBSMSY05AQ / i-095895d605fab3fa4 ไม่ได้รับอนุญาตให้ดำเนินการ: sts: AssumeRole บนทรัพยากร: arn: aws : iam :: 446971925991: บทบาท / Bosh-Parking-IOT-Stack-TheThingsStackRoleCD9FBAD2-C44RRJJ53M93”
ฉันได้รับการบอกกล่าว
บทบาทการดำเนินการของอินสแตนซ์ TTES ที่พยายามสวมบทบาทคืออะไร บทบาทของ TTES ต้องสามารถรับบทบาทนั้นได้ ซึ่งจะให้สิทธิ์ที่เหมาะสม
แต่ฉันไม่แน่ใจว่านั่นหมายถึงอะไรฉันคิดว่าฉันต้องเพิ่ม / แก้ไขการอนุญาตบางอย่างในบทบาท IAM ใครช่วยชี้ทางที่ถูกต้องกรุณา
คำตอบ
จากข้อผิดพลาดมันก็ดูเหมือนว่าคุณบทบาท IAM สำหรับ Amazon EC2มีสิทธิ์ในการสมมติบทบาทไม่มี Bosh-Parking-IOT-Stack-TheThingsStackRoleCD9FBAD2-C44RRJJ53M93
ในการเพิ่มสิทธิ์ดังกล่าวด้วยตนเองคุณสามารถทำสิ่งต่อไปนี้:
IAM Console->Rolesไปที่- ใน
Rolesหน้าต่างคุณสามารถใช้Searchแถบเพื่อค้นหาThings-Enterprise-Stack-Srv-StackIAMRole-DBHBSMSY05AQบทบาท - เมื่อคุณพบบทบาทคุณคลิกที่นโยบายแบบอินไลน์เพิ่ม
- เมื่อ
Create policyหน้าต่างปรากฏขึ้นคุณสามารถไปที่JSON tabและเพิ่มนโยบาย JSON ต่อไปนี้:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowAssumeRole",
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource": "arn:aws:iam::446971925991:role/Bosh-Parking-IOT-Stack-TheThingsStackRoleCD9FBAD2-C44RRJJ53M93"
}
]
}
- จากนั้นคลิก
Review Policyตั้งชื่อนโยบาย (เช่น PolicyToAssumeRole) และCreate policy
อย่างไรก็ตามตามชื่อนโยบายของคุณ (เช่น Stack-Srv-StackIAMRole) อาจเป็นไปได้ว่าCloudFormationสร้างขึ้น หากเป็นกรณีนี้แล้วด้วยตนเองบทบาทที่เปลี่ยนแปลงตามที่อธิบายไว้ข้างต้นคือการปฏิบัติที่ไม่ดีและจะนำไปสู่การดริฟท์ การเปลี่ยนแปลงใด ๆ ไปยังแหล่งข้อมูลที่สร้างขึ้นโดย CloudFormation ควรจะทำโดยใช้ CloudFormation น่าเศร้าที่คำถามของคุณไม่มีรายละเอียดใด ๆ เกี่ยวกับเทมเพลต CloudFormation ที่ใช้ดังนั้นจึงยากที่จะแสดงความคิดเห็นเพิ่มเติม