如何在 AWS Cognito 中忽略 MFA 身份验证
How to ignore MFA Authentication in AWS Cognito
我正在使用 AuthFlow='ADMIN_NO_SRP_AUTH' 设置 Cognito MFA 身份验证。
请问有什么方法可以忽略MFA认证吗?
我应该使用哪个 AdminInitiateAuth 请求?
例如:
我创建了一个用户,然后将该用户注册到我的 UserPool,为该用户启用 MFA,现在 MFA 工作正常。
但如果在糟糕的一天,我不想再使用 MFA 身份验证,但我也不想为我的用户禁用 MFA,因为我想在另一个美好的一天使用它。
可能不是您想要的答案,但是...您做不到。它甚至没有意义。
MFA 已启用或已禁用。如果它已启用,您需要使用它进行身份验证。想想看。您将其设置为保护用户帐户。但是用户可以说 - 哦,实际上我这次不想使用它。
问题是 - 一个坏演员可能会做同样的事情。只需发送一个请求,说明不使用 MFA。这将完全违背 MFA 的目的。
这就是为什么这个决定留给池的管理员或可以禁用它的用户的原因,但前提是 he/she 对其进行签名(取决于池的配置)。
这就是为什么您只能启用或禁用它的原因。而且您不能根据请求临时禁用它。
我正在使用 AuthFlow='ADMIN_NO_SRP_AUTH' 设置 Cognito MFA 身份验证。
请问有什么方法可以忽略MFA认证吗?
我应该使用哪个 AdminInitiateAuth 请求?
例如:
我创建了一个用户,然后将该用户注册到我的 UserPool,为该用户启用 MFA,现在 MFA 工作正常。
但如果在糟糕的一天,我不想再使用 MFA 身份验证,但我也不想为我的用户禁用 MFA,因为我想在另一个美好的一天使用它。
可能不是您想要的答案,但是...您做不到。它甚至没有意义。
MFA 已启用或已禁用。如果它已启用,您需要使用它进行身份验证。想想看。您将其设置为保护用户帐户。但是用户可以说 - 哦,实际上我这次不想使用它。 问题是 - 一个坏演员可能会做同样的事情。只需发送一个请求,说明不使用 MFA。这将完全违背 MFA 的目的。
这就是为什么这个决定留给池的管理员或可以禁用它的用户的原因,但前提是 he/she 对其进行签名(取决于池的配置)。
这就是为什么您只能启用或禁用它的原因。而且您不能根据请求临时禁用它。