コンプライアンスやセキュリティ上の用途で、AWS CloudHSM のアクティビティを閲覧、監視したいです。たとえば、ユーザーがキーを作成したり使用したりした日時を把握したいです。
解決策
CloudHSM は、HSM インスタンスが収集した監査ログを Amazon CloudWatch ログに送信します。詳細については、「Amazon CloudWatch ログと AWS CloudHSM 監査ログを使用する」を参照してください。
CloudHSM 監査ログを閲覧するには、次の手順を実行します。
**注:**AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI エラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。
HSM クラスター ID を取得する
注: HSM クラスター ID がわかっている場合は、この手順をスキップしてください。
次のコマンドを実行し、HSM クラスターの IP アドレスを取得します。
cat /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg | grep hostname
次に、AWS CLI コマンド describe-clusters を実行します。
注: お使いのものでそれぞれ、your-region を AWS リージョンに、your-ip-address を HSM クラスターの IP アドレスに置き換えます。
aws cloudhsmv2 describe-clusters --region your-region --query 'Clusters[*].Hsms[?EniIp==`your-ip-address`].{ClusterId:ClusterId}'
次のような出力が表示されます。
"ClusterID": "cluster-likphkxygsn"
AWS マネジメントコンソール
次の手順を実行します。
-
お使いのリージョンで CloudWatch コンソールを開きます。
-
ナビゲーションペインで、[ログ] を選択します。
-
[フィルター] に、ロググループ名のプレフィックスを入力します。例: /aws/cloudhsm/cluster-likphkxygsn
-
[ログストリーム] では、クラスター内の HSM ID に関するログストリームを選択します。例: hsm-nwbbiqbj4jk
-
HSM デバイスから収集した監査イベントを表示するには、ログストリームを展開します。
-
正常に行われた CRYPTO_USER ログインを一覧表示するには、次のコマンドを実行します。
Opcode CN_LOGIN User Type CN_CRYPTO_USER Response SUCCESS
-
失敗した CRYPTO_USER ログインを一覧表示するには、次のコマンドを実行します。
Opcode CN_LOGIN User Type CN_CRYPTO_USER Response RET_USER_LOGIN_FAILURE
-
正常に行われたキー削除イベントを一覧表示するには、次のコマンドを実行します。
Opcode CN_DESTROY_OBJECT Response SUCCESS
opcode により、HSM で実行された管理コマンドを識別します。監査ログイベントにおける HSM 管理コマンドの詳細については、「HSM 監査ログのリファレンス」を参照してください。
AWS CLI
次の手順を実行します。
-
ロググループ名を一覧表示するには、describe-log-groups コマンドを実行します。
aws logs describe-log-groups --log-group-name-prefix "/aws/cloudhsm/cluster" --query 'logGroups[*].logGroupName'
-
正常に行われた CRYPTO_USER ログインを一覧表示するには、次のパラメータを指定して filter-log-events コマンドを実行します。
aws logs filter-log-events --log-group-name "/aws/cloudhsm/cluster-exampleabcd" --log-stream-name-prefix <hsm-ID> --filter-pattern "Opcode CN_LOGIN User Type CN_CRYPTO_USERResponse SUCCESS" --output text"
-
失敗した CRYPTO_USER ログインを一覧表示するには、次のパラメータを指定して filter-log-events コマンドを実行します。
aws logs filter-log-events --log-group-name "/aws/cloudhsm/cluster-exampleabcd" --log-stream-name-prefix <hsm ID> --filter-pattern "Opcode CN_LOGIN User Type CN_CRYPTO_USER Response RET_USER_LOGIN_FAILURE" --output text
-
正常に行われたキー削除を一覧表示するには、次のパラメータを指定して filter-log-events コマンドを実行します。
aws logs filter-log-events --log-group-name "/aws/cloudhsm/cluster-exampleabcd" --log-stream-name-prefix <hsm ID> --filter-pattern "Opcode CN_DESTROY_OBJECT Response SUCCESS" --output text
ロググループ、ログストリーム、およびフィルターイベントの使用方法の詳細については、「CloudWatch Logs で HSM 監査ログを表示する」を参照してください。
関連情報
HSM 監査ログを解釈する