Freigeben über


Konfigurieren der lokalen RBAC für FHIR

In diesem Artikel wird erläutert, wie Sie die Azure-API für FHIR konfigurieren, um einen sekundären Azure Active Directory-Mandanten (Azure AD) für den Datenzugriff zu verwenden. Verwenden Sie diesen Modus nur, wenn Es nicht möglich ist, den Ihrem Abonnement zugeordneten Azure AD-Mandanten zu verwenden.

Hinweis

Wenn Ihr FHIR-Dienst für die Verwendung Ihres primären Azure AD-Mandanten konfiguriert ist, der Ihrem Abonnement zugeordnet ist, verwenden Sie Azure RBAC, um Datenebenenrollen zuzuweisen.

Hinzufügen eines neuen Dienstprinzipals oder Verwenden eines vorhandenen Dienstprinzipals

Mit der lokalen RBAC können Sie einen Dienstprinzipal im sekundären Azure AD-Mandanten mit Ihrem FHIR-Server verwenden. Sie können einen neuen Dienstprinzipal über die Azure-Portal-, PowerShell- oder CLI-Befehle erstellen oder einen vorhandenen Dienstprinzipal verwenden. Der Prozess wird auch als Anwendungsregistrierung bezeichnet. Sie können die Dienstprinzipale über Azure AD über das Portal oder mithilfe von Skripts überprüfen und ändern.

Die folgenden PowerShell- und CLI-Skripts, die in Visual Studio Code getestet und überprüft werden, erstellen einen neuen Dienstprinzipal (oder eine Clientanwendung) und fügen einen geheimen Clientschlüssel hinzu. Die Dienstprinzipal-ID wird für die lokale RBAC verwendet, und die Anwendungs-ID und der geheime Clientschlüssel werden später für den Zugriff auf den FHIR-Dienst verwendet.

Sie können das Az PowerShell-Modul verwenden:

$appname="xxx"
$sp= New-AzADServicePrincipal -DisplayName $appname
$clientappid=sp.ApplicationId
$spid=$sp.Id
#Get client secret which is not visible from the portal
$clientsecret=ConvertFrom-SecureString -SecureString $sp.Secret -AsPlainText

Alternativ können Sie die Azure-Befehlszeilenschnittstelle verwenden:

appname=xxx
clientappid=$(az ad app create --display-name $appname --query appId --output tsv)
spid=$(az ad sp create --id $appid --query objectId --output tsv)
#Add client secret with expiration. The default is one year.
clientsecretname=mycert2
clientsecretduration=2
clientsecret=$(az ad app credential reset --id $appid --append --credential-description $clientsecretname --years $clientsecretduration --query password --output tsv)

Konfigurieren der lokalen RBAC

Sie können die Azure API for FHIR auf dem Blatt Authentifizierung für die Verwendung eines sekundären Azure Active Directory-Mandanten konfigurieren:

Lokale RBAC-Zuweisungen

Geben Sie im Feld Autorität einen gültigen sekundären Azure Active Directory-Mandanten ein. Nachdem der Mandant überprüft wurde, sollte das Feld Zulässige Objekt-IDs aktiviert werden, und Sie können eine oder eine Liste der Azure AD-Dienstprinzipalobjekt-IDs eingeben. Diese IDs können die Identitätsobjekt-IDs sein von:

  • Einem Azure Active Directory-Benutzer.
  • Einem Azure Active Directory-Dienstprinzipal.
  • Einer Azure Active Directory-Sicherheitsgruppe.

Weitere Informationen finden Sie im Artikel Finden von Identitätsobjekt-IDs für die Authentifizierungskonfiguration.

Nachdem Sie die erforderlichen Azure AD-Objekt-IDs eingegeben haben, wählen Sie Speichern aus, und warten Sie, bis Änderungen gespeichert werden, bevor Sie versuchen, mithilfe der zugewiesenen Benutzer, Dienstprinzipale oder Gruppen auf die Datenebene zuzugreifen. Den Objekt-IDs werden alle Berechtigungen erteilt, was der Rolle "FHIR-Datenmitwirkender" entspricht.

Die lokale RBAC-Einstellung ist nur auf dem Blatt für die Authentifizierung sichtbar. Sie ist auf dem Blatt Access Control (IAM) nicht sichtbar.

Hinweis

Für RBAC oder lokale RBAC wird nur ein einzelner Mandant unterstützt. Um die lokale RBAC-Funktion zu deaktivieren, können Sie sie wieder in den gültigen Mandanten (oder primären Mandanten) ändern, der Ihrem Abonnement zugeordnet ist, und alle Azure AD-Objekt-IDs im Feld "Zulässige Objekt-IDs" entfernen.

Verhalten beim Zwischenspeichern

Die Azure API for FHIR nimmt eine Zwischenspeicherung von Entscheidungen für bis zu fünf Minuten vor. Wenn Sie einem Benutzer Zugriff auf den FHIR-Server gewähren, indem Sie ihn der Liste der zulässigen Objekt-IDs hinzufügen, oder wenn Sie ihn aus der Liste entfernen, sollten Sie davon ausgehen, dass es bis zu fünf Minuten dauert, bis die Berechtigungsänderungen weitergegeben sind.

Nächste Schritte

In diesem Artikel haben Sie erfahren, wie Sie den Zugriff auf die FHIR-Datenebene mithilfe eines externen (sekundären) Azure Active Directory-Mandanten zuweisen. Im nächsten Artikel erfahren Sie mehr über zusätzliche Einstellungen für Azure API for FHIR:

FHIR® ist eine eingetragene Marke von HL7 und wird mit Genehmigung von HL7 verwendet.