Amazon Security Lake の開始方法 - Amazon Security Lake

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon Security Lake の開始方法

このセクションでは、Security Lake を有効にして使用を開始する方法について説明します。データレイク設定の構成方法とログ収集の設定方法について説明します。Security Lake を有効にして使用するには、 または AWS Management Console プログラムを使用します。どの方法を使用するにしても、まず AWS アカウント と管理ユーザーを設定する必要があります。それ以降の手順は、アクセス方法によって異なります。Security Lake コンソールは、開始するための合理化されたプロセスを提供し、データレイクの作成に必要なすべての AWS Identity and Access Management (IAM) ロールを作成します。

AWS アカウント 初期設定

にサインアップする AWS アカウント

がない場合は AWS アカウント、次の手順を実行して作成します。

にサインアップするには AWS アカウント
  1. https://portal.aws.amazon.com/billing/signup を開きます。

  2. オンラインの手順に従います。

    サインアップ手順の一環として、通話呼び出しを受け取り、電話キーパッドで検証コードを入力するように求められます。

    にサインアップすると AWS アカウント、 AWS アカウントのルートユーザーが作成されます。ルートユーザーには、アカウントのすべての AWS サービス とリソースへのアクセス権があります。セキュリティのベストプラクティスとして、ユーザーに管理アクセスを割り当て、ルートユーザーのみを使用してルートユーザーアクセスが必要なタスクを実行してください。

AWS サインアッププロセスが完了すると、 から確認メールが送信されます。https://aws.amazon.com/「アカウント」 をクリックして、いつでもアカウントの現在のアクティビティを表示し、アカウントを管理することができます。

管理アクセスを持つユーザーを作成する

にサインアップしたら AWS アカウント、 を保護し AWS アカウントのルートユーザー、 を有効にして AWS IAM Identity Center、日常的なタスクにルートユーザーを使用しないように管理ユーザーを作成します。

のセキュリティ保護 AWS アカウントのルートユーザー
  1. ルートユーザーを選択し、 AWS アカウント E メールアドレスを入力して、アカウント所有者AWS Management Consoleとして にサインインします。次のページでパスワードを入力します。

    ルートユーザーを使用してサインインする方法については、AWS サインイン ユーザーガイドの「ルートユーザーとしてサインインする」を参照してください。

  2. ルートユーザーの多要素認証 (MFA) を有効にします。

    手順については、「IAM ユーザーガイド」の AWS アカウント 「ルートユーザーの仮想 MFA デバイスを有効にする (コンソール)」を参照してください。

管理アクセスを持つユーザーを作成する
  1. IAM アイデンティティセンターを有効にします。

    手順については、「AWS IAM Identity Center ユーザーガイド」の「AWS IAM Identity Centerの有効化」を参照してください。

  2. IAM アイデンティティセンターで、ユーザーに管理アクセスを付与します。

    を ID ソース IAM アイデンティティセンターディレクトリ として使用する方法のチュートリアルについては、「 ユーザーガイド」の「デフォルト でユーザーアクセスを設定する IAM アイデンティティセンターディレクトリAWS IAM Identity Center 」を参照してください。

管理アクセス権を持つユーザーとしてサインインする
  • IAM アイデンティティセンターのユーザーとしてサインインするには、IAM アイデンティティセンターのユーザーの作成時に E メールアドレスに送信されたサインイン URL を使用します。

    IAM Identity Center ユーザーを使用してサインインする方法については、「 AWS サインイン ユーザーガイド」の AWS 「 アクセスポータルにサインインする」を参照してください。

追加のユーザーにアクセス権を割り当てる
  1. IAM アイデンティティセンターで、最小特権のアクセス許可を適用するというベストプラクティスに従ったアクセス許可セットを作成します。

    手順については、「AWS IAM Identity Center ユーザーガイド」の「権限設定を作成する」を参照してください。

  2. グループにユーザーを割り当て、そのグループにシングルサインオンアクセス権を割り当てます。

    手順については、「AWS IAM Identity Center ユーザーガイド」の「グループの参加」を参照してください。

Security Lake を有効にするために使用するアカウントを特定してください。

Security Lake は と統合 AWS Organizations して、組織内の複数のアカウントにわたるログ収集を管理します。Organizations に Security Lake を使用する場合は、組織の管理アカウントを使用して委任された Security Lake 管理者を指定する必要があります。次に、委任された管理者の認証情報を使用して Security Lake を有効にし、メンバーアカウントを追加し、そのメンバーの Security Lake を有効にする必要があります。詳細については、「を使用した複数のアカウントの管理 AWS Organizations」を参照してください。

また、Organizations の一部ではないスタンドアロンアカウントでは、組織統合なしで Security Lake を使用することもできます。

Amazon Security Lake を有効にする際の考慮事項

Security Lake を有効にする前に、以下の点を考慮してください

  • Security Lake はクロスリージョン管理機能を提供します。つまり、データ レイクを作成し、 AWS リージョン全体でログ収集を構成できます。サポートされているすべてのリージョンで Security Lake を有効にするには、サポートされている任意のリージョナルエンドポイントを選択できます。ロールアップリージョンを追加して、複数のリージョンのデータを 1 つのリージョンに集約することもできます。

  • サポートされているすべての AWS リージョンで Security Lake をアクティブ化することをお勧めします。このように設定することで、Security Lake はアクティブに使用されていないリージョンでも、許可されていないアクティビティや異常なアクティビティに関連するデータを収集できます。Security Lake がサポートされているすべてのリージョンでアクティブになっていない場合、Security Lake は複数のリージョンで使用している他のサービスからデータを収集する機能は低下します。

  • どのリージョンでも Security Lake を初めて有効にすると、アカウントに AWSServiceRoleForSecurityLake というサービスリンクロールが作成されます。このロールには、ユーザーに代わって他の を呼び出し、セキュリティデータレイクを運用 AWS サービス するアクセス許可が含まれます。サービスリンクロールの仕組みの詳細については、「IAM ユーザー ガイド」「サービスリンクロールの使用」を参照してください。Security Lake を委任されたSecurity Lake管理者として有効にすると、Security Lake は組織内の各メンバーアカウントにサービスリンクロールを作成します。

  • Security Lake は Amazon S3 Object Lock をサポートしていません。データレイクバケットが作成されると、S3 Object Lock はデフォルトで無効になります。バケットで Object Lock を有効にすると、データレイクへの正規化されたログデータの配信が中断されます。

コンソールの開始方法

このチュートリアルでは、 を使用して Security Lake を有効にして設定する方法について説明します AWS Management Console。の一部として AWS Management Console、Security Lake コンソールは開始するための合理化されたプロセスを提供し、データレイクの作成に必要なすべての AWS Identity and Access Management (IAM) ロールを作成します。

ステップ 1: ソースを設定する

Security Lake は、さまざまなソースから、 AWS アカウント および AWS リージョン全体からログとイベントデータを収集します。以下の手順に従って、Security Lake に収集させたいデータを特定してください。これらの手順は、ネイティブにサポートされている AWS サービス をソースとして追加する場合にのみ使用できます。カスタムソースの追加については、カスタムソースからのデータ収集 を参照してください。

ログソースコレクションを設定するには
  1. Security Lake コンソール https://console.aws.amazon.com/securitylake/ を開きます。

  2. ページの右上隅にある AWS リージョン セレクターを使用して、リージョンを選択します。Security Lake は、オンボーディング中に現在のリージョンと他のリージョンで有効にできます。

  3. [開始する] を選択します。

  4. [ログとイベントソースを選択] で、次のオプションのいずれかを選択します。

    1. デフォルトの AWS ソースの取り込み – 推奨オプションを選択した場合、 CloudTrail - S3 データイベントは取り込みに含まれません。これは、大量の CloudTrail - S3 データイベントを取り込むと、使用コストに大きな影響を与える可能性があるためです。このソースを取り込むには、[特定の AWS ソースの取り込み] オプションを選択します。

    2. 特定の AWS ソースを取り込む – このオプションでは、取り込む 1 つ以上のログソースとイベントソースを選択できます。

    注記

    アカウントで Security Lake を初めて有効にすると、選択したすべてのログソースとイベントソースが 15 日間の無料試用期間に含まれます。使用情報の詳細については、「使用状況と推定コストの確認」を参照してください。

  5. バージョン で、ログソースとイベントソースを取り込むデータソースのバージョンを選択します。

    重要

    指定したリージョンで新しいバージョンの AWS ログソースを有効にするために必要なロールアクセス許可がない場合は、Security Lake 管理者にお問い合わせください。詳細については、「ロールのアクセス許可の更新」を参照してください。

  6. [リージョンの選択] では、サポートされているすべてのリージョンからログとイベント ソースを取り込むか、特定のリージョンから取り込むかを選択します。[特定のリージョン] を選択した場合は、データを取り込む地域を選択します。

  7. サービスアクセスには、新しい IAM ロールを作成するか、ソースからデータを収集してデータレイクに追加する権限を Security Lake に付与する既存の IAM ロールを使用します。Security Lake を有効にしたすべてのリージョンで 1 つのロールが使用されます。

  8. [次へ] をクリックします。

ステップ 2: ストレージ設定とロールアップリージョンを定義する (オプション)

Security Lake にデータを保存する Amazon S3 ストレージクラスとその期間を指定できます。ロールアップリージョンを指定して、複数のリージョンのデータを統合することもできます。これらはオプションのステップです。詳細については、「Security Lakeのライフサイクル管理」を参照してください。

ストレージとロールアップの設定を行うには
  1. 複数の対象リージョンのデータを 1 つのロールアップリージョンに統合する場合は、[ロールアップリージョンの選択] で [ロールアップリージョンの追加] を選択します。ロールアップリージョンとそれに寄与するリージョンを指定します。1 つ以上のロールアップリージョンを設定できます。

  2. [ストレージクラスを選択] では、Amazon S3 ストレージクラスを選択します。デフォルトのストレージクラスは、S3 Standardです。それ以降にデータを別のストレージクラスに移行する場合は保持期間 (日単位) を指定し、[Add transition] を選択します。保持期間が終了すると、オブジェクトは期限切れになり、Amazon S3 はそれらを削除します。Amazon S3 ストレージ クラスと保持の詳細については、「保持管理」を参照してください。

  3. 最初のステップでサービスアクセス用にロールアップリージョンを選択した場合は、新しい IAM ロールを作成するか、Security Lake に複数のリージョンにデータを複製する権限を付与する既存の IAM ロールを使用してください。

  4. [次へ] をクリックします。

ステップ 3: データレイクを確認して作成する

Security Lake がデータを収集するソース、ロールアップ地域、および保持設定を確認してください。次に、データレイクを作成します。

データレイクを確認して作成するには
  1. Security Lake を有効にする際には、ログとイベントのソースリージョンロールアップリージョンストレージクラスを確認してください

  2. [作成] を選択します。

データレイクを作成すると、Security Lake コンソールに Summary ページが表示されます。このページでは、 リージョンロールアップリージョンの数の概要、サブスクライバーに関する情報、および問題について説明します

問題メニューには、Security Lake サービスまたは Amazon S3 バケットに影響を与えている過去 14 日間の問題の概要が表示されます。各問題の詳細については、Security Lake コンソールの問題ページを参照してください。

ステップ 4: 独自のデータを表示してクエリする

データレイクを作成したら、Amazon Athena または同様のサービスを使用して、 AWS Lake Formation データベースやテーブルからデータを表示およびクエリできます。コンソールを使用すると、Security Lake を有効にするために使用するロールに、Security Lake によってデータベース表示アクセス許可が自動的に付与されます。ロールには少なくとも Data Analyst 権限が必要です。権限レベルの詳細については、「Lake Formation ペルソナ」と「IAM 権限リファレンス」を参照してください。SELECT権限を付与する手順については、『AWS Lake Formation 開発者ガイド』の「名前付きリソースメソッドを使用した Data Catalog 権限の付与」を参照してください。

ステップ 5: サブスクライバーを作成する

データレイクを作成したら、データを使用するサブスクライバーを追加できます。サブスクライバーは、Amazon S3 バケット内のオブジェクトに直接アクセスするか、データレイクにクエリを実行することでデータを使用できます。サブスクライバーの詳細については、「Amazon Security Lake におけるサブスクライバー管理」を参照してください。

プログラムによる開始

このチュートリアルでは、Security Lake をプログラムで有効にして使用を開始する方法について説明します。Amazon Security Lake API を使用すると、Security Lake アカウント、データ、リソースへの包括的なプログラムによるアクセスが可能になります。または、 AWS コマンドラインツール、 AWS Command Line Interfaceまたは AWS Tools for PowerShell を使用するかAWS SDKs を使用して Security Lake にアクセスすることもできます。

ステップ 1: IAM ロールを作成する

Security Lake にプログラムでアクセスする場合、データレイクを設定するには AWS Identity and Access Management 、 (IAM) ロールをいくつか作成する必要があります。

重要

Security Lake コンソールを使用して Security Lake を有効にして設定する場合、これらの IAM ロールを作成する必要はありません。

以下のアクションを 1 つ以上実行する場合は、IAM でロールを作成する必要があります (リンクを選択すると、各アクションの IAM ロールに関する詳細が表示されます)。

前述のロールを作成したら、Security Lake を有効にするために使用しているロールに AmazonSecurityLakeAdministrator AWS 管理ポリシーをアタッチします。このポリシーにより、プリンシパルが Security Lake にオンボーディングし、Security Lake のすべてのアクションにアクセスすることが許可される、管理者許可が付与されます。

AmazonSecurityLakeMetaStoreManager AWS マネージドポリシーをアタッチして、データレイクを作成したり、Security Lake からデータをクエリしたりできます。このポリシーは、Security Lake がソースから受信する raw ログおよびイベントデータに対する抽出、変換、ロード (ETL) ジョブをサポートするために必要です。

ステップ 2: Amazon Security Lake を有効にする

Security Lake をプログラムで有効にするには、Security Lake API の CreateDataLakeオペレーションを使用します。を使用している場合は AWS CLI、create-data-lake コマンドを実行します。リクエストでは、configurationsオブジェクトのregionフィールドを使用して、Security Lake を有効にするリージョンのリージョンコードを指定します。リージョンコードのリストについては、「AWS 全般のリファレンス」の「Amazon Security Lake エンドポイント」を参照してください。

例 1

次のコマンド例では、 us-east-1および us-east-2リージョンで Security Lake を有効にします。どちらのリージョンでも、このデータレイクは Amazon S3 マネージドキーで暗号化されます。オブジェクトは 365 日後に期限切れになり、オブジェクトは ONEZONE_IA 60 日後に S3 ストレージクラスに移行します。この例は Linux、macOS、または Unix 用にフォーマットされており、読みやすさを向上させるためにバックスラッシュ (\) の行継続文字を使用しています。

$ aws securitylake create-data-lake \ --configurations '[{"encryptionConfiguration": {"kmsKeyId":"S3_MANAGED_KEY"},"region":"us-east-1","lifecycleConfiguration": {"expiration":{"days":365},"transitions":[{"days":60,"storageClass":"ONEZONE_IA"}]}}, {"encryptionConfiguration": {"kmsKeyId":"S3_MANAGED_KEY"},"region":"us-east-2","lifecycleConfiguration": {"expiration":{"days":365},"transitions":[{"days":60,"storageClass":"ONEZONE_IA"}]}}]' \ --meta-store-manager-role-arn "arn:aws:iam:us-east-1:123456789012:role/service-role/AmazonSecurityLakeMetaStoreManager"

例 2

次のコマンド例では、 us-east-2リージョンで Security Lake を有効にします。このデータレイクは、 AWS Key Management Service () で作成されたカスタマーマネージドキーで暗号化されますAWS KMS。オブジェクトは 500 日後に期限切れになり、オブジェクトは GLACIER 30 日後に S3 ストレージクラスに移行します。この例は Linux、macOS、または Unix 用にフォーマットされており、読みやすさを向上させるためにバックスラッシュ (\) の行継続文字を使用しています。

$ aws securitylake create-data-lake \ --configurations '[{"encryptionConfiguration": {"kmsKeyId":"1234abcd-12ab-34cd-56ef-1234567890ab"},"region":"us-east-2","lifecycleConfiguration": {"expiration":{"days":500},"transitions":[{"days":30,"storageClass":"GLACIER"}]}}]' \ --meta-store-manager-role-arn "arn:aws:iam:us-east-1:123456789012:role/service-role/AmazonSecurityLakeMetaStoreManager"
注記

Security Lake を既に有効にしていて、リージョンまたはソースの設定を更新する場合は、 UpdateDataLakeオペレーションを使用するか、 を使用する場合は AWS CLI update-data-lake コマンドを使用します。CreateDataLake オペレーションは使用しないでください。

ステップ 3: ソースを設定する

Security Lake は、さまざまなソースから、 AWS アカウント および AWS リージョン全体からログとイベントデータを収集します。以下の手順に従って、Security Lake に収集させたいデータを特定してください。これらの手順は、ネイティブにサポートされている AWS サービス をソースとして追加する場合にのみ使用できます。カスタムソースの追加については、カスタムソースからのデータ収集 を参照してください。

プログラムで 1 つ以上のコレクションソースを定義するには、Security Lake API の CreateAwsLogSourceオペレーションを使用します。ソースごとに、sourceNameパラメータに地域固有の値を指定します。オプションで追加のパラメーターを使用して、ソースの範囲を特定のアカウント (accounts) または特定のバージョン (sourceVersion) に制限します。

注記

リクエストにオプションのパラメータを含めない場合、Security Lake は、除外するパラメータに応じて、指定されたソースのすべてのアカウントまたはすべてのバージョンにリクエストを適用します。たとえば、ある組織の委任された Security Lake 管理者がaccountsパラメータを除外した場合、Security Lake はリクエストを組織内のすべてのアカウントに適用します。同様に、sourceVersionパラメータを除外すると、Security Lake は指定されたソースのすべてのバージョンにリクエストを適用します。

Security Lake を有効にしていないリージョンをリクエストで指定すると、エラーが発生します。このエラーに対処するには、regionsアレイに Security Lake を有効にしたリージョンのみを指定するようにしてください。または、リージョンで Security Lake を有効にしてからリクエストを再度送信することもできます。

アカウントで Security Lake を初めて有効にすると、選択したすべてのログソースとイベントソースが 15 日間の無料試用期間に含まれます。使用情報の詳細については、「使用状況と推定コストの確認」を参照してください。

ステップ 4: ストレージ設定とロールアップリージョンを設定する (オプション)

Security Lake にデータを保存する Amazon S3 ストレージクラスとその期間を指定できます。ロールアップリージョンを指定して、複数のリージョンのデータを統合することもできます。これらはオプションのステップです。詳細については、「Security Lakeのライフサイクル管理」を参照してください。

Security Lake を有効にするときにプログラムでターゲット目標を定義するには、Security Lake API の CreateDataLakeオペレーションを使用します。Security Lake を既に有効にしていて、ターゲット目標を定義する場合は、 UpdateDataLakeオペレーションではなく CreateDataLakeオペレーションを使用します。

いずれの操作でも、サポートされているパラメータを使用して必要な設定を指定します。

  • ロールアップリージョンを指定するには、 regionフィールドを使用して、ロールアップリージョンにデータを提供するリージョンを指定します。replicationConfiguration オブジェクトのregions配列で、各ロールアップリージョンのリージョンコードを指定します。リージョンコードのリストについては、「AWS 全般のリファレンス」の「Amazon Security Lake エンドポイント」を参照してください。

  • データの保存設定を指定するには、lifecycleConfigurationパラメータを使用します。

    • transitionsには、特定の Amazon S3 ストレージクラス(storageClass)に S3 オブジェクトを保存する合計日数 (days) を指定します。

    • expirationには、オブジェクトが作成されてから、任意のストレージクラスを使用して Amazon S3 にオブジェクトを保存する合計日数を指定します。この保持期間が終了すると、オブジェクトは期限切れになり、Amazon S3 はそれらを削除します。

    Security Lake は、指定された保持設定を configurations オブジェクトの region フィールドで指定したリージョンに適用します。

例えば、次のコマンドは、ロールアップリージョンap-northeast-2として を使用してデータレイクを作成します。us-east-1 リージョンは、そのap-northeast-2リージョンにデータを提供します。この例では、データレイクに追加されたオブジェクトの有効期限を 10 日間設定します。

$ aws securitylake create-data-lake \ --configurations '[{"encryptionConfiguration": {"kmsKeyId":"S3_MANAGED_KEY"},"region":"us-east-1","replicationConfiguration": {"regions": ["ap-northeast-2"],"roleArn":"arn:aws:iam::123456789012:role/service-role/AmazonSecurityLakeS3ReplicationRole"},"lifecycleConfiguration": {"expiration":{"days":10}}}]' \ --meta-store-manager-role-arn "arn:aws:iam::123456789012:role/service-role/AmazonSecurityLakeMetaStoreManager"

これで、データレイクが作成されました。Security Lake API の ListDataLakesオペレーションを使用して、各リージョンで Security Lake とデータレイク設定が有効になっていることを確認します。

データレイクの作成時に問題またはエラーが発生した場合は、 ListDataLakeExceptionsオペレーションを使用して例外のリストを表示し、 CreateDataLakeExceptionSubscription オペレーションで例外をユーザーに通知できます。詳細については、「データレイクステータスのトラブルシューティング」を参照してください。

ステップ 5: 独自のデータを表示してクエリする

データレイクを作成したら、Amazon Athena または同様のサービスを使用して、 AWS Lake Formation データベースやテーブルからデータを表示およびクエリできます。Security Lake をプログラムで有効にすると、データベースビューのアクセス許可は自動的に付与されません。のデータレイク管理者アカウントは、関連するデータベースとテーブルのクエリに使用する IAM ロールにアクセスSELECT許可を付与 AWS Lake Formation する必要があります。ロールには少なくとも Data Analyst 権限が必要です。権限レベルの詳細については、「Lake Formation ペルソナ」と「IAM 権限リファレンス」を参照してください。SELECT権限を付与する手順については、『AWS Lake Formation 開発者ガイド』の「名前付きリソースメソッドを使用した Data Catalog 権限の付与」を参照してください。

ステップ 6: サブスクライバーを作成する

データレイクを作成したら、データを使用するサブスクライバーを追加できます。サブスクライバーは、Amazon S3 バケット内のオブジェクトに直接アクセスするか、データレイクにクエリを実行することでデータを使用できます。サブスクライバーの詳細については、「Amazon Security Lake におけるサブスクライバー管理」を参照してください。