開発者向け

患者同意プラットフォーム:ヘルスデータAPIにおける同意、スコープ、有効期限、取り消しの仕組み

患者同意を支援するプラットフォームが果たすべきこと:同意をファーストクラスオブジェクトとしてスコープと有効期限を設定し、即時効力のある取り消し、患者が閲覧できるアクセスログ、承認待ちのAI作成コンテンツ。Anpherosでの実装方法。

著 公開日 1分で読めます

同意は、誰も作りたがらないけれど、誰もが監査を受ける部分です。「サインアップ時にユーザーがチェックボックスをオンにした」だけでは、GDPR第9条を満たせず、データ保護レビューを通過せず、アカウントを削除せずにアプリへのアクセスを取り消すこともできません。このガイドでは、患者同意プラットフォームが何をすべきか、そしてAnpheros Platformがそれをどのように実現しているかを説明します。これにより、自分で再構築する代わりに、この仕組みを再利用できます。

開発者向け技術情報: 患者同意プラットフォーム · 同意 (developers.anpheros.comにて、リクエスト、レスポンス、制限事項について解説しています。このページは平易な言葉での説明です。)

同意はフラグではなく、オブジェクトとして

Anpherosでは、同意は許可です。つまり、個人、アプリケーション、スコープのセット、目的、有効期限を定義するものです。これは、個人が同意ページでアクセスを承認したときに作成され、個人が確認できるリストに表示され、いつでも取り消すことができます。リクエストごとに、この許可に基づいて読み取りがチェックされます。

  • スコープは、アプリケーションが読み取りまたは書き込みできる内容(観察結果、病状、薬剤、アレルギー、文書など)を指定します。カテゴリで絞り込むことも可能です(例:検査結果のみで、症状は含まない)。
  • 期間は、個人が選択します:30日、90日、180日、または365日。「無期限」はありません。
  • 取り消しは、次回の要求時に有効になります。アプリケーションは consent.revoked のWebhookを受け取ります。
  • 目的は、許可とともに記録され、個人に表示されます。

アプリケーションからの要求方法

OAuth 2.1とPKCEを使用し、SMART on FHIRスタンドアロン起動に対応しているアプリケーションにはSMART on FHIRを使用します。個人はサインインし、どのアプリケーションが、どのスコープで、どのくらいの期間アクセスを求めているかを確認し、承認または拒否します。アプリケーションは、その患者とスコープに限定されたトークンを受け取ります。プロジェクトキーが個人の同意の代わりになることはありません。

GET  https://platform.anpheros.com/oauth/authorize?client_id=…&scope=patient/Observation.read …
POST https://platform.anpheros.com/oauth/token

アクセストークンの有効期間は30分、リフレッシュトークンは30日です。ディスカバリードキュメントは /.well-known/oauth-authorization-server および /.well-known/smart-configuration にあります。

患者が見るもの

GET /me/patients/{id}/grants は、アクセスを許可されているすべてのアプリケーション、そのスコープ、および有効期限を一覧表示します。…/grants/{grant}/access-log は、各アプリケーションが何を読み取りまたは書き込んだかを、同意に基づいて、プロジェクト固有のキーとともに一覧表示します。format=fhir を指定すると、ログはFHIR R4の AuditEvent リソースのBundleとして返され、IHE Basic Audit Log Patternsに準拠した形式になります。Anpheros Dailyでは、これは「接続」画面に相当します。ご自身のアプリでも同様の表示が可能です。

読み取りと書き込みの違い

同意があれば、組織は他のクリニックが記録した内容を含む記録全体を参照できますが、自身が書き込んだ内容のみを変更または削除できます。すべてのリソースの各バージョンには、それを書き込んだプロジェクトが記録されています。他のプロジェクトによる書き込みは、理由とともに拒否されます。すべての書き込みは、アプリケーション、その代理として行動した組織、および個人を特定するProvenanceリソースを生成します。

AIエージェントが提案し、個人が決定する

AIエージェントとして登録されたアプリケーションが個人の同意の下で行った書き込みは、即座には適用されません。プラットフォームはそれを検証し、提案IDとともに 202 Accepted を返します。記録に変更はありません。個人は提案内容、それが何であるか、どのアプリケーションが送信したかを確認し、承認または拒否します。承認された提案は、送信されたとおりに正確に記録され、AIによって作成されたものであることがマークされます。これにより、MCP経由で接続されたアシスタントは、無人で記録に書き込むことなく、記録の記入を支援できます。

個人はQRコードやリンクで自身の記録を共有することもできます。POST /me/patients/{id}/shl は、緊急時に必要な情報(アレルギー、薬剤、病状、予防接種)または国際患者サマリー全体に対するSMART Health Linkを作成します。オプションでパスコードと有効期限を設定できます。すべてのアクセスはアクセスログに記録され、リンクは即座に無効化できます。SMART Health Linkリーダーであれば、誰でも開くことができます。

すべてのルールを含む完全なモデルは、developers.anpheros.com/guides/consent-model で確認できます。

よくある質問

許可は、すべてのリクエストでチェックされる運用上のオブジェクトです。記録には、FHIR ConsentおよびProvenanceリソースも含まれており、他のシステムが合意内容や誰が何を書いたかを読み取れるようになっています。アクセスログはFHIR AuditEvent として利用可能です。

患者は記録の一部にのみアクセスを許可できますか?

はい。スコープはリソースタイプごとに設定され、カテゴリフィルターで絞り込むことができ、個人は同意ページでそれらを選択します。アプリは検査結果のみ、または薬剤のみを要求できます。

同意が期限切れになるとどうなりますか?

その許可に基づくリクエストは、期限切れ以降、403エラーを返します。アプリケーションは再度要求できます。個人が再度決定します。データは削除されません。

取り消しによって、アプリが既に読み取ったデータは削除されますか?

いかなるシステムも、既に読み取られたデータを「アンリード」することはできません。取り消しは即座にさらなるアクセスを停止し、記録されます。アプリケーションが自身の側で保存したデータについては、GDPRに基づくそのアプリケーション自身の義務が適用されます。

患者の同意なしにクリニックが記録にアクセスできますか?

プロジェクトは、自身が作成した患者の記録を参照できます。他者が作成した記録を読むには、個人の許可が必要です。管理上のオーバーライドはありません。

このガイドは情報提供のみを目的としており、医学的アドバイスに代わるものではありません。健康に関する決定については、医師にご相談ください。緊急の場合は、112にお電話ください。
著者について
Adrian Kereky

Founder of Anpheros. An electronics engineer, he spent six years in autonomous driving, on automotive projects run in partnership with Samsung and NVIDIA, designing the architecture of driver-assistance and AI systems that run on NVIDIA chips with CUDA. He then built Anpheros: the patient-controlled medical record and the HL7 FHIR R4 platform it runs on.

Anpherosと著者について →

あなたの医療記録を持ち歩こう

Anpheros Dailyは、症状、検査結果、薬剤、書類を、標準フォーマットで、あなたの管理下に一元化します。ベーシックプランは無料です。

Anpheros Dailyを入手する