FHIR での SMART の開始方法 - AWS HealthLake

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

FHIR での SMART の開始方法

以下のトピックでは、 AWS HealthLake の FHIR 認可で SMART の使用を開始する方法について説明します。これには、 AWS アカウントでプロビジョニングする必要があるリソース、FHIR 対応 HealthLake データストアでの SMART の作成、および FHIR クライアントアプリケーションで認可サーバーと HealthLake データストアとやり取りする方法の例が含まれます。

FHIR での SMART のリソースの設定

次のステップでは、HealthLake が FHIR リクエストで SMART を処理する方法と、それらを成功させるために必要なリソースを定義します。次の要素は、ワークフロー内で連携して SMART on FHIR リクエストを行います。

  • エンドユーザー: 一般的に、患者または臨床医は、サードパーティーの SMART on FHIR アプリケーションを使用して HealthLake データストアのデータにアクセスします。

  • SMART on FHIR アプリケーション (クライアントアプリケーションと呼ばれます): HealthLake データストアにあるデータにアクセスしたいアプリケーション。

  • 認可サーバー: ユーザーを認証し、アクセストークンを発行できる OpenID Connect 準拠サーバー。

  • HealthLake データストア: Lambda 関数を使用してベアラートークンを提供する FHIR REST リクエストに応答する、SMART on FHIR 対応 HealthLake データストア。

これらの要素を連携させるには、次のリソースを作成する必要があります。

注記

認可サーバーを設定して必要なスコープを定義し、トークンイントロスペクションを処理する AWS Lambda 関数を作成したら、FHIR 対応 HealthLake データストアで SMART を作成することをお勧めします。

1. 認可サーバーエンドポイントを設定する

SMART on FHIR フレームワークを使用するには、データストアで行われた FHIR REST リクエストを検証できるサードパーティー認可サーバーを設定する必要があります。詳細については、「SMART on FHIR の HealthLake 認証要件」を参照してください。

2. HealthLake データストアのアクセスレベルを制御するために認可サーバーでスコープを定義する

SMART on FHIR フレームワークは、OAuth スコープを使用して、認証されたリクエストがアクセスできる FHIR リソースとその範囲を決定します。スコープの定義は、最小特権を設計する方法です。詳細については、「HealthLake でサポートされている FHIR OAuth 2.0 スコープでの SMART」を参照してください。

3. トークンイントロスペクションを実行できる AWS Lambda 関数を設定する

クライアントアプリケーションから SMART on FHIR 対応データストアに送信される FHIR REST リクエストには、JSON ウェブトークン (JWT) が含まれています。詳細については、「JWT のデコード」を参照してください。

4. FHIR 対応 HealthLake データストアでの SMART の作成

SMART on FHIR HealthLake データストアを作成するには、 を指定する必要がありますIdentityProviderConfiguration。詳細については、「HealthLake データストアの作成」を参照してください。

SMART on FHIR のクライアントアプリケーションワークフロー

次のセクションでは、クライアントアプリケーションを起動し、SMART on FHIR のコンテキスト内で HealthLake データストアで FHIR REST リクエストを正常に実行する方法について説明します。

1. クライアントアプリケーションを使用して Well-Known Uniform Resource Identifier にGETリクエストを行う

SMART 対応クライアントアプリケーションは、HealthLake データストアの承認エンドポイントを検索するGETリクエストを行う必要があります。これは、Well-Known Uniform Resource Identifier (URI) リクエストを介して行われます。詳細については、「SMART on FHIR 検出ドキュメントの取得」を参照してください。

2. アクセスとスコープのリクエスト

クライアントアプリケーションは、ユーザーがログインできるように、認可サーバーの認可エンドポイントを使用します。このプロセスはユーザーを認証します。スコープは、クライアントアプリケーションがアクセスできる HealthLake データストア内の FHIR リソースを定義するために使用されます。詳細については、「HealthLake でサポートされている FHIR OAuth 2.0 スコープでの SMART」を参照してください。

3. アクセストークン

ユーザーが認証されたので、クライアントアプリケーションは認可サーバーから JWT アクセストークンを受け取ります。このトークンは、クライアントアプリケーションが HealthLake に FHIR REST リクエストを送信するときに提供されます。詳細については、「トークンの検証」を参照してください。

4. SMART on FHIR 対応 HealthLake データストアで FHIR REST API リクエストを行う

クライアントアプリケーションは、認可サーバーによって提供されるアクセストークンを使用してHealthLake データストアエンドポイントに FHIR REST API リクエストを送信できるようになりました。詳細については、「SMART 対応 HealthLake データストアでの FHIR REST API リクエストの実行」を参照してください。

5. JWT アクセストークンを検証する

FHIR REST リクエストで送信されたアクセストークンを検証するには、Lambda 関数を使用します。詳細については、「を使用したトークンの検証 AWS Lambda」を参照してください。