pool does not require MFA. • 説 明:Multi-factor authentication (MFA) increases security for the application by adding another authentication method, and not relying solely on user name and password. 多要素認証を必須とし、アプリケーションのセキュリティを高めることを狙います(普段使用しているツールでも、 MFAを追加できる or 必須とする運用が増えたように感じます✍)。 UserPool を定義する際に、{ mfa: cognito.Mfa.OFF/OPTIONAL/REQUIRED } で設定することができます。 OPTIONAL は、ユーザがMFAを有効にするかどうかを選択することができる、という設定値で、OPTIONAL にした 場合もこの警告がでます。 内部的な認証や、信頼できるネットワーク内での認証の場合は必須でないという判断もあります。 詳細はこちら:ユーザープールに MFA を追加します - Amazon Cognito
pool does not have AdvancedSecurityMode set to ENFORCED. • 説 明:Advanced security features enable the system to detect and act upon malicious sign-in attempts. アドバンスドセキュリティ機能をONにすることで、悪意あるアクティビティを検知し対処することを狙います。 AUDIT と ENFORCED の2モードがあり、AUDIT はアクション等は設定せず、CloudWatchにメトリクスを送ること のみ実行します。 ENFORCED で設定するアクション例としては、漏えいした認証情報に対するアクションであったり、アダプティブ 認証に自動応答を割り当てるアクション等があります。 UserPool を定義する際に、{ advancedSecurityMode: cognito.AdvancedSecurityMode.AUDIT/ENFORCED } で設定 することができます。 内部アプリケーションであったり、低リスクのアプリであった場合は不要という判断もあります。 詳細はこちら:ユーザープールにアドバンストセキュリティを追加する - Amazon Cognito
user, role, or group uses AWS managed policies. • 説 明:An AWS managed policy is a standalone policy that is created and administered by AWS. Currently, many AWS managed policies do not restrict resource scope. Replace AWS managed policies with system specific (customer) managed policies. This is a granular rule that returns individual findings that can be suppressed with appliesTo. The findings are in the format Policy::<policy> for AWS managed policies. Lambdaの実行ロールが自動生成されており、そのロールにAWSマネージドポリシーが付与されています。マネージ ドポリシーでは、リソースを絞った制御がされていないために出ている指摘です。 自動生成されたロールに対しては指摘されることが多くあると思います(今回も指摘11件中4件はこのルールによる ものでした)。 特に懸念事項もない場合は、サプレスして良いと思います。 (マネージドポリシーを使うべきか否か?はまた話題になりそうです🧐)