チュートリアル: S3 Object Lambdaと Amazon Comprehend を使用した PII データの検出と編集 - Amazon Simple Storage Service

チュートリアル: S3 Object Lambdaと Amazon Comprehend を使用した PII データの検出と編集

複数のアプリケーションおよびユーザーがアクセスするための共有データセットに Amazon S3 を使用する場合、個人を特定できる情報 (PII) などの特権情報を許可されたエンティティのみに制限することが重要です。例えば、マーケティングアプリケーションが PII を含むデータを使用する場合、データのプライバシー要件を満たすために、まず PII データをマスクする必要があります。また、分析アプリケーションで製造オーダーのインベントリデータセットを使用する場合、意図しないデータ漏洩を防ぐために、まず顧客のクレジットカード情報を編集する必要があります。

S3 Object Lambda と Amazon Comprehend により事前に構築された AWS Lambda 関数を使用すると、S3 から取得した PII データを、アプリケーションに返す前に保護できます。具体的な内容は以下のとおりです。組み込みの Lambda 関数を編集関数として作使用し、S3 Object Lambda アクセスポイントにアタッチします。アプリケーション (Analytics アプリケーションなど) が標準 S3 GET リクエストを送信する場合、S3 Object Lambda アクセスポイントを介して行われたこれらのリクエストは、事前作成された編集用 Lambda 関数を呼び出し、サポートしている S3 アクセスポイントを介して S3 バケットから取得した PII データを検出して修正します。次に、S3 Object Lambda アクセスポイントは、編集された結果をアプリケーションに返します。


                これは、S3 Object Lambda ワークフロー図です。

プロセスでは、事前に構築された Lambda 関数は Amazon Comprehend (自然言語処理 (NLP) サービス) を使用して、PII がテキストにどのように存在するかに関係なく (数値、または単語と数字の組み合わせなど)、PII の表現方法のバリエーションをキャプチャします。Amazon Comprehend は、テキスト内のコンテキストを使用して、4桁の数字が PIN、社会保障番号 (SSN) の最後の 4 桁の数字であるか、または年であるかを理解することもできます。Amazon Comprehend は UTF-8 形式のテキストファイルを処理し、精度に影響を与えずに PII を大規模に保護します。詳細については、Amazon Comprehend デベロッパーガイドの「Amazon Comprehend とは?」を参照してください。

目的

このチュートリアルでは、事前に構築された Lambda 関数 ComprehendPiiRedactionS3ObjectLambda で S3 Object Lambda を使用する方法を学習します。この関数は、Amazon Comprehend を使用して PII エンティティを検出します。次に、これらのエンティティをアスタリスクに置き換えて墨消しします。PII を編集することで、機密データを隠すことができ、セキュリティとコンプライアンスに役立ちます。

また、AWS Serverless Application Repository で事前作成された AWS Lambda 関数を操作して、S3 Object Lambda と連携してデプロイメントを容易にする方法も学びます。

前提条件:許可を持つ IAM ユーザーを作成する

このチュートリアルを開始する前に、正しいアクセス許可を持つ AWS Identity and Access Management ユーザー (IAM ユーザー) としてサインインできる AWS アカウントが必要です。

チュートリアル用の IAM ユーザーを作成できます。このチュートリアルを完了するには、IAM ユーザーが次の IAM ポリシーをアタッチして、関連する AWS リソースにアクセスし、特定のアクションを実行する必要があります。

注記

このチュートリアルでは、わかりやすいように IAM ユーザーを作成して使用します。このチュートリアルを完了したら、忘れずに「IAM ユーザーを削除する」を行います。本番環境で使用する場合は、IAM ユーザーガイドの「IAM でのセキュリティのベストプラクティス」に従うことをお勧めします。ベストプラクティスでは、人間のユーザーと ID プロバイダーとのフェデレーションにより、一時的な認証情報を使用して AWS にアクセスする必要があります。追加のベストプラクティスとして、ワークロードでは一時的な認証情報で IAM ロールを使用し、AWS にアクセス必要があります。AWS IAM Identity Center を使用して一時的な認証情報を持つユーザーを作成する方法については、「AWS IAM Identity Center ユーザーガイド」の「Getting started」(開始方法) を参照してください。

このチュートリアルでは、フルアクセスポリシーも使用します。実稼働環境では、代わりに、セキュリティのベストプラクティスに従って、ユースケースに必要な最小限の許可のみを付与することをお勧めします。

IAM ユーザーには次のものが必要です。AWS マネージドポリシー:

  • AmazonS3FullAccess – Object Lambda アクセスポイントを作成および使用するための許可を含む、すべての Amazon S3 アクションに対する許可を付与します。

  • AWSLambda_FullAccess – すべての Lambda アクションに許可を付与します。

  • AWSCloudFormationFullAccess – すべてのAWS CloudFormationのアクションに許可を付与します。

  • IAMFullAccess – すべての IAM アクションに許可を付与します。

  • IAMAccessAnalyzerReadOnlyAccess – IAM Access Analyzer によって提供されるすべてのアクセス情報を読み取る許可を付与します。

IAM ユーザーを作成するときに、これらの既存のポリシーを直接アタッチできます。IAM ユーザーを作成する方法の詳細については、IAM ユーザーガイドの「IAM ユーザーの作成 (コンソール)」を参照してください。

さらに、IAM ユーザーにはカスタマーマネージドポリシーが必要です。IAM ユーザーにすべての AWS Serverless Application Repository リソースとアクションへの許可を付与するには、IAM ポリシーを作成し、ポリシーを IAM ユーザーにアタッチする必要があります。

IAM ポリシーを作成して IAM ユーザーにアタッチするには
  1. AWS Management Console にサインインして、IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. 左のナビゲーションペインの [ポリシー] を選択します。

  3. [Create policy] を選択します。

  4. Service の [Visual editor] タブで、[サービスの選択] を選択します。次に、[Serverless Application Repository] を選択します。

  5. [アクション] の [手動アクション] の下で、このチュートリアルでは、[すべての Serverless Application Repository アクション (serverlessrepo:*)] を選択します。

    セキュリティのベストプラクティスとは、ユーザーが必要とするアクションとリソースに対する許可を、ユースケースに基づいて付与することです。詳細については、IAM ユーザーガイドの「IAM でのセキュリティベストプラクティス」を参照してください。

  6. [リソース] で、このチュートリアルでは、[すべてのリソース] を選択します。

    ベストプラクティスは、特定のアカウントの特定のリソースに対してのみ許可を定義することです。または、条件キーを使用して、最小の特権を付与することもできます。詳細については、IAM ユーザーガイドの「最小限の特権を付与」を参照してください。

  7. [Next: Tags] (次へ: タグ) を選択します。

  8. [次へ: レビュー] を選択します。

  9. [ポリシーの確認] ページで、作成するポリシーの [名前] (例、tutorial-serverless-application-repository) と [説明] (オプション) を入力します。ポリシー概要を確認して、目的のアクセス許可を付与していることを確認し、[Create policy] (ポリシーの作成) を選択して新しいポリシーを保存します。

  10. 左のナビゲーションペインで、[ユーザー] を選択します。次に、このチュートリアルの IAM ユーザーを選択します。

  11. 選択したユーザーの [概要] ページで、[許可] タブを選択してから、[許可を追加] を選択します。

  12. [権限の付与] で、[既存のポリシーを直接アタッチします] を選択します。

  13. 今、作成したポリシーの横にあるチェックボックスを選択し (例、tutorial-serverless-application-repository)、次に [次へ: レビュー] を選択します。

  14. [許可概要] で、概要を確認し、意図したポリシーを付与したことを確認します。次に、[許可を追加] を選択します。

ステップ 1: S3 バケットを作成する。

変換する元のデータを保存するバケットを作成します。

バケットを作成するには
  1. AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/) を開きます。

  2. 左側のナビゲーションペインで、[バケット] を選択します。

  3. [Create bucket (バケットの作成)] を選択します。

    [バケットを作成する] ページが開きます。

  4. [バケット名] に、バケットの名前 (例、tutorial-bucket) を入力します。

    Amazon S3 のバケット命名規則の詳細については、「バケットの名前付け」を参照してください。

  5. [リージョン] で、バケットを保存する AWS リージョン を選択します。

    バケットのリージョンの詳細については、「バケットの概要」を参照してください。

  6. [このバケットのパブリックアクセス設定をブロック] で、デフォルト設定 (ブロックすべてパブリックアクセスが有効) のままであることを確認します。

    ユースケースでオフにする必要のある設定が 1 つ以上あることがわかっている場合を除き、すべてのブロックパブリックアクセス設定を有効にしておくことをお勧めします。パブリックアクセスのブロックの詳細については、Amazon S3 ストレージへのパブリックアクセスのブロック を参照してください。

  7. 残りの設定はデフォルトのままにしておきます。

    (オプション) 特定のユースケースに追加のバケット設定を設定する場合は、「バケットの作成」を参照してください。

  8. [バケットの作成] を選択します。

ステップ 2: S3 バケットにファイルをアップロード

名前、銀行情報、電話番号、SSN など、さまざまなタイプの既知の PII データを含むテキストファイルを S3 バケットにアップロードします。このテキストファイルは、このチュートリアルの後半で PII を編集します。

例えば、次の tutorial.txt ファイルをアップロードできます。これは、Amazon Comprehend からの入力ファイルの例です。

Hello Zhang Wei, I am John. Your AnyCompany Financial Services, LLC credit card account 1111-0000-1111-0008 has a minimum payment of $24.53 that is due by July 31st. Based on your autopay settings, we will withdraw your payment on the due date from your bank account number XXXXXX1111 with the routing number XXXXX0000. Your latest statement was mailed to 100 Main Street, Any City, WA 98121. After your payment is received, you will receive a confirmation text message at 206-555-0100. If you have questions about your bill, AnyCompany Customer Service is available by phone at 206-555-0199 or email at support@anycompany.com.
バケットにファイルをアップロードするには
  1. AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/) を開きます。

  2. 左側のナビゲーションペインで、[バケット] を選択します。

  3. [バケット] リストで、ステップ 1 で作成したバケットの名前を選択し (例、tutorial-bucket)、ファイルをアップロードします。

  4. バケットの [Objects (オブジェクト)] タブで、[Upload (アップロード)] を選択します。

  5. [アップロード] ページの [ファイルとフォルダ] の下で、[ファイルを追加] を選択します。

  6. アップロードするファイルを選択し、続いて [Open (オープン)] を選択します。例えば、前述した tutorial.txt ファイルの例をアップロードできます。

  7. [Upload(アップロード)] を選択します。

ステップ 3: S3 アクセスポイントの作成

S3 Object Lambda アクセスポイントを使用して元のデータにアクセスし、変換するには、S3 アクセスポイントを作成し、ステップ 1 で作成した S3 バケットに関連付けます。アクセスポイントは、変換するオブジェクトと同じ AWS リージョン に存在する必要があります。

このチュートリアルの後半では、このアクセスポイントを Object Lambda アクセスポイントのサポートアクセスポイントとして使用します。

アクセスポイントを作成するには
  1. AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/) を開きます。

  2. 左のナビゲーションペインで、[アクセスポイント] を選択します。

  3. [アクセスポイント] ページで、[アクセスポイントの作成] を選択します。

  4. [アクセスポイント名] フィールドに、アクセスポイントの名前を入力します (例、tutorial-pii-access-point)。

    アクセスポイントの名前付けの詳細については、「Amazon S3 アクセスポイントの命名規則」を参照してください。

  5. [バケット名] フィールドに、ステップ 1 で作成したバケットの名前を入力します(例、tutorial-bucket)。S3 は、アクセスポイントをこのバケットにアタッチします。

    (オプション) [S3 を参照)] を選択して、アカウント内のバケットを参照および検索できます。[S3 を参照] を選択した場合は、目的のバケットを選択し、[パスの選択] を選択して、[バケット名] フィールドにバケットの名前を入力します。

  6. [ネットワークオリジン] で、[インターネット] を選択します。

    アクセスポイントのネットワークオリジンの詳細については、「Virtual Private Cloud に制限されたアクセスポイントの作成」を参照してください。

  7. デフォルトでは、アクセスポイントに対してすべてのブロックパブリックアクセス設定が有効になります。パブリックアクセスブロック設定は、すべてを有効にしておくことを推奨します。詳細については、「アクセスポイントへのパブリックアクセスの管理」を参照してください。

  8. その他のすべてのアクセスポイント設定で、デフォルトの設定を保持します。

    (オプション) アクセスポイントの設定は、ユースケースをサポートするように変更できます。このチュートリアルでは、デフォルトの設定を保持することをお勧めします。

    (オプション) アクセスポイントへのアクセスを管理する必要がある場合は、アクセスポイントポリシーを指定できます。詳細については、「アクセスポイントポリシーの例」を参照してください。

  9. [アクセスポイントの作成] を選択します。

ステップ 4: 事前構築された Lambda 関数の設定とデプロイ

PII データを編集するには、事前に構築された AWS Lambda関数 ComprehendPiiRedactionS3ObjectLambda を S3 Object Lambda アクセスポイントと共に設定、デプロイします。

Lambda 関数の設定とデプロイ
  1. AWS Management Console にサインインし、AWS Serverless Application Repository で ComprehendPiiRedactionS3ObjectLambda 関数を表示します。

  2. [アプリケーション名] の下の [アプリケーションの設定] では、このチュートリアルのデフォルト値 (ComprehendPiiRedactionS3ObjectLambda) を保持します。

    (オプション) このアプリケーションに付ける名前を入力できます。同じ共有データセットに対して異なるアクセスニーズを持つ複数の Lambda 関数を設定する場合は、これを行うことをお勧めします。

  3. [MaskCharacter] で、デフォルト値 (*) を保持します。マスク文字は、編集された PII エンティティの各文字を置き換えます。

  4. [MaskMode] で、デフォルト値 (MASK) を保持します。MaskMode の値は、PII エンティティを MASK 文字または PII_ENTITY_TYPE 値に変更することを指定します。

  5. 指定したタイプのデータを墨消しするには、[PiiEntityTypes] で、デフォルト値の ALL を保持します。PiiEntityTypes の値は、墨消しの対象となる PII エンティティタイプを指定します。

    サポートされる PII エンティティタイプの一覧の詳細については、Amazon Comprehend デベロッパーガイド個人を特定できる情報 (PII) の検出を参照してください。

  6. 残りの設定はデフォルト値のままにしておきます。

    (オプション) 特定のユースケースに対して追加の設定を構成する場合は、ページの左側の Readme ファイルセクションを参照してください。

  7. [I acknowledge that this app creates custom IAM roles (このアプリでカスタム IAM ロールを作成することを認識しています)] チェックボックスをオンにします。

  8. デプロイを選択します。

  9. 新しいアプリケーションのページの [リソース] で、デプロイする Lambda 関数の [論理 ID] を選択して、Lambda 関数ページで関数を確認します。

ステップ 5: S3 Object Lambda アクセスポイントの作成

S3 Object Lambda アクセスポイントは、S3 GET リクエストから Lambda 関数を直接呼び出す柔軟性を提供し、関数が S3 アクセスポイントから取得した PII データを編集できるようにします。S3 Object Lambda アクセスポイントを作成および設定するときは、変更する Lambda 関数を指定して、Lambda が使用するカスタムパラメータとして JSON 形式のイベントコンテキストを呼び出し、提供する必要があります。

イベントコンテキストは、S3 Object Lambda から Lambda に渡されたイベントで行われたリクエストに関する情報を提供します。イベントコンテキスト内のすべてのフィールドの詳細については、「 イベントコンテキストの形式と使用法」を参照してください。

S3 Object Lambda アクセスポイントを作成するには
  1. AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/) を開きます。

  2. 左のナビゲーションペインで、[Object Lambda アクセスポイント] を選択します。

  3. [Object Lambda アクセスポイント] ページで、[Object Lambda アクセスポイントの作成] を選択します。

  4. Object Lambda アクセスポイント名] に、Object Lambda アクセスポイントに使用する名前を入力します (例、tutorial-pii-object-lambda-accesspoint)。

  5. [アクセスポイントのサポート] で、ステップ 3 で作成した標準アクセスポイントを入力または参照します (例、tutorial-pii-access-point)。次に、[サポートするアクセスポイントの選択] を選択します。

  6. S3 API の場合、Lambda 関数が処理する S3 バケットからオブジェクトを取得するには、[GetObject] を選択します。

  7. [Lambda 関数の呼び出し] では、このチュートリアルでは、次の 2 つのオプションのいずれかを選択できます。

    • [アカウントの関数から選ぶ] を選択し、[Lambda 関数] ドロップダウンリストから、ステップ 4 でデプロイした Lambda 関数を選択します (例、serverlessrepo-ComprehendPiiRedactionS3ObjectLambda)。

    • ARN を入力] を選択し、ステップ 4 で作成した Lambda 関数の Amazon リソースネーム (ARN) を入力します。

  8. [Lambda 関数のバージョン] で、$LATEST (ステップ 4 でデプロイした Lambda 関数の最新バージョン) を選択します。

  9. (オプション) Lambda 関数で、範囲とパート番号によって GET リクエストを認識および処理する必要がある場合は、[Lambda 関数は、範囲を使用してリクエストをサポート] および [Lambda 関数は、パート番号を使用してリクエストをサポート] を選択します。それ以外の場合は、これらの 2 つのチェックボックスをオフにします。

    S3 Object Lambda で範囲またはパート番号を使用する方法の詳細については、「Range および partNumber ヘッダーの操作」を参照してください。

  10. (オプション) [ペイロード - オプション] で JSON テキストを追加して、Lambda 関数に追加情報を提供します。

    ペイロードは、特定の S3 Object Lambda アクセスポイントからのすべての呼び出しに対する入力として、Lambda 関数に提供できるオプションの JSON テキストです。同じ Lambda 関数を呼び出す複数の Object Lambda アクセスポイントの動作をカスタマイズして、異なるパラメータを使用してペイロードを設定できます。これにより、Lambda 関数の柔軟性が向上します。

    ペイロードの詳細については、「イベントコンテキストの形式と使用法」を参照してください。

  11. (オプション) [リクエストメトリクス - オプション] で、[無効] または [有効] を選択して、Amazon S3 モニタリングを Object Lambda アクセスポイントに追加します。リクエストメトリクスには、Amazon CloudWatch の標準料金が課金されます。詳細については、「CloudWatch 料金表」を参照してください。

  12. [Object Lambda アクセスポイントポリシー-オプション] で、デフォルトの設定を保持します。

    (オプション) リソースポリシーを設定できます。このリソースポリシーは、指定された Object Lambda アクセスポイントを使用する GetObject API 許可を付与します。

  13. 残りの設定はデフォルト値のままにしておき、[Object Lambda アクセスポイントの作成] を選択します。

ステップ 6: S3 Object Lambda アクセスポイントを使用して、編集されたファイルを取得する

これで、S3 Object Lambda は元のファイルから PII データを編集する準備が整いました。

S3 Object Lambda アクセスポイントを使用して、編集されたファイルを取得するには

S3 Object Lambda アクセスポイントを使用してファイルの取得をリクエストすると、S3 Object Lambda への GetObject API 呼び出しが行われます。S3 Object Lambda は Lambda 関数を呼び出して PII データを変換し、変換されたデータを標準 S3 GetObject API への応答として返します。

  1. AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/) を開きます。

  2. 左のナビゲーションペインで、[Object Lambda アクセスポイント] を選択します。

  3. [Object Lambda アクセスポイント] ページで、ステップ 5 で作成した S3 Object Lambda アクセスポイントを選択します (例、tutorial-pii-object-lambda-accesspoint)。

  4. S3 Object Lambda アクセスポイントの [オブジェクト] タブで、ステップ 2 で S3 バケットにアップロードしたファイルと同じ名前のファイルを選択します(例、tutorial.txt)。

    このファイルには、変換されたすべてのデータが含まれているはずです。

  5. 変換されたデータを表示するには、[開く] または [ダウンロード] を選択します。

    次の例に示すように、編集されたファイルを確認できます。

    Hello *********. Your AnyCompany Financial Services, LLC credit card account ******************* has a minimum payment of $24.53 that is due by *********. Based on your autopay settings, we will withdraw your payment on the due date from your bank account ********** with the routing number *********. Your latest statement was mailed to **********************************. After your payment is received, you will receive a confirmation text message at ************. If you have questions about your bill, AnyCompany Customer Service is available by phone at ************ or email at **********************.

ステップ 7: クリーンアップする

学習のためだけに S3 Object Lambda によってデータを編集した場合は、割り当てた AWS リソースを削除して、料金が発生しないようにします。

Object Lambda アクセスポイントの削除

  1. AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/) を開きます。

  2. 左のナビゲーションペインで、[Object Lambda アクセスポイント] を選択します。

  3. [Object Lambda アクセスポイント] ページで、ステップ 5 で作成した S3 Object Lambda アクセスポイントの左にあるオプションブタンを選択します (例、tutorial-pii-object-lambda-accesspoint)。

  4. [削除] を選択します。

  5. 表示されるテキストフィールドにアクセスポイントの名前を入力して、[削除] を選択し、bject Lambda アクセスポイントを削除することを確認します。

S3 アクセスポイントを削除する

  1. AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/) を開きます。

  2. 左のナビゲーションペインで、[アクセスポイント] を選択します。

  3. ステップ 3 で作成したアクセスポイントに移動し (例、tutorial-pii-access-point)、アクセスポイントの名前の横にあるオプションボタンを選択します。

  4. [削除] を選択します。

  5. 表示されるテキストフィールドにアクセスポイントの名前を入力して、アクセスポイントを削除することを確認し、[削除] を選択します。

Lambda 関数を削除する

  1. AWS Lambda コンソール (https://console.aws.amazon.com/lambda/) で、左のナビゲーションペインの関数を選択します。

  2. ステップ 4 で作成した関数 (例、serverlessrepo-ComprehendPiiRedactionS3ObjectLambda) を選択します。

  3. [アクション] を選択し、[削除] を選択します。

  4. [関数の削除] ダイアログボックスで、[削除] を選択します。

CloudWatch Logs グループを削除する

  1. CloudWatch コンソール (https://console.aws.amazon.com/cloudwatch/) を開きます。

  2. 左側のナビゲーションペインで、[ロググループ] をクリックします。

  3. ステップ 4 で作成した Lambda 関数で終わる名前のロググループを検索します(例、serverlessrepo-ComprehendPiiRedactionS3ObjectLambda)。

  4. [アクション] を選択してから、[ロググループの削除] を選択します。

  5. ロググループの削除ダイアログボックスで、[削除] をクリックします。

S3 ソースバケットの元のファイルを削除する

  1. AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/) を開きます。

  2. 左側のナビゲーションペインで、[バケット] を選択します。

  3. バケット名] リストで、ステップ 2 で元のファイルをアップロードしたバケットの名前を選択します(例、tutorial-bucket)。

  4. 削除するオブジェクトの名前の左にあるチェックボックスを選択します (例、tutorial.txt)。

  5. [削除] を選択します。

  6. [オブジェクトの削除] ページの [オブジェクトを完全に削除しますか?] セクションで、テキストボックスに「permanently delete」と入力して、このオブジェクトを削除することを確認します。

  7. [Delete objects] (オブジェクトの削除) を選択します。

S3 ソースバケットを削除する

  1. AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/) を開きます。

  2. 左側のナビゲーションペインで、[バケット] を選択します。

  3. [バケット] リストで、ステップ 1 で作成したバケットの名前の横にあるラジオボタンを選択します (例、tutorial-bucket)。

  4. [削除] を選択します。

  5. [バケットを削除する] ページで、テキストフィールドにバケット名を入力することでバケットを削除することを確認し、[バケットを削除する] を選択します。

Lambda 関数の IAM ロールを削除する

  1. AWS Management Console にサインインして、IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. 左のナビゲーションペインで、[ロール] を選択し、削除するロール名の隣にあるチェックボックスを選択します。ロール名は、ステップ 4 でデプロイした Lambda 関数の名前で始まります (例、serverlessrepo-ComprehendPiiRedactionS3ObjectLambda)。

  3. [削除] を選択します。

  4. [削除] ダイアログボックスで、テキスト入力フィールドにロール名を入力し、ユーザーの削除を確認します。その後、[Delete] (削除) をクリックします。

IAM ユーザーのカスタマーマネージドポリシーを削除する

  1. AWS Management Console にサインインして、IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. 左のナビゲーションペインの [ポリシー] を選択します。

  3. [ポリシー] ページで、[前提条件] で作成したカスタマーマネージドポリシーの名前 (例、tutorial-serverless-application-repository) を検索ボックスに入力して、ポリシーのリストをフィルタリングします。削除するアポリシーの名前の横にあるオプションボタンを選択します。

  4. [アクション] を選択し、[削除] を選択します。

  5. 表示されるテキストフィールドにポリシーの名前を入力して、このポリシーを削除することを確認し、[削除] を選択します。

IAM ユーザーを削除する

  1. AWS Management Console にサインインして、IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. 左のナビゲーションペインで、[ユーザー] を選択し、削除するユーザー名の横にあるチェックボックスを選択します。

  3. ページの上部で、[削除] を選択します。

  4. [ユーザー名を削除しますか?] ダイアログボックスで、テキスト入力フィールドにユーザー名を入力し、ユーザーの削除を確認します。[削除] を選択します。

次のステップ

このチュートリアルを完了すると、次の関連するユースケースをさらに調べることができます。

  • 複数の S3 Object Lambda アクセスポイントを作成し、データアクセサーのビジネスニーズに応じて特定の種類の PII を変更するように構成された事前構築済みの Lambda 関数でそれらを有効にすることができます。

    各タイプのユーザーは IAM ロールを引き受け、1 つの S3 Object Lambda アクセスポイント(IAM ポリシーで管理)にのみアクセスできます。次に、異なる編集ユースケース用に設定されたそれぞれの ComprehendPiiRedactionS3ObjectLambda Lambda 関数を異なる S3 Object Lambda アクセスポイントにアタッチします。S3 Object Lambda アクセスポイントごとに、共有データセットを保存する S3 バケットからデータを読み取るためのサポートする S3 アクセスポイントを持つことができます。

    ユーザーが、S3 アクセスポイントを介してのみバケットから読み取ることを許可する、S3 バケットポリシーを作成する方法については、「アクセスポイントを使用するための IAM ポリシーの設定」を参照してください。

    Lambda 関数、S3 アクセスポイント、および S3 Object Lambda アクセスポイントにアクセスする許可をユーザーに付与する方法の詳細については、「Object Lambda アクセスポイントの IAM ポリシーの設定」を参照してください。

  • 独自の Lambda 関数を構築し、カスタマイズした Lambda 関数で S3 Object Lambda を使用し、特定のデータニーズを満たすことができます。

    例えば、さまざまなデータ値を調べるには、S3 Object Lambda と、追加の Amazon Comprehend の機能(エンティティ認識、キーフレーズ認識、センチメント分析、ドキュメントの分類など)を使用して、データを処理できます。また、S3 Object Lambda をAmazon Comprehend Medical(HIPAA 適格な NLP サービス)と共に使用して、コンテキストに応じた方法でデータを分析および抽出できます。

    S3 Object Lambda および独自の Lambda 関数を使用してデータを変換する方法の詳細については、「チュートリアル: S3 Object Lambda を使用したアプリケーションのデータの変換」を参照してください。