簡體   English   中英

將Cloudformation權限僅授予屬於堆棧的資源

[英]Grant Cloudformation permissions to only resources that are part of the stack

在我公司,我們的CI / CD管線只能通過假定的IAM角色連接到AWS。 我試圖鎖定該角色,以便它只能更新屬於堆棧的資源,以避免錯誤地更改由另一個團隊管理的資源。

我在這里遇到了雞或蛋的情況。 似乎為了創建一個角色,以限制僅訪問由我的堆棧創建的資源,我需要這些資源的ID,這意味着需要創建堆棧。 我可以使用管理員權限運行一次堆棧,然后提取資源ID,然后將其放入CI / CD,但這似乎無法達到目的。

我理想的解決方案是能夠創建一組權限,這些權限允許CloudFormation創建一組固定的資源類型,然后僅向那些作為堆棧一部分創建的資源授予其他權限。 這可能嗎? 還是對於CI / CD的權限管理有不同的哲學?

我感到困惑的是您如何將資源“鎖定”到特定的堆棧。 無論如何,請嘗試以下操作:

具有僅具有Create *權限的角色(您可能也需要Describe *)。 該角色用於創建新的堆棧,因此不可能與已經創建的資源混在一起。

在您的CloudFormation模板中,創建一個對資源具有Update * / Delete *權限的IAM角色。 要修改堆棧時,請調用此角色。 也許給它起一個名字!Sub $ {AWS :: StackName} -CfnRole。

您還需要為其提供一個保留策略,並在清理堆棧后手動將其刪除。 https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html 否則,當您調用該角色刪除堆棧時,您將遇到權限被拒絕的錯誤,因為該角色幾乎肯定是第一個要刪除的資源。

?? 那對你有用嗎

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM