AWS中国云配置强制MFA策略后导致AWS CLI和IDEA中无法使用问题

问题

之前的文章《AWS中国IAM用户强制使用MFA》,启用必须使用MFA策略才能使用AWS服务。但是,开启之后,遇到了本地开发环境的IDEA和AWS CLI不能正常调用ssm的配置中心问题。

解决思路

在本地配置文件中,配置使用能够正常使用ssm配置中心的ec2角色。也就是说,我本地的IAM用户代理使用ec2的角色,来访问ssm配置中心。

解决步骤

假设已经存在一个test-ec2角色,我们需要将这里test-ec2角色给本地mac开发环境的AWS CLI和IDEA使用。

设置ec2角色信任关系

给test-ec2角色设置一个信任关系,许可123456789012账号下面所有IAM用户都可以使用test-ec2角色,具体配置步骤如下图:
信任关系配置入口页面
编辑信任策略,内容如下:

{"Version": "2012-10-17","Statement": [{"Effect": "Allow","Principal": {"Service": "ec2.amazonaws.com.cn","AWS": "arn:aws-cn:iam::123456789012:root"},"Action": "sts:AssumeRole"}]
}

这里最关键的就是添加了一行:"AWS": "arn:aws-cn:iam::123456789012:root",这代表123456789012下面所有IAM用户都可以代理使用这个角色。这个步骤必须这样显示配置在角色这边,不然,不能代理使用这个角色。最后配置好后,结果如下:
结果

创建代理使用角色策略

创建一种策略,策略表示IAM用户能够代理使用的角色有哪些?找到策略创建入口页面,如下图:
创建策略
开始创建策略,如下图:
创建策略
具体策略内容如下:

{"Version": "2012-10-17","Statement": [{"Effect": "Allow","Action": "sts:AssumeRole","Resource": "arn:aws-cn:iam::123456789012:role/test-ec2"}]
}

这代表只能使用arn:aws-cn:iam::123456789012:role/test-ec2角色。接下来,设置策略名称,如下图:
设置策略名称
然后,将这个策略设置给需要的IAM用户或用户组。

配置本地aws文件

找到本地配置文件:~/.aws/config。具体内容如下:

[default]
aws_access_key_id = xxxxxx
aws_secret_access_key = xcvasdgtsdbsdfhdsgh
region = cn-north-1
output = json[profile test-ec2]
role_arn = arn:aws-cn:iam::123456789012:role/test-ec2
source_profile = default
mfa_serial= arn:aws-cn:iam::123456789012:mfa/yalin
region = cn-north-1
output = json

其中default部分,可以使用aws configure配置默认的IAM用户。关键就在于[profile test-ec2]部分中的如下三行:

role_arn = arn:aws-cn:iam::123456789012:role/test-ec2
source_profile = default
mfa_serial= arn:aws-cn:iam::123456789012:mfa/yalin

其中role_arn就是被代理的角色;source_profile使用IAM用户,mfa_serialIAM用户使用的MFA设备验证码。

测试

AWS CLI

aws ssm describe-parameters --profile test-ec2
Enter MFA code for arn:aws-cn:iam::123456789012:mfa/yalin:

输入IAM用户的MFA验证码即可。具体结果效果如下:
AWS CLI效果

IDEA

在IDEA中安装AWS Toolkit插件,如下图:
AWS Toolkit插件
具体地址:https://plugins.jetbrains.com/plugin/11349-aws-toolkit
安装好这个插件之后,再尝试连AWS云,具体如下图:
选择test-ec2配置
点击Retry后,出现如下对话框,如图:
MFA验证码对话框
填入MFA授权码,点击OK。如果没有错误,则表示IDEA插件使用成功。具体效果如下图:
效果图

总结

这样我们就可以使用自己的IAM用户代理各个环境的不同角色了。

参考

  • 在 AWS CLI 中使用 IAM 角色
  • How enable access to AWS STS AssumeRole
  • 向用户授予切换角色的权限

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/33776.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

web开发前后端分离

文章目录 1.广义上的前后端分离 1.广义上的前后端分离 优点: 1.前后端分离,便于后期维护;2.前端服务器只需要返回静态界面,后端服务器只提供增删查改的数据返回,把数据的转换逻辑的处理压力转移到了客户端;

MySQL 8版本的新功能和改进有哪些?(MySQL收藏版)

目录 1. 简单介绍 2. 发展历史 3. MySQL 8产品特性 4. 数据库性能重点分析 1. 原生 JSON 支持改进 2. 隐式列优化 3. 改进的查询优化器 4. 并行查询 5. 分区表改进 MySQL 是一个流行的开源关系型数据库管理系统(RDBMS),由瑞典公司 M…

了解SD-WAN与传统WAN的区别

近年来,许多企业选择了SD-WAN作为他们的网络解决方案。云基础架构的SD-WAN不仅具备成本效益,而且提供更安全、更可靠的WAN连接,有助于实现持续盈利。客户能够更好地控制他们的网络,个性化定制且无需额外成本。 那么,为…

服务器数据恢复—raid故障导致部分分区无法识别/不可用的数据恢复案例

服务器数据恢复环境: 一台某品牌DL380服务器中3块SAS硬盘组建了一组raid。 服务器故障: RAID中多块磁盘出现故障离线导致RAID瘫痪,其中一块硬盘状态指示灯显示红色。服务器上运行的数据库在D分区,备份文件存放在E分区。由于RAID瘫…

[信号与系统]模拟域中的一阶低通滤波器和二阶滤波器

前言 不是学电子出身的,这里很多东西是问了朋友… 模拟域中的一阶低通滤波器传递函数 模拟域中的一阶低通滤波器的传递函数可以表示为: H ( s ) 1 s ω c H(s) \frac{1}{s \omega_c} H(s)sωc​1​ 这是因为一阶低通滤波器的设计目标是允许低频信…

05-java基础——循环习题

循环的选择:知道循环的次数或者知道循环的范围就使用for循环,其次再使用while循环 猜数字 程序自动生成一个1-100之间的随机数,在代码中使用键盘录入去猜出这个数字是多少? 要求:使用循环猜,一直猜中为止…

时序预测 | Matlab基于CNN-BiLSTM-Attention多变量时间序列多步预测

目录 效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab基于CNN-BiLSTM-Attention多变量时间序列多步预测; 2.多变量时间序列数据集(负荷数据集),采用前96个时刻预测的特征和负荷数据预测未来96个时刻的负荷数据&…

品牌为什么需要3D营销?

在对比传统品牌营销手段时,线上3D互动营销以其更为生动的展示效果脱颖而出。它通过构建虚拟仿真场景,创造出一个身临其境的三维空间,充分满足了客户对实体质感空间的期待。不仅如此,线上3D互动营销还能实现全天候24小时无间断服务…

PyTorch中“No module named ‘torch._six‘“的报错场景及处理方法

🎬 鸽芷咕:个人主页 🔥 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 引入 在使用PyTorch时,您可能会遇到"No module named ‘torch._six’"的错误。这通常是因为PyTorch的某些…

来自工业界的知识库 RAG 服务(五),模块化知识库 GoMate 实现方案详解

背景介绍 很早以前就看过一篇介绍 RAG 的综述性文章 Retrieval-Augmented Generation for Large Language Models: A Survey, 其中介绍了 RAG 的模块化架构: 但是一直没有看到对应的实现方案,以前也没有理解此框架的优势之处。随着在相关领域的持续实…

门店通微信小程序系统源码

📱:便捷购物新选择 🏢一、什么是门店通微信小程序? 随着移动互联网的快速发展,微信小程序成为了我们日常生活中不可或缺的一部分。门店通微信小程序是一款集合了多家门店信息、服务、优惠等功能于一体的工具&#xf…

centos 安装deb格式安装包

背景 研发给了我一个deb包,需要我在centos 这种服务器操作系统上安装... deb包安装一般是使用dpkg -i xxxx.deb 命令,dpkg是Debian类型的系统,但是 通常centos是没有dpkg命令的... 直接就报:bash dpkg 未找到命令... 本来找研发给我编译rp…

SpringCloud Alibaba Sentinel规则持久化实践总结

默认情况下&#xff0c;一旦我们重启应用&#xff0c;sentinel规则将消失&#xff0c;生产环境需要将配置规则进行持久化。这里我们实践将Sentinel持久化到Nacos中。 ① pom依赖 我们引入sentinel-datasource-nacos&#xff1a; <dependency><groupId>com.aliba…

游戏AI的创造思路-技术基础-深度学习(5)

继续深度学习技术的探讨&#xff0c;填坑不断&#xff0c;头秃不断~~~~~ 3.5. 自编码器&#xff08;AE&#xff09; 3.5.1. 定义 自编码器&#xff08;Autoencoder, AE&#xff09;是一种数据的压缩算法&#xff0c;其中压缩和解压缩函数是数据相关的、有损的、从样本中自动学…

[ios逆向]查看ios安装包ipa签名证书embedded.mobileprovision解密 附带解密环境openssl

openssl smime -inform der -verify -noverify -in embedded.mobileprovision 解密embedded.mobileprovision文件 链接&#xff1a;https://pan.baidu.com/s/1UwNOWONKV1SNj5aX_ZZCzQ?pwdglco 提取码&#xff1a;glco –来自百度网盘超级会员V8的分享 可以使用everything 查看…

matlab绘制二维曲线,如何设置线型、颜色、标记点类型、如何设置坐标轴、matlab 图表标注、在图中标记想要的点

matlab绘制二维曲线&#xff0c;如何设置线型、颜色、标记点类型、如何设置坐标轴、matlab 图表如何标注、如何在图中标记想要的点 matlab绘制二维曲线&#xff0c;如何在图中标记想要的点。。。如何设置线型、颜色、标记点类型。。。如何设置坐标轴。。。matlab 图表标注操作…

计算机系统基础知识(上)

目录 计算机系统的概述 计算机的硬件 处理器 存储器 总线 接口 外部设备 计算机的软件 操作系统 数据库 文件系统 计算机系统的概述 如图所示计算机系统分为软件和硬件&#xff1a;硬件包括&#xff1a;输入输出设备、存储器&#xff0c;处理器 软件则包括系统软件和…

山东大学-科技文献阅读与翻译(期末复习)(选择题+翻译)

目录 选择题 Chapter1 1.which of the following is not categorized as scientific literature 2.Which of the followings is defined as tertiary(三级文献) literature? 3.Which type of the following international conferences is listed as Number one conference…

如何做好药店布局,实现客流回归?

随着我国医药市场的不断发展&#xff0c;药店数量逐年增多&#xff0c;竞争愈发激烈。在这种背景下&#xff0c;如何做好药店布局&#xff0c;吸引客流回归&#xff0c;成为药店经营者关注的核心问题。 要想实现店铺形象美观大方、有效引导客流动向&#xff0c;增加顾客在店内…

TDengine 推出新连接器,与 Wonderware Historian 无缝连接

在最新发布的TDengine 3.2.3.0 版本中&#xff0c;我们进一步更新了 TDengine 的数据接入功能&#xff0c;推出了一款新的连接器&#xff0c;旨在实现 Wonderware Historian&#xff08;现称为 AVEVA Historian&#xff09;与 TDengine 的集成。这一更新提供了更加便捷和高效的…