Configurer un RBAC local pour FHIR

Cet article explique comment configurer l’API Azure pour FHIR afin d’utiliser un locataire Azure Active Directory (Azure AD) secondaire pour l’accès aux données. Utilisez ce mode uniquement s’il n’est pas possible d’utiliser le locataire Azure AD associé à votre abonnement.

Notes

Si votre service FHIR est configuré pour utiliser votre locataire Azure AD principal associé à votre abonnement, utilisez Azure RBAC pour attribuer des rôles de plan de données.

Ajouter un nouveau principal de service ou en utiliser un existant

RBAC local vous permet d’utiliser un principal de service dans le locataire Azure AD secondaire avec votre serveur FHIR. Vous pouvez créer un principal de service via les commandes Portail Azure, PowerShell ou CLI, ou utiliser un principal de service existant. Le processus est également appelé inscription d’application. Vous pouvez passer en revue et modifier les principaux de service via Azure AD à partir du portail ou à l’aide de scripts.

Les scripts PowerShell et CLI ci-dessous, qui sont testés et validés dans Visual Studio Code, créent un principal de service (ou une application cliente) et ajoutent une clé secrète client. L’ID de principal de service est utilisé pour le RBAC local et l’ID d’application et la clé secrète client seront utilisés ultérieurement pour accéder au service FHIR.

Vous pouvez utiliser le Az module PowerShell :

$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

Ou en utilisant Azure CLI :

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)

Configurer un RBAC local

Vous pouvez configurer l’API Azure pour FHIR pour utiliser un locataire Azure Active Directory secondaire dans le panneau Authentification :

Affectations de RBAC local

Dans la zone autorité, entrez un locataire Azure Active Directory secondaire valide. Une fois le locataire validé, la zone ID d’objet autorisés doit être activée et vous pouvez entrer un ou une liste d’ID d’objet principal de service Azure AD. Ces ID peuvent être les ID d’objet d’identité de :

  • Un utilisateur Azure Active Directory.
  • Un principal de service Azure Active Directory.
  • Un groupe de sécurité Azure Active Directory.

Pour plus d’informations, consultez l’article sur la façon de Rechercher des ID d’objet d’identité.

Après avoir entré les ID d’objet Azure AD requis, sélectionnez Enregistrer et attendez que les modifications soient enregistrées avant d’essayer d’accéder au plan de données à l’aide des utilisateurs, des principaux de service ou des groupes affectés. Les ID d’objet sont accordés avec toutes les autorisations, un équivalent du rôle « Contributeur de données FHIR ».

Le paramètre RBAC local est uniquement visible à partir du panneau d’authentification ; il n’est pas visible à partir du panneau Access Control (IAM).

Notes

Un seul locataire est pris en charge pour RBAC ou RBAC local. Pour désactiver la fonction RBAC locale, vous pouvez la remplacer par le locataire (ou locataire principal) valide associé à votre abonnement, puis supprimer tous les ID d’objet Azure AD dans la zone « ID d’objet autorisés ».

Comportement de mise en cache

L’API Azure pour FHIR met en cache les décisions pendant jusqu’à 5 minutes. Si vous accordez à un utilisateur l’accès au serveur FHIR en l’ajoutant à la liste des ID d’objet autorisés, ou le supprimez de la liste, jusqu’à cinq minutes peuvent être nécessaires pour que les modifications apportées aux autorisations soient propagées.

Étapes suivantes

Cet article vous a expliqué comment attribuer un accès au plan de données FHIR à l’aide d’un locataire Azure Active Directory externe (secondaire). Découvrez ensuite des paramètres supplémentaires pour l’API Azure pour FHIR :

FHIR® est une marque déposée de HL7 utilisé avec l’autorisation de HL7.