この記事では、Microsoft Entra ID にクライアント アプリケーションを登録して Azure Health Data Services にアクセスする方法について説明します。 クライアント アプリケーションを登録すると、認証を行い、FHIR および DICOM サービスに安全に接続できます。 詳細については、Microsoft ID プラットフォームにアプリケーションを登録する方法に関するページを参照してください。
新しいアプリケーションの登録
Azure portal で、[Microsoft Entra ID] を選びます。
[アプリの登録] を選択します。
[新規登録] を選択します。
[サポートされているアカウントの種類] で、[この組織のディレクトリ内のアカウントのみ] を選びます。 他のオプションは変更しないでください。
登録 を選択します。
アプリケーション ID (クライアント ID)
新しいアプリケーションを登録すると、[概要] ページにアプリケーション (クライアント) ID とディレクトリ (テナント) ID が表示されます。 後で使うので、これらの値を記録しておきます。
認証設定: 機密かパブリックか
[ 認証 ] と [設定] タブを選択します。[ パブリック クライアント フローを許可する] の既定値は [無効] です。
この既定値を保持する場合、アプリケーションの登録は 機密クライアント アプリケーション であり、証明書またはシークレットが必要です。
[ パブリック クライアント フローを許可する ] オプションを有効にした場合、アプリケーションの登録はパブリック クライアント アプリケーションであり、証明書やシークレットは必要ありません。 パブリック クライアント アプリケーションは、 パブリック クライアント アプリケーションと機密クライアント アプリケーションで説明されているように、OAuth 2.0 承認プロトコルまたは機能を使用する場合に便利です。
OAuth 2.0 などのリダイレクト URI を必要とするツールの場合は、[リダイレクト URI 構成] タブに移動し、[リダイレクト URI の追加] を選択してプラットフォームを構成します。
たとえば、 モバイル アプリケーションとデスクトップ アプリケーションを選択する場合は、そのプラットフォームのリダイレクト URI を選択します。
証明書とクライアント シークレット
新しいクライアント シークレットを作成するには、次の手順に従います。
証明書 とシークレット>Client シークレットに移動します。
[ 新しいクライアント シークレット] を選択します。
[クライアント シークレットの追加] に「説明」と入力します。
[ 有効期限 ] フィールドで推奨される 180 日間の値を受け入れるか、一覧から別の値を選択します。
注
シークレット ID ではなく、シークレット値を保存することが重要です。
必要に応じて、証明書 (公開キー) をアップロードし、証明書に関連付けられている GUID 値である証明書 ID を使用できます。 テスト目的で、PowerShell コマンド New-SelfSignedCertificateなどのツールを使用して自己署名証明書を作成し、証明書ストアから証明書をエクスポートできます。 詳細については、「 自己署名パブリック証明書を作成してアプリケーションを認証する」を参照してください。
DICOM および FHIR サービスの API アクセス許可
クライアント アプリケーションが FHIR および DICOM サービスにアクセスできるようにするには、API アクセス許可を追加する必要があります。 必要なアクセス許可は、アプリケーションのシナリオとアクセスするサービスによって異なります。
DICOM サービスには次の手順が必要です。
[API のアクセス許可] を選択します。
[アクセス許可の追加] を選択します。
Azure Health Data Services を使用している場合は、組織が使用する API で AZURE API for DICOM を検索して、DICOM サービスにアクセス許可を追加します。
AZURE API for DICOM の検索結果は、ワークスペースに DICOM サービスを既にデプロイしている場合にのみ表示されます。
別のリソース アプリケーションを参照する場合は、[所属する組織で使用している API] で作成済みの DICOM API リソース アプリケーションの登録を選択します。
機密クライアント アプリケーションがユーザーに代わって要求するスコープ (アクセス許可) を選択します。 Dicom.ReadWrite を選択してから [アクセス許可の追加] を選択します。
Azure Health Data Services を使用している場合、FHIR サービスはユーザー委任アクセス許可とアプリケーションアクセス許可の両方をサポートしているため、FHIR サービスへの API アクセス許可の追加は省略可能です。 アプリケーション のシナリオで、サインインしているユーザーなしでアプリケーションを実行するときに使用されるアプリケーションのアクセス許可が必要な場合は、組織が使用する API で Azure API for FHIR を検索し、必要なアクセス許可を選択します。
注
REST クライアントなどのツールを使用して FHIR サービスのアクセス トークンを取得する場合は、grant_typeのclient_credentialsを使用します。 詳細については、「 Visual Studio Code の REST クライアント拡張機能を使用した Azure Health Data Services へのアクセス」を参照してください。
DICOM サービスのアクセス トークンを取得するときは、
grant_typeまたはclient_credentialsのauthentication_codeを使用します。 詳細については、 cURL での DICOM の使用を参照してください。