
Amazon Macie のジョブが完了しても機密データが検出されない原因について
困っていた内容
S3 バケットに機密データがあるかを調べるため、Amazon Macie で機密データ検出ジョブを作りました。
ジョブの実行中は「処理するオブジェクトの概数」が増え、スキャンは進んでいるように見えました。しかし、ジョブが完了するとこの値は 0 になり、期待した検出結果は出ませんでした。
CloudWatch などでもエラーは見つからず、原因を教えてください。
どう対応すればいいの?
仕様確認
結論として「処理するオブジェクトの概数」が 0 になるのは正常な動作です。
この値は実行でジョブがまだ処理していないオブジェクトのおおよその数です。そのため、処理が終われば 0 になります。0 になったこと自体は、設定や権限に問題があることを意味しません[1]。
また、1 回限りのジョブのステータスが「完了」であれば、ジョブは正常に実行されて終了しています[2]。ただし、「完了」はすべてのオブジェクトを分析できたという意味ではありません。権限不足などで分析できなかったオブジェクトがあっても、ジョブ自体は「完了」になることがあります。
検出結果が出ないときの確認ポイント
期待した検出結果が出ない場合は、次の点を確認してください:
-
対象オブジェクトのストレージクラス・ファイル形式
S3 Glacier Deep Archive などのサポート対象外のストレージクラスのオブジェクトは分析されません[3]。また、分析可能なファイル形式は、.csv、.json、.pdf、.gz 等の所定の拡張子を持つ形式です[4] -
ジョブのスコープ設定
除外条件は包含条件より優先されます[5]また、サンプリング率が 100% 未満の場合は、対象オブジェクトの一部のみが分析されます -
アクセス許可
対象バケットのバケットポリシーで Macie のサービスリンクロール (AWSServiceRoleForAmazonMacie) からのアクセスが拒否されていないか、SSE-KMS で暗号化されている場合は KMS キーポリシーで Macie による復号が許可されているか
参考資料
[1]Classification Job - Statistics
[2]Checking the status of a sensitive data discovery job - Job status values
[3]Supported storage classes and formats - Supported Amazon S3 storage classes
[4]Supported storage classes and formats - Supported file and storage formats
[5] Classification Job Creation - Scoping







