Inspector で Lambda 標準スキャンをアクティブ化せずに Lambda コードスキャンのみをアクティブ化することはできますか?
できません
困っていた内容
Inspector で Lambda 標準スキャンをアクティブ化せずに Lambda コードスキャンのみをアクティブ化したいです。
どう対応すればいいの?
Inspector のよくある質問に記載されているとおり、Lambda 標準スキャンをアクティブ化せずに Lambda コードスキャンのみをアクティブ化することはできません。
Lambda 標準スキャンをアクティブ化せずに Lambda コードスキャンをアクティブ化することはできますか?
いいえ。オプションには 2 つあります。Lambda 標準スキャンのみを有効化するか、Lambda 標準スキャンとコードスキャンを同時に有効にするかのどちらかです。
Enable API によりスキャンをアクティブ化できるので、AWS CLI を利用して、実際に Lambda コードスキャンのみをアクティブ化できないことを確認していきます。
まず、現在の設定値を確認します。
$ aws inspector2 batch-get-account-status
{
"accounts": [
{
"accountId": "xxx",
"state": {
"status": "ENABLED"
},
"resourceState": {
"ec2": {
"status": "ENABLED"
},
"ecr": {
"status": "ENABLED"
},
"lambda": {
"status": "DISABLED"
},
"lambdaCode": {
"status": "DISABLED"
},
"codeRepository": {
"status": "DISABLED"
}
}
}
],
"failedAccounts": []
}
lambda と lambdaCode が無効になっています。
ここで、lambdaCode を有効化してみます。
$ aws inspector2 enable --resource-types LAMBDA_CODE
{
"accounts": [
{
"accountId": "xxx",
"status": "ENABLED",
"resourceStatus": {
"ec2": "ENABLED",
"ecr": "ENABLED",
"lambda": "ENABLING",
"lambdaCode": "ENABLING",
"codeRepository": "DISABLED"
}
}
],
"failedAccounts": []
}
$ aws inspector2 batch-get-account-status
{
"accounts": [
{
"accountId": "xxx",
"state": {
"status": "ENABLED"
},
"resourceState": {
"ec2": {
"status": "ENABLED"
},
"ecr": {
"status": "ENABLED"
},
"lambda": {
"status": "ENABLED"
},
"lambdaCode": {
"status": "ENABLED"
},
"codeRepository": {
"status": "DISABLED"
}
}
}
],
"failedAccounts": []
}
結果として、lambda と lambdaCode が共に有効化されました。
コンソール上では次の表示となっており、Lambda 標準スキャンとコードスキャン両方が有効化されたことがお分かりいただけます。
有効化するリソースタイプが LAMBDA_CODE なので、Lambda コードスキャンのみが有効化されるように考えてしまいますが、よくある質問に記載のとおり、Lambda 標準スキャンとコードスキャン両方が有効化されます。