簡體   English   中英

如何在 aws cloudformation 模板中限制特定於 SQS 的 IAM 角色

[英]How to restrict IAM Role specific to SQS in aws cloudformation template

我是 aws cloudformation 模板的新手,我只想將以下角色限制為 SQS 服務。 請建議我如何使用條件來實現相同的目標。

我的模板樣本::

AWSTemplateFormatVersion: 2010-09-09
Description: >-
  This template creates Role  
Parameters:
  vpcname:
    Type: String
    Description: Enter vpcname
Resources:
  ErrorQueueRole:
    Type: 'AWS::IAM::Role'
    Properties:
      RoleName: !Join ["",[ErrorQueueRole.,!Ref vpcname]]
      AssumeRolePolicyDocument:
        Version: 2012-10-17
        Statement:
          - Effect: Allow
            Principal:
              Service:
                - sqs.amazonaws.com
            Action:
                - sts:AssumeRole
            Condition:
                StringEquals:

SQS 使用SQS 策略而不是 IAM 角色,因此您將在此處受限於它提供的功能。

SNS、Lambda 和 S3 等數量有限的服務支持通常所說的資源策略 假設服務 (SQS) 支持連接到服務的功能,您需要將 Arn 添加到您嘗試觸發的服務中。

例如,允許 SQS 調用 Lambda,將需要您修改 Lambda function 策略,例如

{
    "Sid": "sqs",
    "Effect": "Allow",
    "Principal": {
        "Service": "sqs.amazonaws.com"
    },
    "Action": "lambda:InvokeFunction",
    "Resource": "arn:aws:lambda:us-east-2:123456789012:function:my-function"
}

暫無
暫無

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

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