EC2跨账户访问S3
创始人
2024-09-26 13:29:07

一、A、B账户创建S3

已有请忽略

二、A账户创建EC2

(自行创建自己的配置已有请忽略)

三、创建EC2对应的角色

需要对EC2赋予访问A账户S3的权限,以及B账户S3的权限

创建的角色里面创建2策略,一个是对自己账户的S3访问的权限,一个是对目标账户S3访问的权限,其次信任实体也需要改变如下:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:对应B账户的arn",
                "Service": "ec2.amazonaws.com.cn"(国内就加)
            },
            "Action": "sts:AssumeRole"
        }
    ]
}

创建的两个策略分别如下:

test01:对A账户及当前账户的S3都有访问权限

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": "*"
        }
    ]
}

test02:对B账户的某个S3有访问权限

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": [
                "arn:aws-cn:s3:::***rctest",
                "arn:aws-cn:s3:::***rctest/*"
            ]
        }
    ]
}

配置完毕将角色附加到EC2上面

四、修改目标端S3权限

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:A账户刚刚绑定到机器上面的角色的arn"
            },
            "Action": "s3:*",
            "Resource": [
                "arn:aws-cn:s3:::***rctest",
                "arn:aws-cn:s3:::***rctest/*"
            ]
        },
    ]

五、登陆机器访问测试

访问、上传都可以。

注意:这样的方式需要将aksk配置文件去掉,不然会冲突一般是放在~/.aws/credentials和~/.aws/config这两个目录的。

方法二:

使用aksk角色代入的命令去访问

aws s3 ls s3://test --profile B账户配置文件名
 

 

相关内容

热门资讯

未来三年销售目标突破千亿元!京... 上证报中国证券网讯(记者 刘暄)京东与荣耀4月2日签署战略合作协议,明确未来三年荣耀在京东全渠道销售...
我国科研人员发现99个新物种 我国科研人员发现99个昆虫新物种 为青藏高原生物多样性再添新证 4月1日,我国科研人员在国际动物分类...
兴源自动化取得电芯高效测漏设备... 国家知识产权局信息显示,惠州市兴源自动化设备有限公司取得一项名为“一种电芯高效测漏设备”的专利,授权...
量旋科技完成6亿元C+轮融资 ... 本报讯 (记者张敏)4月3日,深圳量旋科技有限公司(以下简称“量旋科技”)宣布完成6亿元C+轮融资。...
李云泽:推动构建与未来产业全生... 上证报中国证券网讯 据金融监管总局4月3日消息,4月1日,金融监管总局举办党委理论学习中心组集体(扩...