python - 使用 boto3,如何检查 AWS IAM 用户是否有密码?

标签 python amazon-web-services boto boto3 amazon-iam

在 IAM 中的用户中,我想以编程方式获取所有启用密码的用户的列表。从 AWS 控制台,我可以轻松发现它们。但是,如何以编程方式获取他们的列表?我想使用 python boto 来获取它。

我在这里阅读 http://boto3.readthedocs.io/en/latest/reference/services/iam.html#iam ,但是通过本文档中列出的大多数方法,我只能看到使用“PasswordLastUsed”的选项,这在三种情况下为 null

  1. 用户没有密码
  2. 密码存在但从未被使用过
  3. 没有与用户关联的登录数据。

因此,仅通过检查“PasswordLastUsed”是否为空,我不能声称用户没有密码,因此无法获得所有具有密码的用户。我在这里错过了什么吗?我可以使用任何其他方式或任何其他 python 资源来执行此操作吗?

最佳答案

import boto3

iam = boto3.resource('iam')
def isPasswordEnabled(user):
   login_profile = iam.LoginProfile(user)
   try:
     login_profile.create_date
     print True
  except:
     print False

>>> isPasswordEnabled('user1')
True
>>> isPasswordEnabled('user2')
False

关于python - 使用 boto3,如何检查 AWS IAM 用户是否有密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44305483/

相关文章:

python - Python 版本行是什么意思?

python - 我可以使用 django-storages 和 boto 将 ImageField 直接从 Django 管理上传到 S3 吗?

python - 确定文件夹或文件 key - Boto

python boto 显示每个实例的最新快照的问题

Python 3.6.3 : Multiple "Exception ignored in: <generator object..." in flask app

python - 更改 `itertools.product`迭代顺序

python - 使用 pymongo 将验证器添加到 Mongodb 集合

mysql - AWS RDS 参数组不改变 MySQL 编码

amazon-web-services - AWS Beanstalk docker 镜像自动更新不起作用

python - 亚马逊 AWS Kinesis Video Boto GetMedia/PutMedia