カスタム HTTP ヘッダーを追加して FHIR サービスでログを監査する
重要
Azure API for FHIR は、2026 年 9 月 30 日に廃止されます。 移行戦略に従って、その日までに Azure Health Data Services FHIR® サービスに切り替えてください。 Azure API for FHIR が廃止されたため、2025 年 4 月 1 日以降、新しいデプロイは許可されません。 Azure Health Data Services FHIR サービス は、お客様が他の Azure サービスへの統合を使用して、FHIR、DICOM、および MedTech サービスを管理できるようにする、進化したバージョンの Azure API for FHIR です。
Azure 高速ヘルスケア相互運用性リソース (FHIR®) API では、ユーザーが呼び出し元のシステムからの追加情報をログに含めることが必要な場合があります。
たとえば、API のユーザーが外部システムによって認証されると、そのシステムは FHIR API への呼び出しを転送します。 FHIR API レイヤーでは、呼び出しが転送されたため、元のユーザーに関する情報が失われます。 監査または管理の目的で、このユーザー情報を記録して保持する必要がある場合があります。 呼び出し元のシステムは、HTTP ヘッダーで、ユーザー ID、呼び出し元の場所、またはその他の必要な情報を提供できます。これらの情報は、呼び出しが転送されるときに一緒に伝達されます。
カスタム ヘッダーを使用して、いくつかの種類の情報をキャプチャできます。 次に例を示します。
- ID または認証情報
- 呼び出し元
- 元の組織
- クライアント システムの詳細 (電子医療記録、患者ポータル)
重要
カスタム ヘッダーで送信された情報は、Azure ログ監視で使用可能になってから 30 日間、Microsoft の内部ログ システムに格納されていることに注意してください。 情報をカスタム ヘッダーに追加する前に暗号化することをお勧めします。 カスタム ヘッダーを通じて PHI 情報を渡すことはできません。
HTTP ヘッダーには、次の名前付け規則を使用する必要があります: X-MS-AZUREFHIR-AUDIT-<名前>。
以下の HTTP ヘッダーは、ログに追加されるプロパティ バッグに含まれています。 次に例を示します。
- X-MS-AZUREFHIR-AUDIT-USERID: 1234
- X-MS-AZUREFHIR-AUDIT-USERLOCATION: XXXX
- X-MS-AZUREFHIR-AUDIT-XYZ: 1234
この情報は、ログのプロパティ列に追加されるときに、JSON にシリアル化されます。 次に例を示します。
{ "X-MS-AZUREFHIR-AUDIT-USERID" : "1234",
"X-MS-AZUREFHIR-AUDIT-USERLOCATION" : "XXXX",
"X-MS-AZUREFHIR-AUDIT-XYZ" : "1234" }
HTTP ヘッダーと同様に、同じヘッダー名を別の値で繰り返すことができます。 次に例を示します。
- X-MS-AZUREFHIR-AUDIT-USERLOCATION: HospitalA
- X-MS-AZUREFHIR-AUDIT-USERLOCATION: Emergency
ログに追加されるときに、値はコンマ区切りのリストと結合されます。 次に例を示します。
{ "X-MS-AZUREFHIR-AUDIT-USERLOCATION" : "HospitalA, Emergency" }
最大で 10 個の一意のヘッダーを追加できます (異なる値を持つ同じヘッダーの繰り返しは、1 個としてカウントされます)。 1 つのヘッダーの値の最大長は、2,048 文字です。
Firefly C# クライアント API ライブラリを使用している場合、コードは次のようになります。
FhirClient client;
client = new FhirClient(serverUrl);
client.OnBeforeRequest += (object sender, BeforeRequestEventArgs e) =>
{
// Add custom headers to be added to the logs
e.RawRequest.Headers.Add("X-MS-AZUREFHIR-AUDIT-UserLocation", "HospitalA");
};
client.Get("Patient");
次のステップ
この記事では、Azure API for FHIR でカスタム ヘッダーを使用して、監査ログにデータを追加する方法について説明しました。 Azure API for FHIR の構成設定については、次を参照してください
FHIR® は HL7 の登録商標であり、HL7 の許可を得て使用しています。