以下是一个示例代码,用于验证AWS MFA序列号是否有效并与特定用户关联:
import boto3
def validate_mfa_serial(user_name, mfa_serial):
client = boto3.client('iam')
# 获取用户详细信息
response = client.get_user(UserName=user_name)
# 检查用户是否启用了MFA
if 'MFADevices' in response['User']:
for device in response['User']['MFADevices']:
if device['SerialNumber'] == mfa_serial:
print('MFA序列号有效并与用户关联。')
return True
print('无效的MFA序列号或未与用户关联。')
return False
# 调用示例
user_name = 'your_username'
mfa_serial = 'arn:aws:iam::123456789012:mfa/your_mfa_device'
validate_mfa_serial(user_name, mfa_serial)
该代码使用AWS SDK for Python (Boto3)来连接AWS IAM服务,并使用get_user
方法获取指定用户名的详细信息。然后,它遍历用户的MFA设备列表,检查序列号是否与提供的MFA序列号匹配。如果找到匹配的MFA序列号,它将打印一条消息并返回True
。否则,它将打印另一条消息并返回False
。
请注意,您需要替换your_username
和your_mfa_device
为实际的用户名和MFA序列号。