AWS CloudTrail での Amazon EFS API コールのログ記録
Amazon EFS は、AWS CloudTrail と統合されています。これは、Amazon EFS のユーザー、ロール、または AWS のサービスで実行されたアクションを記録するためのサービスです。CloudTrail は、Amazon EFS コンソールからの呼び出しと Amazon EFS API オペレーションへのコード呼び出しを含む、Amazon EFS のすべての API コールをイベントとしてキャプチャします。
証跡を作成する場合は、Amazon EFS のイベントなど、Amazon S3 バケットへの CloudTrail イベントの継続的な配信を有効にすることができます。証跡を設定しない場合でも、CloudTrail コンソールの [イベント履歴] で最新のイベントを表示できます。CloudTrail で収集された情報を使用して、Amazon EFS に対するリクエスト、リクエスト元の IP アドレス、リクエスト者、リクエスト日時などの詳細を確認できます。
詳細については、AWS CloudTrail ユーザーガイドを参照してください。
CloudTrail 内の Amazon EFS 情報
CloudTrail は、AWS アカウントを作成すると、その中で有効になります。Amazon EFS でアクティビティが発生すると、そのアクティビティは [イベント履歴] の AWS サービスのイベントとともに CloudTrail イベントに記録されます。最近のイベントは、AWS アカウント で表示、検索、ダウンロードできます。詳細については、「CloudTrail イベント履歴の操作」を参照してください。
Amazon EFS のイベントなどの、AWS アカウント におけるイベントを継続的に記録するには、追跡を作成します。証跡により、CloudTrail はログファイルを Amazon S3 バケットに配信できます。デフォルトでは、コンソールで証跡を作成するときに、証跡がすべての AWS リージョン に適用されます。証跡では、AWS パーティション内のすべての AWS リージョン からのイベントがログに記録され、指定した Amazon S3 バケットにログファイルが配信されます。さらに、CloudTrail・ログで収集したイベントデータをより詳細に分析し、それに基づく対応するためにその他の AWS サービスを設定できます。詳細については、『AWS CloudTrail ユーザーガイド:』の以下のトピックを参照してください。
すべてのAmazon EFS API コールは、CloudTrail によってログに記録されます。例えば、CreateFileSystem
、CreateMountTarget
、および CreateTags
オペレーションへの呼び出しによって CloudTrail ログファイルにエントリが生成されます。
各イベントまたはログエントリには、リクエストの生成者に関する情報が含まれます。アイデンティティ情報は、以下を判別するのに役立ちます:
-
リクエストが、ルートユーザーまたは AWS Identity and Access Management (IAM) ユーザーのどちらかの認証情報を使用して送信された場合。
-
リクエストがロールまたはフェデレーションユーザーのテンポラリなセキュリティ認証情報を使用して行われたかどうか。
-
リクエストが別の AWS サービスによって行われたかどうか。
詳細については、「AWS CloudTrail ユーザーガイド」の「CloudTrail userIdentity エレメント」を参照してください。
Amazon EFS ログファイルエントリの概要
「トレイル」は、指定した Simple Storage Service (Amazon S3) バケットにイベントをログファイルとして配信するように設定できます。CloudTrail のログファイルは、単一か複数のログエントリを含みます。イベント は、任意の出典からの単一のリクエストを表し、リクエストされたアクション、アクションの日時、リクエストパラメータなどに関する情報が含まれます。CloudTrail・ログファイルは、パブリック API コールの順序付けられたスタックトレースではないため、特定の順序では表示されません。
次の例は、ファイルシステムのタグがコンソールから作成されたときの CreateTags
オペレーションを示す CloudTrail ログエントリを示しています。
{ "eventVersion": "1.06", "userIdentity": { "type": "Root", "principalId": "111122223333", "arn": "arn:aws:iam::111122223333:root", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "2017-03-01T18:02:37Z" } } }, "eventTime": "2017-03-01T19:25:47Z", "eventSource": "elasticfilesystem.amazonaws.com", "eventName": "CreateTags", "awsRegion": "us-west-2", "sourceIPAddress": "192.0.2.0", "userAgent": "console.amazonaws.com", "requestParameters": { "fileSystemId": "fs-00112233", "tags": [{ "key": "TagName", "value": "AnotherNewTag" } ] }, "responseElements": null, "requestID": "dEXAMPLE-feb4-11e6-85f0-736EXAMPLE75", "eventID": "eEXAMPLE-2d32-4619-bd00-657EXAMPLEe4", "eventType": "AwsApiCall", "apiVersion": "2015-02-01", "recipientAccountId": "111122223333" }
次の例は、ファイルシステムのタグがコンソールから削除されたときの DeleteTags
アクションを示す CloudTrail ログエントリを示しています。
{ "eventVersion": "1.06", "userIdentity": { "type": "Root", "principalId": "111122223333", "arn": "arn:aws:iam::111122223333:root", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "2017-03-01T18:02:37Z" } } }, "eventTime": "2017-03-01T19:25:47Z", "eventSource": "elasticfilesystem.amazonaws.com", "eventName": "DeleteTags", "awsRegion": "us-west-2", "sourceIPAddress": "192.0.2.0", "userAgent": "console.amazonaws.com", "requestParameters": { "fileSystemId": "fs-00112233", "tagKeys": [] }, "responseElements": null, "requestID": "dEXAMPLE-feb4-11e6-85f0-736EXAMPLE75", "eventID": "eEXAMPLE-2d32-4619-bd00-657EXAMPLEe4", "eventType": "AwsApiCall", "apiVersion": "2015-02-01", "recipientAccountId": "111122223333" }
EFS サービスにリンクされたロールのログエントリ
Amazon EFS サービスにリンクされたロールは、AWS リソースへの API コールを行います。EFS サービスにリンクされたロールによって行われたコールには、username: AWSServiceRoleForAmazonElasticFileSystem
を含む CloudTrail ログエントリが表示されます。EFS およびサービスにリンクされたロールの詳細については、「Amazon EFS のサービスリンクロールの使用」を参照してください。
次の例は、Amazon EFS が AWSServiceRoleForAmazonElasticFileSystem サービスにリンクされたロールを作成したときの CreateServiceLinkedRole
アクションを示す CloudTrail ログエントリです。
{ "eventVersion": "1.05", "userIdentity": { "type": "IAMUser", "principalId": "111122223333", "arn": "arn:aws:iam::111122223333:user/user1", "accountId": "111122223333", "accessKeyId": "A111122223333", "userName": "user1", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "2019-10-23T22:45:41Z" } }, "invokedBy": "elasticfilesystem.amazonaws.com” }, "eventTime": "2019-10-23T22:45:41Z", "eventSource": "iam.amazonaws.com", "eventName": "CreateServiceLinkedRole", "awsRegion": "us-east-1", "sourceIPAddress": "192.0.2.0", "userAgent": "user_agent", "requestParameters": { "aWSServiceName": "elasticfilesystem.amazonaws.com” }, "responseElements": { "role": { "assumeRolePolicyDocument": "111122223333-10-111122223333Statement111122223333Action111122223333AssumeRole111122223333Effect%22%3A%20%22Allow%22%2C%20%22Principal%22%3A%20%7B%22Service%22%3A%20%5B%22 elasticfilesystem.amazonaws.com%22%5D%7D%7D%5D%7D", "arn": "arn:aws:iam::111122223333:role/aws-service-role/elasticfilesystem.amazonaws.com/AWSServiceRoleForAmazonElasticFileSystem", "roleId": "111122223333", "createDate": "Oct 23, 2019 10:45:41 PM", "roleName": "AWSServiceRoleForAmazonElasticFileSystem", "path": "/aws-service-role/elasticfilesystem.amazonaws.com/“ } }, "requestID": "11111111-2222-3333-4444-abcdef123456", "eventID": "11111111-2222-3333-4444-abcdef123456", "eventType": "AwsApiCall", "recipientAccountId": "111122223333" }
次の例は、AWSServiceRoleForAmazonElasticFileSystem サービスにリンクされたロールによって行われた CreateNetworkInterface
アクションとして sessionContext
に記録された CloudTrail ログエントリです。
{ "eventVersion": "1.05", "userIdentity": { "type": "AssumedRole", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:sts::0123456789ab:assumed-role/AWSServiceRoleForAmazonElasticFileSystem/0123456789ab", "accountId": "0123456789ab", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::0123456789ab:role/aws-service-role/elasticfilesystem.amazonaws.com/AWSServiceRoleForAmazonElasticFileSystem", "accountId": "0123456789ab", "userName": "AWSServiceRoleForAmazonElasticFileSystem" }, "webIdFederationData": {}, "attributes": { "mfaAuthenticated": "false", "creationDate": "2019-10-23T22:50:05Z" } }, "invokedBy": "AWS Internal" }, "eventTime": "20You 19-10-23T22:50:05Z", "eventSource": "ec2.amazonaws.com", "eventName": "CreateNetworkInterface", "awsRegion": "us-east-1", "sourceIPAddress": "elasticfilesystem.amazonaws.com”, "userAgent": "elasticfilesystem.amazonaws.com", "requestParameters": { "subnetId": "subnet-71e2f83a", "description": "EFS mount target for fs-1234567 (fsmt-1234567)", "groupSet": {}, "privateIpAddressesSet": {} }, "responseElements": { "requestId": "0708e4ad-03f6-4802-b4ce-4ba987d94b8d", "networkInterface": { "networkInterfaceId": "eni-0123456789abcdef0", "subnetId": "subnet-12345678", "vpcId": "vpc-01234567", "availabilityZone": "us-east-1b", "description": "EFS mount target for fs-1234567 (fsmt-1234567)", "ownerId": "666051418590", "requesterId": "0123456789ab", "requesterManaged": true, "status": "pending", "macAddress": "00:bb:ee:ff:aa:cc", "privateIpAddress": "192.0.2.0", "privateDnsName": "ip-192-0-2-0.ec2.internal", "sourceDestCheck": true, "groupSet": { "items": [ { "groupId": "sg-c16d65b6", "groupName": "default" } ] }, "privateIpAddressesSet": { "item": [ { "privateIpAddress": "192.0.2.0", "primary": true } ] }, "tagSet": {} } }, "requestID": "11112222-3333-4444-5555-666666777777", "eventID": "aaaabbbb-1111-2222-3333-444444555555", "eventType": "AwsApiCall", "recipientAccountId": "111122223333" }
EFS 認証のログエントリ
Amazon EFS で NFS クライアントが認可されると、CloudTrail イベントとして NewClientConnection
と UpdateClientConnection
が発行されます。NewClientConnection
イベントは、最初の接続の直後、および再接続の直後に接続が認可されたときに発行されます。UpdateClientConnection
は接続が再承認され、許可されるアクションのリストが変更された場合に発行されます。このイベントは、許可された新しいアクションの ClientMount
がリストに含まれていない場合にも発生します。EFS 認可の詳細については、「IAM を使用してファイルシステムのデータアクセスを制御する」を参照してください。
次は、NewClientConnection
イベントを示す CloudTrail ログエントリの例です。
{ "eventVersion": "1.05", "userIdentity": { "type": "AssumedRole", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:sts::0123456789ab:assumed-role/abcdef0123456789", "accountId": "0123456789ab", "accessKeyId": "AKIAIOSFODNN7EXAMPLE ", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::0123456789ab:role/us-east-2", "accountId": "0123456789ab", "userName": "username" }, "webIdFederationData": {}, "attributes": { "mfaAuthenticated": "false", "creationDate": "2019-12-23T17:50:16Z" }, "ec2RoleDelivery": "1.0" } }, "eventTime": "2019-12-23T18:02:12Z", "eventSource": "elasticfilesystem.amazonaws.com", "eventName": "NewClientConnection", "awsRegion": "us-east-2", "sourceIPAddress": "AWS Internal", "userAgent": "elasticfilesystem", "requestParameters": null, "responseElements": null, "eventID": "27859ac9-053c-4112-aee3-f3429719d460", "readOnly": true, "resources": [ { "accountId": "0123456789ab", "type": "AWS::EFS::FileSystem", "ARN": "arn:aws:elasticfilesystem:us-east-2:0123456789ab:file-system/fs-01234567" }, { "accountId": "0123456789ab", "type": "AWS::EFS::AccessPoint", "ARN": "arn:aws:elasticfilesystem:us-east-2:0123456789ab:access-point/fsap-0123456789abcdef0" } ], "eventType": "AwsServiceEvent", "recipientAccountId": "0123456789ab", "serviceEventDetails": { "permissions": { "ClientRootAccess": true, "ClientMount": true, "ClientWrite": true }, "sourceIpAddress": "10.7.3.72" } }
encrypted-at-rest ファイルシステムの Amazon EFS ログファイルエントリ
Amazon EFS では、保管時の暗号化、転送中の暗号化のいずれかまたは両方をファイルシステムに使用できます。詳細については、「Amazon EFS でのデータの暗号化」を参照してください。
Amazon EFS は、データキーを生成して Amazon EFS データを復号化する AWS KMS API リクエストを行うときに、暗号化コンテキストを送信します。ファイルシステム ID は、保管時に暗号化されるすべてのファイルシステムの暗号化コンテキストです。CloudTrailログエントリの{75}フィールドでは、暗号化コンテキストは次のようになります。
"EncryptionContextEquals": {}
"aws:elasticfilesystem:filesystem:id" : "fs-4EXAMPLE
"