Powershell AWS 自动化管理 (6) - IAM

简介:

这一节继续学习如何使用PowerShell来管理IAM的基本功能,主要包括user,group,role和policy的创建和配置。


创建组

1
New-IAMGroup   -GroupName  "powerUsers"

wKiom1d8mRiAe1KZAADSFTZiU-c298.png


创建新用户

1
New-IAMUser  -UserName  "myNewUser"

wKioL1d8mRuz0nL0AADvzyZj-jE246.png


把用户加入组中

1
Add-IAMUserToGroup  -UserName myNewUser -GroupName powerUsers


确认一下成功

wKiom1d8mR_QJeHJAAAsbKz5JCY083.png


接下来是重头戏,给用户或者组分配权限。权限的分配是通过policy来实现的,AWS里面定义policy都是根据Json格式来实现的,具体的语法结构参考

1
#Policy element

http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#Version


举个例子,允许该用户访问除IAM之外的所有服务,可以这么定义

1
2
3
4
5
6
7
8
9
10
11
12
13
$policyDoc  @"
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"NotAction": "iam:*",
"Resource": "*"
}
]
}
"@
Write-IAMUserPolicy  -UserName myNewUser -PolicyName  "PowerUserAccess-myNewUser-201211201605"  -PolicyDocument  $policyDoc


查看一下

1
get-iamuserpolicy  -UserName mynewuser -PolicyName  "PowerUserAccess-myNewUser-201211201605"

wKiom1d8mSLCUkizAAD0sp_4oPY445.png


成功配置policy

wKioL1d8mSWiXwt5AACL0PrrBOE362.png


别忘了给用户设置密码和安全码

1
New-IAMLoginProfile  -UserName myNewUser -Password  "&!123!&"

wKioL1d8mSniKHpbAACqwIANb3U623.png

1
New-IAMAccessKey  -UserName myNewUser

 

wKioL1d8nCejhHM0AADmK24H2HI152.png


最后,我们来看看如何配置IAMRole。


比如说,我打算配置一个IAMRole,允许EC2的实例能够有权限访问S3存储的资料。


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#IAM Role
$policy = @"
{
   "Version": "2012-10-17",
   "Statement": [
   
       {
       "Effect": "Allow",
       "Principal": {
         "Service": "ec2.amazonaws.com"
       },
       "Action": "sts:AssumeRole"
     }
     ]
}
"@
new-iamrole  -RoleName  "newec2-s31"  -AssumeRolePolicyDocument  $policy

wKiom1d8mU3xR-4oAAILLgLGNtk478.png

执行之后,可以看见trust relationship已经配置了


wKioL1d8mVDwO_AuAABzWFt89vU649.png

下一步需要指定EC2可以访问的资源,这里指定所有的S3资源


1
2
3
4
5
6
7
8
9
10
11
12
13
14
$policy2  @"
{
"Version": "2012-10-17",
"Statement": [
     {
     "Effect": "Allow",
     "NotAction": "s3:*",
     "Resource": "*"
     }
]
}
"@
  
  Write-IAMRolePolicy  -PolicyDocument  $policy2  -RoleName  "newec2-s31"  -PolicyName  "allows3"


执行之后可以看见已经配置好了

wKioL1d8mVSBbB3aAABlSB6J5L0721.png






本文转自 beanxyz 51CTO博客,原文链接:http://blog.51cto.com/beanxyz/1804251,如需转载请自行联系原作者

目录
相关文章
|
6月前
|
运维 监控 安全
「译文」软件自动化发布管理的三个步骤
「译文」软件自动化发布管理的三个步骤
|
1月前
|
监控 关系型数据库 MySQL
PowerShell 脚本编写 :自动化Windows 开发工作流程
PowerShell 脚本编写 :自动化Windows 开发工作流程
30 0
|
4月前
|
监控 数据挖掘 BI
ERP系统中的工作流管理与自动化
【7月更文挑战第25天】 ERP系统中的工作流管理与自动化
178 2
ERP系统中的工作流管理与自动化
|
4月前
|
机器学习/深度学习 人工智能 运维
智能化运维的崛起:自动化与人工智能在IT管理中的融合
本文深入探讨了智能化运维在现代企业中的重要性,并分析了自动化技术和人工智能(AI)如何共同推动IT运维管理的革新。文章首先概述了传统运维面临的挑战,然后详细介绍了智能化运维的核心概念和实施步骤,最后通过具体案例展示了智能化运维在实际工作中的应用效果和潜在价值。
131 0
|
5月前
|
存储 SQL 运维
使用PowerShell进行自动化脚本编写:入门与实战
【6月更文挑战第6天】本文介绍了PowerShell作为Windows系统管理的自动化工具,用于提升效率和减少错误。内容涵盖PowerShell基础,如变量、命令执行、管道、条件和循环语句、函数。实战案例展示了如何用PowerShell脚本进行文件备份。此外,还提及PowerShell的进阶功能,如模块、远程管理和与其他工具集成。学习和应用PowerShell能有效提升IT运维自动化水平。
|
6月前
|
存储 弹性计算 运维
自动化合同管理与执行
【4月更文挑战第30天】
28 2
|
6月前
|
弹性计算 运维 Shell
自动化客服任务分配与优先级管理
【4月更文挑战第30天】
67 0
|
6月前
|
弹性计算 运维 Shell
自动化软件包安装与管理
【4月更文挑战第30天】
34 0
|
6月前
|
存储 分布式计算 监控
使用Airflow管理大数据工作流:自动化任务调度与依赖
【4月更文挑战第8天】Apache Airflow是一款开源的工作流管理工具,用于高效组织和调度大数据任务。它基于DAG(有向无环图)定义任务依赖,通过Operators(如BashOperator、PythonOperator)执行不同工作,并通过Scheduler和Executor协调任务执行。Web UI提供监控界面,Metadata DB存储元数据。创建DAG涉及定义DAG属性、Task及依赖关系,然后部署到Airflow环境。进阶功能包括Variables和Connections管理、XCom跨Task通信、自定义Operator及Plugin、高级调度与告警设置。
535 0
|
6月前
|
SQL Java BI
有什么好用的企业自动化管理开源软件
有什么好用的企业自动化管理开源软件