我使用的是一个python脚本,该脚本使用IAM用户登录AWS帐户并启用MFA(多因素身份验证)。该脚本持续运行并执行一些操作(物联网,从设备获取数据等)。如前所述,帐户在启动脚本时需要MFA代码,而且它做得很好。但问题是脚本在36小时后失败,因为令牌过期。我们是否可以增加会话令牌过期时间或自动执行此任务,而不必一次又一次地询问MFA代码?
ljsrvy3e1#
您不能延长有效期,但可以绕过保护措施(风险自担)。原则上,您可以存储用于生成TOTP代码的MFA密钥(例如,QR设置代码提供了什么),并让您的脚本生成OTP代码以自动执行MFA质询。例如,使用PyOTP库。当然,如果您的MFA需求要求超过TOTP(如强制生物特征识别或物理触摸键),那么这将不起作用。但是,仅设置一个避免从一开始就需要MFA的解决方案可能会更容易。例如,部署脚本,使其在EC2示例上运行,示例角色具有必要的权限,或者创建一个没有MFA要求的IAM用户。
zbq4xfa02#
遗憾的是,该值的范围为900秒(15分钟)到129600秒(36小时)。如果您使用的是root用户身份证明,则范围为900秒(15分钟)到3600秒(1小时)。
2条答案
按热度按时间ljsrvy3e1#
您不能延长有效期,但可以绕过保护措施(风险自担)。原则上,您可以存储用于生成TOTP代码的MFA密钥(例如,QR设置代码提供了什么),并让您的脚本生成OTP代码以自动执行MFA质询。例如,使用PyOTP库。当然,如果您的MFA需求要求超过TOTP(如强制生物特征识别或物理触摸键),那么这将不起作用。
但是,仅设置一个避免从一开始就需要MFA的解决方案可能会更容易。例如,部署脚本,使其在EC2示例上运行,示例角色具有必要的权限,或者创建一个没有MFA要求的IAM用户。
zbq4xfa02#
遗憾的是,该值的范围为900秒(15分钟)到129600秒(36小时)。如果您使用的是root用户身份证明,则范围为900秒(15分钟)到3600秒(1小时)。