Amazon Web Services ブログ

金融業界特集 : Amazon Textract

本投稿は AWSのソリューションアーキテクトである Alvin Huang、 Gene Ting と Stefan Natu による寄稿を翻訳したものです。

編集者注 : これは、金融業界特集の月刊連載の第三回目の投稿です。

金融業界特集の連載をご覧頂きありがとうございます。この連載では、AWSのサービスの利用承認を合理化するために、金融機関がフォーカスすべき特定のサービスに関する 5 つの重要な考慮事項 に焦点を当てる予定です。5 つの領域にはそれぞれ特定のガイダンスが含まれており、特定のユースケースと環境に適応する必要がある場合があります。

この特集では、 Amazon Textractを取り上げます。Amazon Textract は、スキャンされたドキュメントからテキスト、手書きやその他のデータを抽出し、フォームとテーブルからのデータの関係を特定し、理解するフルマネージド AI サービスです。

金融機関は、銀行、資本市場、保険のさまざまなワークロードにタ対して Amazon Textract を活用しています。銀行では、BlueVineは中小企業に融資を提供する金融テクノロジー企業であり、給与保護プログラム(PPP) 融資申請の処理を自動化する製品をAmazon Textractを活用して開発しました。資本市場において、PitchBook は Morningstar の関連企業で、ベンチャーキャピタル、プライベートエクイティ、M&A など、パブリックおよびプライベートエクイティ市場のあらゆる側面を追跡しています。PitchBook は Amazon Textract を使用して、研究プロセスの一部である PDF ドキュメントの処理を 60% 向上させています。最後に、保険において nib Group はオーストラリアのヘルスケアファンドで、160 万人を超える人々に保険を提供しています。nib Group は Amazon Textract を活用して、保険請求処理パイプラインを自動化することで、優れたカスタマーエクスペリエンスを提供しながら、運用効率を向上させています。

Amazon Textract によるコンプライアンスの達成

セキュリティはAWSとお客様の間で共有される責任です。 AWS は、AWS クラウドにおいて、AWSの サービスが動作するインフラストラクチャを保護し、お客様が安全に使用できるサービスを提供する責任を担います。お客様の責任は、お使いの AWS サービスによって決定されます。責任共有モデルのお客様側では、まずネットワーク接続、暗号化、および他の AWS リソースへのアクセスのための要件を決定すべきです。これらのトピックについては、今後のセクションで詳しく説明します。

Amazon Textract は、AWS 側の責任共有モデルに関して、 以下のコンプライアンスプログラムの範囲 に含まれます。

• SOC 1,2,3
• PCI
• ISO/IEC 27001:2013, 27017:2015, 27018:2019
• ISO/IEC 9001:2015
• OSPAR
• MTCS

以降のセクションでは、責任共有モデルにおける、お客様側の責任に関するトピックを取り上げます。

Amazon Textract によるデータ保護

暗号化は通常、データを保護するために採用されます。Amazon Textract API には Transport Layer Security (TLS) 1.0 を使用してアクセスできますが、AWS では、代わりに TLS 1.2 を介して API にアクセスすることをお勧めします。

また、Amazon Textract は AWS Key Management Service(AWS KMS) と連携して動作し、お客様が処理中に顧客データを暗号化する方法を指定し、Amazon Textract サービス内、および Amazon Simple Storage Service(Amazon S3) 内で安全に結果を暗号化できます。お客様が Amazon Textract に同期 API を介してデータを分析するようリクエストした場合、データはメモリ内でのみ保存および処理されます。

金融業界のお客様は、基盤となる AWS のサービスが、サービスの改善のために顧客データを保存しないよう要求したり、モデルトレーニングや処理などの一時的な期間、カスタマー管理型キーで暗号化されている場合にのみデータを保存することを要求します。 Amazon Textract では、AWS KMS カスタマー管理型のキーを使用して、処理期間中に保管されるデータを暗号化できます。同様に、カスタマー管理型の出力バケット内のデータは、カスタマー管理型のキーを使用して暗号化することもできます。


network diagram for Amazon Textract

図1: Amazon Textract のネットワーク図を示す図。Amazon Textract のコントロールプレーン API コールは、次のセクションで説明するように VPC エンドポイントを介して行うことができます。データプレーンの場合、Amazon Textract はお客様の S3 バケットのデータにアクセスします。

Amazon Textract を使用したコンピューティング環境の分離

Amazon Textract は、責任共有モデルのお客様側にコンピューティングリソースがないマネージドサービスです。マネージドサービスとして、Amazon Textract は AWS アーキテクチャセンター(セキュリティ、アイデンティティ、コンプライアンス)で説明されている AWS グローバルネットワークセキュリティ手順によって保護されます。

また、 インターフェイス VPC エンドポイントを作成することで、VPC と Amazon Textract の間にプライベート接続を確立することもできます。インターフェイスエンドポイントは、インターネットゲートウェイ、NAT デバイス、VPN 接続、または AWS Direct Connect 接続なしで Amazon Textract API にプライベートにアクセスできるようにするテクノロジーである AWS PrivateLinkを使用しています。VPC 内のインスタンスは、Amazon Textract API と通信するためにパブリック IP アドレスを必要としません。また、インターフェイス VPC エンドポイントを使用することで、VPC と Amazon Textract 間のトラフィックが Amazon ネットワークから離れないようにできます。 Amazon Textract は、VPC エンドポイントでのポリシーの適用もサポートし、VPC 内の Amazon Textract の使用を制限します。 Amazon Textract のエンドポイントポリシーの例を次に示します。VPC エンドポイントにアタッチされている場合、このポリシーは、プリンシパルが AWS 組織に属する場合に限り、すべてのプリンシパルに対して指定された Amazon Textract アクションへのアクセスを許可します。


{
	"Statement":[
		{
			"Principal":"*",
			"Effect":"Allow",
			"Action":[
				"textract:StartDocumentTextDetection",
				"textract:AnalyzeDocument",
				"textract:DetectDocumentText",
				"textract:GetDocumentAnalysis",
				"textract:GetDocumentTextDetection",
				"textract:StartDocumentAnalysis"
			],
			"Resource":"*",
			"Condition": {
				"StringEquals": {
					"aws:PrincipalOrgID": [
						"o-aabbccxxyyzz"
					]
				}
			}
		}
	]
}

Amazon Textract を使用した API による監査の自動化

金融機関は、標準の IT セキュリティおよびコンプライアンスポリシーの一環として、使用状況、ユーザーアクティビティ、およびリソースの変更について、AWS のサービスを定期的に監査する必要があります。ユーザーまたは IAM ロール、または別の AWS サービスによって作成された AWS 環境での API 呼び出しは、AWS CloudTrail を使用してログに記録できます。Amazon Textract は、CloudTrail でイベントとして記録される以下の API 呼び出しをサポートしています。

Analyze と DetectDocumentText は同期 API 呼び出しですが、start で始まる API は非同期 API であり、ジョブの結果を保存するために入出力のためのデータストアを提供する必要があります。たとえば、非同期 API 呼び出しが作成されたときに、呼び出しの開始時に KMS キー(KmsKeyID を使用)パラメータに加えて、ユーザーが適切な出力バケットを指定するようにできます。プライバシー上の理由から、CloudTrail はイメージのバイトや境界ボックス情報を記録せず、Amazon S3 内のドキュメントの場所のみを記録します

たとえば、Amazon の SEC filing (米国証券取引委員会への提出資料)からテーブルとフォームを抽出する StartDocumentAnalysis API 呼び出しの出力例を次に示します。


{
	"eventVersion": "1.08",
	"userIdentity": {
		"type": "IAMUser",
		"principalId": "*****************",
		"arn": "arn:aws:iam::<account-num>:user/john.doe",
		"accountId": "<account-num>",
		"accessKeyId": "*************",
		"userName": "john.doe"
	},
	"eventTime": "2021-01-19T18:41:25Z",
	"eventSource": "textract.amazonaws.com",
	"eventName": "StartDocumentAnalysis",
	"awsRegion": "us-west-2",
	"sourceIPAddress": "205.251.233.179",
	"userAgent": "aws-cli/1.18.192 Python/3.7.3 Darwin/18.7.0 botocore/1.19.32",
	"requestParameters": {
		"documentLocation": {
			"s3Object": {
				"bucket": "sagemaker-project-1234",
				"name": "Amazon10K.pdf"
			}
		},
		"featureTypes": [
			"TABLES",
			"FORMS"
		],
		"notificationChannel": {
			"sNSTopicArn": "arn:aws:sns:us-west-2:<account-num>:Textract_analyze_document",
			"roleArn": "arn:aws:iam::<account-num>:role/service-role/AmazonSageMaker-ExecutionRole-20190823T110499"
		}
	},
	"responseElements": {
		"jobId": "73af8679a6e341ac37104df58a2a96a3a33aafb32df5ac8dd83608445a2f697f"
	},
	"requestID": "f3739fdb-9a47-4f7c-b211-f7273ff92efc",
	"eventID": "61697da4-f569-45ff-8a4f-ad769d1d0911",
	"readOnly": false,
	"eventType": "AwsApiCall",
	"managementEvent": true,
	"eventCategory": "Management",
	"recipientAccountId": "<account-num>"
}

API 呼び出しのログ記録に加えて、金融業界のお客様は、AWS サービスのリソース状態の変更や設定変更のモニタリングを自動化することもできます。 AWS Config では、カスタムルールを使用して Amazon Textract などの基盤となるサービスの設定を評価、監査、評価できます。 カスタムルールは、ユーザー定義ルールの 基礎となるロジックを評価する AWS Lambda 関数です。Lambda 関数は AWS Config によって定期的にトリガーされ、ルールを検証して AWS Config に出力を提供できます。

Amazon Textract による運用アクセスとセキュリティ

PCI 準拠の対象となるデータセットを処理する場合、Amazon Textract の品質を向上させるためにドキュメントの使用をオプトアウトする必要がある場合があります。多くの金融サービスのお客様は、サポートに連絡するか、AWS Organizations で組織全体の オプトアウトポリシーを 実装して、該当するすべての AI サービスにルートアカウントにアタッチすることができます。


{
	"services": {
		"@@operators_allowed_for_child_policies": ["@@none"],
		"default": {
			"@@operators_allowed_for_child_policies": ["@@none"],
            "opt_out_policy": {
                "@@operators_allowed_for_child_policies": ["@@none"],
                "@@assign": "optOut"
            }
        }
    }
}

または、Amazon Textract といった単一のサービスに限定することもできます。


{
	"services": {
		"textract": {
			"opt_out_policy": {
				"@@assign": "optOut",
				"@@operators_allowed_for_child_policies": ["@@none"]
			}
		}
	}
}

また、お客様は、誰がどのデータにアクセスできるかを知り、ユーザーアクセスをできる限り制限する必要があります。例えば、非構造化ドキュメントからの情報の最初の抽出がデータエンジニアによって実行され、自然言語処理 (NLP) モデルのトレーニングのためにそのジョブの結果をデータサイエンティストに渡す場合、IAM アクセス許可を使用してデータエンジニアに Amazon Textract API へのアクセスを制限できます。さらに、 IAM グローバル条件キーを使用すると、以前のコントロールプレーン API 呼び出しを VPC エンドポイント経由で行うことができます。たとえば、Amazon Textract への API 呼び出しを行うプリンシパルに追加できる次の IAM ポリシーは、VPC エンドポイント経由で行われた Amazon Textract への API 呼び出しのみを許可します。


{
	"Statement":[
		{
			"Effect":"Deny",
			"Action":[
				"textract:StartDocumentTextDetection",
				"textract:AnalyzeDocument",
				"textract:DetectDocumentText",
				"textract:GetDocumentAnalysis",
				"textract:GetDocumentTextDetection",
				"textract:StartDocumentAnalysis"
			],
			"Resource":"*",
			"Condition": {
				"StringNotEquals": {
					"aws:sourceVpce": [
						"vpce-111bbccc" # Textract VPC endpoint
					]
				}
			}
		}
	]
}

サービスコントロールポリシー (SCP) は、組織のアクセス許可を管理するために使用できる組織ポリシーの一種です。SCP は、組織内のすべてのアカウントで利用可能なアクセス許可の上限を一元的に制御できます。SCP は、お客様のアカウントを組織のアクセスコントロールガイドラインの範囲内に留めておくのに役立ちます。

Amazon Textract の同期アクションのみを許可する SCP の例については、以下を参照してください。


{
	"Version": "2012-10-17",
	"Statement": [
		{
			"Sid": "Allow-Textract-Sync-Api-Only",
			"Effect": "Deny",
			"Action": [
				"textract:GetDocumentAnalysis",
				"textract:GetDocumentTextDetection",
				"textract:StartDocumentAnalysis",
				"textract:StartDocumentTextDetection"
			],
			"Resource": "*"
		}
	]
}

バケットポリシーは、リソースベースのポリシーであり、バケット内に含まれるデータへのアクセスを管理するためにバケットに直接配置できます。次の例に示すように、特別なコンテキストキー「calledViaFirst」を使用して、バケット内のデータへのアクセスを Amazon Textract に制限できます。


{
	"Version": "2012-10-17",
	"Id": "Policy1415115909152",
	"Statement": [
		{
			"Sid": "Access-to-VPCE-and-Textract-Only",
			"Principal": "*",
			"Action": [
				"s3:GetObject",
				"s3:PutObject"
				],
			"Effect": "Deny",
			"Resource": [
				"arn:aws:s3:::vpc-restricted-bucket",
				"arn:aws:s3:::vpc-restricted-bucket/*"
				],
			"Condition": {
				"StringNotEquals": {
					"aws:sourceVpce": "vpce-01ad5da5",
					"aws:CalledViaFirst": "textract.amazonaws.com"
				}
			}
		}
	]
}

まとめ

この投稿では、Amazon Textract を重点的に調査し、金融業界のお客様が、コンプライアンス、データ保護、コンピューティング環境の分離、API による監査の自動化、運用アクセスとセキュリティという 5 つのカテゴリ内でサービスの利用承認を加速するために役立つ重要な情報を強調しました。一つのアプローチがすべてにフィットするとは言い切れませんが、このガイダンスは、みなさまの組織のセキュリティとコンプライアンス要件を満たすよう適応させることができるでしょう。また、Amazon Textractの主要な検討事項の一覧としても活用できます。

次回の記事が掲載されるまでの間、 AWS インダストリーブログチャネル にぜひアクセスしてみてください。また、今後の金融サービスのニュースやベストプラクティスの投稿を乞うご期待ください。

 

Alvin Huang

Alvin Huang

Alvin Huang は、アマゾン ウェブ サービス のワールドワイド金融事業部門の事業開発に所属する資本市場スペシャリストです。データレイクと分析、人工知能、機械学習に重点を置いています。Alvin は、金融業界で 19 年以上の経験を持ち、AWS に参加する前は、J.P.Morgan Chase&Co のエグゼクティブディレクターを務め、北米とラテンアメリカの取引監視チームを管理し、世界的な取引監視の開発をリードしていました。Alvin は、ラトガース大学 で定量的リスク評価の学科を教え、ラトガース数学ファイナンス修士プログラム(MSMF)諮問委員も務めています。

Gene Ting

Gene Ting

Gene Ting は、アマゾン ウェブ サービスのシニアソリューションアーキテクトです。彼は、エンタープライズのお客様が AWS で安全にワークロードを構築し、運用できるように支援することに重点を置いています。彼は自由時間に、子どもたちにテクノロジーやスポーツを教えるだけではなく、サイバーセキュリティの最新情報をフォローしています。

Stefan Natu

Stefan Natu

Stefan Natu は、アマゾン ウェブ サービスのプリンシパル機械学習スペシャリストです。彼は、エンタープライズのお客様が AWS で機械学習ソリューションを構築、保護、運用できるように支援することに重点を置いています。アカデミックバックグラウンドは理論物理学であり、過去には小売業やエネルギー業界でデータサイエンスに関する多くの問題に取り組んできました。彼は空いた時間に、機械学習のブログを読んだり、旅をしたり、ギターを弾いたり、ニューヨーク市のおすすめグルメの探索を楽しんでいます。

 

翻訳はソリューションアーキテクトの 澤野 佳伸 が担当しました。原文はこちらです。