Rollenbasierte Zugriffssteuerung in Azure KI Studio
In diesem Artikel erfahren Sie, wie der Zugriff (Autorisierung) auf eine Azure KI Studio-Hub verwaltet wird. Die rollenbasierte Zugriffssteuerung von Azure (Azure RBAC) wird verwendet, um den Zugriff auf Azure-Ressourcen zu verwalten, z. B. die Möglichkeit, neue Ressourcen zu erstellen oder vorhandene zu verwenden. Benutzern in Ihrer Microsoft Entra ID werden bestimmte Rollen zugewiesen, die Zugriff auf Ressourcen gewähren. Azure bietet sowohl integrierte Rollen als auch die Möglichkeit, benutzerdefinierte Rollen zu erstellen.
Warnung
Die Anwendung einiger Rollen kann die Funktionalität der Benutzeroberfläche in Azure KI Studio für andere Benutz*innener einschränken. Wenn z. B. die Rolle eines Benutzers nicht die Möglichkeit hat, eine Compute-Instanz zu erstellen, ist die Option zum Erstellen einer Compute-Instanz im Studio nicht verfügbar. Dieses Verhalten wird erwartet und verhindert, dass der Benutzer Vorgänge versucht, die einen Fehler vom Typ „Zugriff verweigert“ zurückgeben würden.
KI Studio-Hub und -Projekt
Im Azure KI Studio gibt es zwei Zugriffsebenen: den Hub und das Projekt. Der Hub ist die Heimat der Infrastruktur (einschließlich der Einrichtung des virtuellen Netzwerks, vom Kunden verwalteter Schlüssel, verwalteter Identitäten und Richtlinien) und der Konfiguration Ihrer Azure KI-Dienste. Der Zugriff auf den Hub ermöglicht es Ihnen, die Infrastruktur zu ändern und neue Hubs und Projekte zu erstellen. Projekte sind eine Teilmenge des Hubs, die als Arbeitsbereiche fungieren, mit denen Sie KI-Systeme erstellen und bereitstellen können. Innerhalb eines Projekts können Sie Abläufe entwickeln, Modelle bereitstellen und Projektressourcen verwalten. Mit dem Projektzugriff können Sie KI von Anfang bis Ende entwickeln und dabei die Vorteile der auf dem Hub eingerichteten Infrastruktur nutzen.
Einer der wichtigsten Vorteile der Hub- und Projektbeziehung besteht darin, dass Entwickler eigene Projekte erstellen können, welche die Hub-Sicherheitseinstellungen erben. Möglicherweise verfügen Sie auch über Entwickler, die an einem Projekt mitwirken und keine neuen Projekte erstellen können.
Standardrollen für den Hub
Der KI Studio-Hub verfügt über integrierte Rollen, die standardmäßig verfügbar sind.
Hier ist eine Tabelle der integrierten Rollen und deren Berechtigungen für den Hub:
Rolle | Beschreibung |
---|---|
Besitzer | Vollzugriff auf den Hub, einschließlich der Möglichkeit, neue Hubs zu verwalten und zu erstellen und Berechtigungen zuzuweisen. Diese Rolle wird dem Hubersteller automatisch zugewiesen. |
Mitwirkender | Benutzer haben Vollzugriff auf den Hub, einschließlich der Möglichkeit, neue Hubs zu erstellen, sind aber nicht in der Lage, Hubberechtigungen für die vorhandene Ressource zu verwalten. |
Azure KI-Entwickler | Sie können alle Aktionen ausführen, außer neue Hubs erstellen und die Hubberechtigungen verwalten. Benutzer*innen können z. B. Projekte, Compute und Verbindungen erstellen. Benutzer*innen können Berechtigungen innerhalb ihres Projekts zuweisen. Benutzer*innen können mit vorhandenen Azure KI-Ressourcen wie Azure OpenAI, Azure KI-Suche und Azure KI Services interagieren. |
Azure KI-Rückschlussbereitstellungsoperator | Führen Sie alle erforderlichen Aktionen durch, um eine Ressourcenbereitstellung innerhalb einer Ressourcengruppe zu erstellen. |
Leser | Schreibgeschützter Zugriff auf den Hub. Diese Rolle wird allen Projektmitgliedern innerhalb des Hubs automatisch zugewiesen. |
Der Hauptunterschied zwischen „Mitwirkender“ und „Azure KI-Entwickler“ ist die Möglichkeit, neue Hubs zu erstellen. Wenn Sie nicht möchten, dass Benutzer neue Hubs erstellen (aufgrund von Kontingenten, Kosten oder einfach nur verwalten, wie viele Hubs Sie haben), weisen Sie die Azure KI-Entwicklerrolle zu.
Nur die Rollen „Besitzer“ und „Mitwirkender“ ermöglichen es Ihnen, einen Hub zu erstellen. Derzeit können Ihnen benutzerdefinierte Rollen nicht die Berechtigung erteilen, Hubs zu erstellen.
Rolle „Azure KI-Entwickler“
Der vollständige Satz von Berechtigungen für die Rolle „Azure KI-Entwickler“ lautet wie folgt:
{
"Permissions": [
{
"Actions": [
"Microsoft.MachineLearningServices/workspaces/*/read",
"Microsoft.MachineLearningServices/workspaces/*/action",
"Microsoft.MachineLearningServices/workspaces/*/delete",
"Microsoft.MachineLearningServices/workspaces/*/write",
"Microsoft.MachineLearningServices/locations/*/read",
"Microsoft.Authorization/*/read",
"Microsoft.Resources/deployments/*"
],
"NotActions": [
"Microsoft.MachineLearningServices/workspaces/delete",
"Microsoft.MachineLearningServices/workspaces/write",
"Microsoft.MachineLearningServices/workspaces/listKeys/action",
"Microsoft.MachineLearningServices/workspaces/hubs/write",
"Microsoft.MachineLearningServices/workspaces/hubs/delete",
"Microsoft.MachineLearningServices/workspaces/featurestores/write",
"Microsoft.MachineLearningServices/workspaces/featurestores/delete"
],
"DataActions": [
"Microsoft.CognitiveServices/accounts/OpenAI/*",
"Microsoft.CognitiveServices/accounts/SpeechServices/*",
"Microsoft.CognitiveServices/accounts/ContentSafety/*"
],
"NotDataActions": [],
"Condition": null,
"ConditionVersion": null
}
]
}
Wenn die integrierte Rolle „Azure KI-Entwickler“ Ihre Anforderungen nicht erfüllt, können Sie eine benutzerdefinierte Rolle erstellen.
Standardrollen für Projekte
Projekte in KI Studio verfügen über integrierte Rollen, die standardmäßig verfügbar sind.
Hier ist eine Tabelle der integrierten Rollen und deren Berechtigungen für das Projekt:
Rolle | Beschreibung |
---|---|
Besitzer | Vollzugriff auf das Projekt, einschließlich der Möglichkeit, Projektbenutzern Berechtigungen zuzuweisen. |
Mitwirkender | Der Benutzer hat Vollzugriff auf das Projekt, kann Projektbenutzern jedoch keine Berechtigungen zuweisen. |
Azure KI-Entwickler | Benutzer können die meisten Aktionen ausführen, einschließlich der Erstellung von Bereitstellungen, aber keine Berechtigungen für Projektbenutzer zuweisen. |
Azure KI-Rückschlussbereitstellungsoperator | Führen Sie alle erforderlichen Aktionen durch, um eine Ressourcenbereitstellung innerhalb einer Ressourcengruppe zu erstellen. |
Leser | Schreibgeschützter Zugriff auf das Projekt. |
Wenn einem Benutzer Zugriff auf ein Projekt gewährt wird (z. B. über die AI Studio-Berechtigungsverwaltung), werden dem Benutzer automatisch zwei weitere Rollen zugewiesen. Die erste Rolle ist Leser im Hub. Die zweite Rolle ist die Rolle "Bereitstellungsoperator für Inference", mit der der Benutzer Bereitstellungen für die Ressourcengruppe erstellen kann, in der sich das Projekt befindet. Diese Rolle besteht aus den beiden Berechtigungen: "Microsoft.Authorization/*/read"
und "Microsoft.Resources/deployments/*"
.
Um die End-to-End-KI-Entwicklung und -Bereitstellung abzuschließen, benötigen Benutzer in einem Projekt nur diese beiden automatisch zugewiesenen Rollen und entweder die Rolle Mitwirkender oder Azure KI-Entwickler.
Die zum Erstellen eines Projekts erforderlichen Mindestberechtigungen sind eine Rolle, welche die zulässige Aktion Microsoft.MachineLearningServices/workspaces/hubs/join
für den Hub hat. Die integrierte Azure II-Entwicklerrolle verfügt über diese Berechtigung.
Rolle „Azure KI-Administrator“
Vor dem 19.11.2024 wurde die für den Hub erstellte systemseitig zugewiesene verwaltete Identität automatisch der Rolle Mitwirkender für die Ressourcengruppe zugewiesen, die den Hub und die Projekte enthält. Für Hubs, die nach diesem Datum erstellt werden, wird die systemseitig zugewiesene verwaltete Identität der Rolle Azure KI-Administrator zugewiesen. Diese Rolle ist enger gefasst und beschränkt sich auf die Mindestberechtigungen, die die verwaltete Identität zum Durchführen ihrer Aufgaben benötigt.
Die Rolle Azure KI-Administrator befindet sich derzeit in der öffentlichen Vorschau.
Wichtig
Die in diesem Artikel markierten Elemente (Vorschau) sind aktuell als öffentliche Vorschau verfügbar. Diese Vorschauversion wird ohne Vereinbarung zum Servicelevel bereitgestellt und sollte nicht für Produktionsworkloads verwendet werden. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar. Weitere Informationen finden Sie unter Zusätzliche Nutzungsbestimmungen für Microsoft Azure-Vorschauen.
Die Rolle Azure KI-Administrator verfügt über die folgenden Berechtigungen:
{
"permissions": [
{
"actions": [
"Microsoft.Authorization/*/read",
"Microsoft.CognitiveServices/*",
"Microsoft.ContainerRegistry/registries/*",
"Microsoft.DocumentDb/databaseAccounts/*",
"Microsoft.Features/features/read",
"Microsoft.Features/providers/features/read",
"Microsoft.Features/providers/features/register/action",
"Microsoft.Insights/alertRules/*",
"Microsoft.Insights/components/*",
"Microsoft.Insights/diagnosticSettings/*",
"Microsoft.Insights/generateLiveToken/read",
"Microsoft.Insights/logDefinitions/read",
"Microsoft.Insights/metricAlerts/*",
"Microsoft.Insights/metricdefinitions/read",
"Microsoft.Insights/metrics/read",
"Microsoft.Insights/scheduledqueryrules/*",
"Microsoft.Insights/topology/read",
"Microsoft.Insights/transactions/read",
"Microsoft.Insights/webtests/*",
"Microsoft.KeyVault/*",
"Microsoft.MachineLearningServices/workspaces/*",
"Microsoft.Network/virtualNetworks/subnets/joinViaServiceEndpoint/action",
"Microsoft.ResourceHealth/availabilityStatuses/read",
"Microsoft.Resources/deployments/*",
"Microsoft.Resources/deployments/operations/read",
"Microsoft.Resources/subscriptions/operationresults/read",
"Microsoft.Resources/subscriptions/read",
"Microsoft.Resources/subscriptions/resourcegroups/deployments/*",
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Resources/subscriptions/resourceGroups/write",
"Microsoft.Storage/storageAccounts/*",
"Microsoft.Support/*",
"Microsoft.Search/searchServices/write",
"Microsoft.Search/searchServices/read",
"Microsoft.Search/searchServices/delete",
"Microsoft.Search/searchServices/indexes/*",
"Microsoft.DataFactory/factories/*"
],
"notActions": [],
"dataActions": [],
"notDataActions": []
}
]
}
Konvertieren einer vorhandenen systemseitig verwalteten Identität in die Rolle „Azure KI-Administrator“
Tipp
Es wird empfohlen, vor dem 19.11.2024 erstellte Hubs zur Verwendung der Rolle „Azure KI-Administrator“ zu konvertieren. Die Rolle „Azure KI-Administrator“ ist enger gefasst als die zuvor verwendet Rolle „Mitwirkender“ und folgt dem Prinzip der geringsten Rechte.
Sie können vor dem 19.11.2024 erstellte Hubs mit einer der folgenden Methoden konvertieren:
Azure REST-API: Verwenden Sie eine
PATCH
-Anforderung an die Azure REST-API für den Arbeitsbereich. Der Anforderungstext sollte{"properties":{"allowRoleAssignmeentOnRG":true}}
festlegen. Das folgende Beispiel zeigt einePATCH
-Anforderung mitcurl
. Ersetzen Sie<your-subscription>
,<resource-group-name>
,<workspace-name>
und<YOUR-ACCESS-TOKEN>
durch die Werte für Ihr Szenario. Weitere Informationen zur Verwendung von REST-APIs finden Sie in der Dokumentation zur Azure REST-API.curl -X PATCH https://management.azure.com/subscriptions/<your-subscription>/resourcegroups/<resource-group-name>/providers/Microsoft.MachineLearningServices/workspaces/<workspace-name>?api-version=2024-04-01-preview -H "Authorization:Bearer <YOUR-ACCESS-TOKEN>"
Azure-Befehlszeilenschnittstelle (Command Line Interface, CLI): Verwenden Sie den Befehl
az ml workspace update
mit dem Parameter--allow-roleassignment-on-rg true
. Im folgenden Beispiel wird ein Arbeitsbereich namensmyworkspace
aktualisiert. Für diesen Befehl ist Version 2.27.0 oder höher der Azure Machine Learning CLI-Erweiterung erforderlich.az ml workspace update --name myworkspace --allow-roleassignment-on-rg true
Azure Python SDK: Legen Sie die
allow_roleassignment_on_rg
-Eigenschaft des Workspace-Objekts aufTrue
fest, und führen Sie dann einen Aktualisierungsvorgang aus. Im folgenden Beispiel wird ein Arbeitsbereich namensmyworkspace
aktualisiert. Für diesen Vorgang ist Version 1.17.0 oder höher des Azure Machine Learning SDK erforderlich.ws = ml_client.workspaces.get(name="myworkspace") ws.allow_roleassignment_on_rg = True ws = ml_client.workspaces.begin_update(workspace=ws).result()
Azure RBAC-Berechtigungen des Abhängigkeitsdiensts
Der Hub ist von anderen Azure-Diensten abhängig. In der folgenden Tabelle sind die Berechtigungen aufgeführt, die für diese Dienste erforderlich sind, wenn Sie einen Hub erstellen. Die Person, die den Hub erstellt, benötigt diese Berechtigungen. Die Person, die ein Projekt aus dem Hub erstellt, benötigt sie nicht.
Berechtigung | Zweck |
---|---|
Microsoft.Storage/storageAccounts/write |
Erstellen Sie ein Speicherkonto mit den angegebenen Parametern oder aktualisieren Sie die Eigenschaften oder Tags oder fügen Sie eine benutzerdefinierte Domäne für das angegebene Speicherkonto hinzu. |
Microsoft.KeyVault/vaults/write |
Erstellt einen neuen Schlüsseltresor oder aktualisiert die Eigenschaften eines vorhandenen Schlüsseltresors. Bestimmte Eigenschaften erfordern möglicherweise mehr Berechtigungen. |
Microsoft.CognitiveServices/accounts/write |
API-Konten schreiben. |
Microsoft.MachineLearningServices/workspaces/write |
Erstellt einen Arbeitsbereich oder aktualisiert die Eigenschaften eines vorhandenen Arbeitsbereichs. |
Beispiel für die Unternehmens-RBAC-Einrichtung
In der folgenden Tabelle finden Sie ein Beispiel dafür, wie Sie eine rollenbasierte Zugriffskontrolle für Ihr Azure KI Studio für ein Unternehmen einrichten.
Persona | Role | Purpose |
---|---|---|
IT-Administrator | Besitzer des Hubs. | Der IT-Administrator kann sicherstellen, dass der Hub für seine Unternehmensstandards eingerichtet ist. Sie können Managern die Rolle „Mitwirkender“ für die Ressource zuweisen, wenn sie Managern ermöglichen möchten, neue Hubs zu erstellen. Oder sie können Managern die Azure KI-Entwicklerrolle für die Ressource zuweisen, um keine neue Huberstellung zuzulassen. |
Manager | Mitwirkender oder Azure KI-Entwickler im Hub | Manager können den Hub verwalten, Computeressourcen überwachen, Verbindungen überwachen und freigegebene Verbindungen erstellen. |
Teamleiter/Leadentwickler | Azure KI-Entwickler im Hub | Leitende Entwickler können Projekte für ihr Team erstellen und gemeinsame Ressourcen (z. B. Rechenleistung und Verbindungen) auf der Hubebene anlegen. Nach der Projekterstellung können Projektbesitzer andere Mitglieder einladen. |
Teammitglieder/Entwickler | Mitwirkender oder Azure KI-Entwickler im Projekt | Entwickler können KI-Modelle in einem Projekt erstellen und bereitstellen und Ressourcen erstellen, die Entwicklung ermöglichen, z. B. Berechnungen und Verbindungen. |
Zugriff auf Ressourcen, die außerhalb des Hubs erstellt wurden
Wenn Sie einen Hub erstellen, gewähren Ihnen die integrierten rollenbasierten Zugriffssteuerungsberechtigungen Zugriff auf die Verwendung der Ressource. Wenn Sie jedoch Ressourcen nutzen möchten, die nicht in Ihrem Namen erstellt wurden, müssen Sie beides sicherstellen:
- Die Ressource, die Sie verwenden möchten, verfügt über Berechtigungen, die Ihnen den Zugriff darauf ermöglichen.
- Ihr Hub darf darauf zugreifen.
Wenn Sie beispielsweise versuchen, einen neuen Blob-Speicher zu nutzen, müssen Sie sicherstellen, dass die verwaltete Identität des Hubs der Blob Storage-Leserrolle für das Blob hinzugefügt wird. Wenn Sie versuchen, eine neue Azure KI Search-Quelle zu verwenden, müssen Sie möglicherweise den Hub zu den Rollenzuweisungen der Azure KI Search hinzufügen.
Verwalten des Zugriffs mit Rollen
Wenn Sie Besitzer eines Hubs sind, können Sie für KI Studio Rollen hinzufügen und entfernen. Wechseln Sie in KI Studio zur Seite Home, und wählen Sie Ihren Hub aus. Wählen Sie dann Benutzer aus, um Benutzer für den Hub hinzuzufügen und zu entfernen. Sie können Berechtigungen auch über das Azure-Portal unter Access Control (IAM) oder über die Azure CLI verwalten. Verwenden Sie beispielsweise die Azure CLI, um „joe@contoso.com“ die Rolle „Azure KI-Entwickler“ für die Ressourcengruppe „this-rg“ mit dem folgenden Befehl zuzuweisen:
az role assignment create --role "Azure AI Developer" --assignee "joe@contoso.com" --resource-group this-rg
Erstellen von benutzerdefinierten Rollen
Wenn die integrierten Rolle nicht ausreichend sind, können Sie benutzerdefinierte Rollen erstellen. Benutzerdefinierte Rollen können über Berechtigungen zum Lesen, Schreiben, Löschen und für Computeressourcen in diesem KI Studio verfügen. Sie können die Rolle auf einer bestimmten Projektebene, einer bestimmten Ressourcengruppenebene oder einer bestimmten Abonnementebene verfügbar machen.
Hinweis
Sie müssen auf der entsprechenden Ebene Besitzer der Ressource sein, um eine benutzerdefinierte Rolle in dieser Ressource erstellen zu können.
Im folgenden JSON-Beispiel wird eine benutzerdefinierte KI Studio-Entwicklerrolle auf Abonnementebene definiert:
{
"properties": {
"roleName": "AI Studio Developer",
"description": "Custom role for AI Studio. At subscription level",
"assignableScopes": [
"/subscriptions/<your-subscription-id>"
],
"permissions": [
{
"actions": [
"Microsoft.MachineLearningServices/workspaces/write",
"Microsoft.MachineLearningServices/workspaces/endpoints/write",
"Microsoft.Storage/storageAccounts/write",
"Microsoft.Resources/deployments/validate/action",
"Microsoft.KeyVault/vaults/write",
"Microsoft.Authorization/roleAssignments/read",
"Microsoft.Authorization/roleDefinitions/read",
"Microsoft.CognitiveServices/*/read"
],
"notActions": [
"Microsoft.MachineLearningServices/workspaces/delete",
"Microsoft.MachineLearningServices/workspaces/write",
"Microsoft.MachineLearningServices/workspaces/listKeys/action",
"Microsoft.MachineLearningServices/workspaces/hubs/write",
"Microsoft.MachineLearningServices/workspaces/hubs/delete",
"Microsoft.MachineLearningServices/workspaces/featurestores/write",
"Microsoft.MachineLearningServices/workspaces/featurestores/delete"
],
"dataActions": [
"Microsoft.CognitiveServices/accounts/OpenAI/*/read",
"Microsoft.CognitiveServices/accounts/OpenAI/engines/completions/action",
"Microsoft.CognitiveServices/accounts/OpenAI/engines/search/action",
"Microsoft.CognitiveServices/accounts/OpenAI/engines/generate/action",
"Microsoft.CognitiveServices/accounts/OpenAI/deployments/search/action",
"Microsoft.CognitiveServices/accounts/OpenAI/deployments/completions/action",
"Microsoft.CognitiveServices/accounts/OpenAI/deployments/chat/completions/action",
"Microsoft.CognitiveServices/accounts/OpenAI/deployments/extensions/chat/completions/action",
"Microsoft.CognitiveServices/accounts/OpenAI/deployments/embeddings/action",
"Microsoft.CognitiveServices/accounts/OpenAI/images/generations/action"
],
"notDataActions": []
}
]
}
}
Schritte zum Erstellen einer benutzerdefinierten Rolle finden Sie in den folgenden Artikeln:
Weitere Informationen zum Erstellen benutzerdefinierter Rollen im Allgemeinen finden Sie im Artikel Benutzerdefinierte Azure-Rollen.
Zuweisen von Rollen in KI Studio
Sie können direkt in Azure KI Studio auf Hub- oder Projekt Benutzer hinzufügen und Rollen zuweisen. Wählen Sie im Verwaltungscenter im Hub- oder Projektabschnitt die Option Benutzer und dann Neuer Benutzer aus, um einen Benutzer hinzuzufügen.
Hinweis
Sie können nur integrierte Rollen auswählen. Wenn Sie benutzerdefinierte Rollen zuweisen müssen, müssen Sie das Azure-Portal, die Azure CLI oder Azure PowerShell verwenden.
Anschließend werden Sie aufgefordert, die Benutzerinformationen einzugeben und eine integrierte Rolle auszuwählen.
Szenario: Verwenden eines vom Kunden verwalteten Schlüssels
Beim Konfigurieren eines Hubs für die Verwendung eines kundenseitig verwalteten Schlüssels (CMK) wird eine Azure Key Vault-Instanz verwendet, um den Schlüssel zu speichern. Der Benutzer- oder Dienstprinzipal, der zum Erstellen des Arbeitsbereichs verwendet wird, muss über die Zugriffsberechtigung „Besitzer“ oder „Mitwirkender“ für den Schlüsseltresor verfügen.
Wenn Ihr KI Studio-Hub mit einer benutzerseitig zugewiesenen verwalteten Identität konfiguriert ist, müssen der Identität den folgenden Rollen zugewiesen werden. Mit diesen Rollen kann die verwaltete Identität die Azure Storage-, Azure Cosmos DB- und Azure Search-Ressourcen erstellen, die bei Verwendung eines vom Kunden verwalteten Schlüssels verwendet werden:
Microsoft.Storage/storageAccounts/write
Microsoft.Search/searchServices/write
Microsoft.DocumentDB/databaseAccounts/write
Innerhalb des Schlüsseltresors muss dem Benutzer- oder Dienstprinzipal über eine Schlüsseltresor-Zugriffsrichtlinie Zugriff für das Erstellen, Abrufen, Löschen und Bereinigen des Schlüssels zugewiesen werden. Weitere Informationen finden Sie unter Azure Key Vault – Sicherheit.
Szenario: Verbindungen mit Microsoft Entra ID-Authentifizierung
Wenn Sie eine Verbindung erstellen, die die Microsoft Entra ID-Authentifizierung verwendet, müssen Sie Ihren Entwicklern Rollen zuweisen, damit diese auf die Ressource zugreifen können.
Ressourcenverbindung | Role | Beschreibung |
---|---|---|
Azure KI Cognitive Search | Mitwirkender | Listen Sie die API-Schlüsseln aus Azure KI Studio auf, um die Indizes aufzulisten. |
Azure KI Search | Mitwirkender an Suchindexdaten | Erforderlich für Indizierungsszenarien |
Azure KI Services/Azure OpenAI | Mitwirkender für Cognitive Services OpenAI | Rufen Sie die öffentliche Erfassungs-API im Azure KI Studio auf. |
Azure KI Services/Azure OpenAI | Cognitive Services-Benutzer | Listen Sie die API-Schlüssel aus Azure KI Studio auf. |
Azure KI Services/Azure OpenAI | Mitwirkender für Cognitive Services | Ermöglicht Aufrufe der Steuerungsebene. |
Azure Blob Storage | Mitwirkender an Storage-Blobdaten | Erforderlich zum Lesen und Schreiben von Daten in den Blobspeicher. |
Azure Data Lake Storage Gen2 | Mitwirkender an Storage-Blobdaten | Erforderlich zum Lesen und Schreiben von Daten in den Data Lake. |
Microsoft OneLake | Mitwirkender | Um jemandem Zugriff auf Microsoft OneLake zu gewähren, müssen Sie ihnen Zugriff auf Ihren Microsoft Fabric-Arbeitsbereich gewähren. |
Wichtig
Wenn Sie Promptflow mit Azure Storage (einschließlich Azure Data Lake Storage Gen 2) verwenden, müssen Sie auch die Rolle Privilegierter Mitwirkender von Speicherdateidaten zuweisen.
Bei Verwendung von authentifizierten Verbindungen in Microsoft Entra ID im Chat-Playground müssen sich die Dienste gegenseitig autorisieren, um auf die erforderlichen Ressourcen zuzugreifen. Administrator*innen, die die Konfiguration ausführen, benötigen die Rolle Owner für diese Ressourcen, um Rollenzuweisungen hinzuzufügen. In der folgenden Tabelle werden die für jede Ressource erforderlichen Rollenzuweisungen aufgelistet. Die Spalte Zugewiesene Person bezieht sich auf die systemseitig zugewiesene verwaltete Identität der aufgelisteten Ressource. Die Spalte Ressource bezieht sich auf die Ressource, auf die die zugewiesene Person zugreifen muss. Azure OpenAI verfügt beispielsweise über eine systemseitig zugewiesene verwaltete Identität, die der Rolle Suchindexdatenleser für die Ressource von Azure KI-Suche zugewiesen werden muss.
Role | Zugewiesene Person | Resource | Beschreibung |
---|---|---|---|
Suchindexdatenleser | Azure KI Services/Azure OpenAI | Azure KI Search | Der Rückschlussdienst fragt die Daten aus dem Index ab. Wird nur für Rückschlussszenarien verwendet. |
Mitwirkender an Suchindexdaten | Azure KI Services/Azure OpenAI | Azure KI Search | Lese-/Schreibzugriff auf Inhalte in Indizes. Importieren, Aktualisieren oder Abfragen der Dokumentensammlung eines Indexes. Wird nur für Erfassungs- und Rückschlussszenarien verwendet. |
Mitwirkender von Suchdienst | Azure KI Services/Azure OpenAI | Azure KI Search | Lese-/Schreibzugriff auf Objektdefinitionen (Indizes, Aliase, Synonymzuordnungen, Indexer, Datenquellen und Skillsets). Der Rückschlussdienst fragt das Indexschema für die automatische Feldzuordnung ab. Der Datenerfassungsdienst erstellt den Index, Datenquellen, Skills und den Indexer und fragt den Indexerstatus ab. |
Mitwirkender für Cognitive Services OpenAI | Azure KI Search | Azure KI Services/Azure OpenAI | Benutzerdefinierter Skill |
Cognitive Services OpenAI-Benutzer | Azure OpenAI-Ressource für das Chatmodell | Azure OpenAI-Ressource für das Einbettungsmodell | Nur erforderlich, wenn zwei Azure OpenAI-Ressourcen für die Kommunikation verwendet werden. |
Mitwirkender an Storage-Blobdaten | Azure KI Cognitive Search | Azure Storage-Konto | Liest Blobs und schreibt in den Wissensspeicher. |
Mitwirkender an Storage-Blobdaten | Azure KI Services/Azure OpenAI | Azure Storage-Konto | Liest aus dem Eingabecontainer und schreibt die vorverarbeitete Ergebnisse in den Ausgabecontainer. |
Hinweis
Die Rolle Cognitive Services OpenAI-Benutzer ist nur erforderlich, wenn Sie zwei Azure OpenAI-Ressourcen verwenden: eine für Ihr Chatmodell und eine für Ihr Einbettungsmodell. Wenn dies zutrifft, aktivieren Sie Vertrauenswürdige Dienste und stellen Sie sicher, dass in der Verbindung für Ihr Einbettungsmodell der Azure OpenAI-Ressource Microsoft Entra ID aktiviert ist.
Szenario: Verwenden einer vorhandenen Azure OpenAI-Ressource
Wenn Sie eine Verbindung zu einer bestehenden Azure OpenAI-Ressource erstellen, müssen Sie Ihren Benutzerinnen und Benutzern auch Rollen zuweisen, damit diese auf die Ressource zugreifen können. Sie sollten entweder die Rolle Cognitive Services OpenAI-Benutzerin oder -Benutzer oder Cognitive Services OpenAI-Mitwirkende zuweisen, je nach den Aufgaben, die sie ausführen müssen. Informationen zu diesen Rollen und den von ihnen aktivierten Aufgaben finden Sie unter Azure OpenAI-Rollen.
Szenario: Verwenden von Azure Container Registry
Eine Azure Container Registry-Instanz ist eine optionale Abhängigkeit für Azure KI Studio-Hub. In der folgenden Tabelle ist die Unterstützungsmatrix bei der Authentifizierung eines Hubs bei Azure Container Registry abhängig von der Authentifizierungsmethode und der Konfiguration des Zugriffs auf das öffentliche Netzwerk für Azure Container Registry aufgeführt.
Authentifizierungsmethode | Öffentlicher Netzwerkzugriff ist deaktiviert |
Azure Container Registry Zugriff auf öffentliches Netzwerk aktiviert |
---|---|---|
Administratorbenutzer | ✓ | ✓ |
Systemseitig zugewiesene verwalteten Identität für AI Studio-Hub | ✓ | ✓ |
Benutzerseitig zugewiesene verwalteten Identität für AI Studio-Hub mit der ACRPull-Rolle, die der Identität zugewiesen ist |
✓ |
Eine systemseitig zugewiesene verwaltete Identität wird automatisch den richtigen Rollen zugewiesen, wenn der Hub erstellt wird. Wenn Sie eine benutzerseitig zugewiesene verwaltete Identität verwenden, müssen Sie ihr die die Rolle ACRPull zuweisen.
Szenario: Verwenden von Azure Application Insights für die Protokollierung
Azure Application Insights ist eine optionale Abhängigkeit für den Azure KI Studio-Hub. In der folgenden Tabelle sind die erforderlichen Berechtigungen aufgeführt, wenn Sie beim Erstellen eines Hubs Application Insights verwenden möchten. Die Person, die den Hub erstellt, benötigt diese Berechtigungen. Die Person, die ein Projekt aus dem Hub erstellt, benötigt diese Berechtigungen nicht.
Berechtigung | Zweck |
---|---|
Microsoft.Insights/Components/Write |
Schreiben sie in eine Komponentenkonfiguration für Anwendungseinblicke. |
Microsoft.OperationalInsights/workspaces/write |
Erstellen Sie einen neuen Arbeitsbereich oder Links zu einem bestehenden Arbeitsbereich, indem Sie die Kunden-ID des bestehenden Arbeitsbereichs angeben. |
Szenario: Beschaffung bereitgestellter Durchsatzeinheiten
Im folgenden Beispiel wird eine benutzerdefinierte Rolle definiert, die bereitgestellte Durchsatzeinheiten (PTU) beschaffen kann.
{
"properties": {
"roleName": "PTU procurer",
"description": "Custom role to purchase PTU",
"assignableScopes": [
"/subscriptions/<your-subscription-id>"
],
"permissions": [
{
"actions": [
"Microsoft.CognitiveServices/accounts/commitmentplans/read",
"Microsoft.CognitiveServices/accounts/commitmentplans/write",
"Microsoft.CognitiveServices/accounts/commitmentplans/delete",
"Microsoft.CognitiveServices/locations/commitmentTiers/read",
"Microsoft.CognitiveServices/accounts/commitmentplans/read",
"Microsoft.CognitiveServices/accounts/commitmentplans/write",
"Microsoft.CognitiveServices/accounts/commitmentplans/delete",
"Microsoft.Features/features/read",
"Microsoft.Features/providers/features/read",
"Microsoft.Features/providers/features/register/action",
"Microsoft.Insights/logDefinitions/read",
"Microsoft.Insights/metricdefinitions/read",
"Microsoft.Insights/metrics/read",
"Microsoft.ResourceHealth/availabilityStatuses/read",
"Microsoft.Resources/deployments/operations/read",
"Microsoft.Resources/subscriptions/operationresults/read",
"Microsoft.Resources/subscriptions/read",
"Microsoft.Resources/subscriptions/resourcegroups/deployments/*",
"Microsoft.Resources/subscriptions/resourceGroups/read"
],
"notActions": [],
"dataActions": [],
"notDataActions": []
}
]
}
}
Szenario: Azure OpenAI Assistants-API
Im folgenden Beispiel wird eine Rolle für einen Entwickler mithilfe von Azure OpenAI Assistants definiert.
{
"id": "",
"properties": {
"roleName": "Azure OpenAI Assistants API Developer",
"description": "Custom role to work with Azure OpenAI Assistants API",
"assignableScopes": [
"<your-scope>"
],
"permissions": [
{
"actions": [
"Microsoft.CognitiveServices/*/read",
"Microsoft.Authorization/roleAssignments/read",
"Microsoft.Authorization/roleDefinitions/read"
],
"notActions": [],
"dataActions": [
"Microsoft.CognitiveServices/accounts/OpenAI/*/read",
"Microsoft.CognitiveServices/accounts/OpenAI/engines/completions/action",
"Microsoft.CognitiveServices/accounts/OpenAI/engines/search/action",
"Microsoft.CognitiveServices/accounts/OpenAI/engines/generate/action",
"Microsoft.CognitiveServices/accounts/OpenAI/deployments/search/action",
"Microsoft.CognitiveServices/accounts/OpenAI/deployments/completions/action",
"Microsoft.CognitiveServices/accounts/OpenAI/deployments/chat/completions/action",
"Microsoft.CognitiveServices/accounts/OpenAI/deployments/extensions/chat/completions/action",
"Microsoft.CognitiveServices/accounts/OpenAI/deployments/embeddings/action",
"Microsoft.CognitiveServices/accounts/OpenAI/images/generations/action",
"Microsoft.CognitiveServices/accounts/OpenAI/assistants/write",
"Microsoft.CognitiveServices/accounts/OpenAI/assistants/read",
"Microsoft.CognitiveServices/accounts/OpenAI/assistants/delete",
"Microsoft.CognitiveServices/accounts/OpenAI/assistants/files/write",
"Microsoft.CognitiveServices/accounts/OpenAI/assistants/files/read",
"Microsoft.CognitiveServices/accounts/OpenAI/assistants/files/delete",
"Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/write",
"Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/read",
"Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/delete",
"Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/messages/write",
"Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/messages/read",
"Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/messages/files/read",
"Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/runs/write",
"Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/runs/read",
"Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/runs/steps/read"
],
"notDataActions": []
}
]
}
}
Problembehandlung
Fehler: Prinzipal hat keinen Zugriff auf API/Vorgang
Problembeschreibung
Wenn Sie den Azure KI Studio-Chat-Playground verwenden, erhalten Sie eine Fehlermeldung mit dem Hinweis „Prinzipal hat keinen Zugriff auf API/Vorgang“. Der Fehler enthält u. U. auch einen Wert für „Apim-request-id“.
Ursache
Der Benutzer oder Dienstprinzipal, der zum Authentifizieren von Anforderungen an Azure OpenAI oder Azure KI-Suche verwendet wird, verfügt nicht über die erforderlichen Berechtigungen für den Zugriff auf die Ressource.
Lösung
Weisen Sie dem Benutzer oder Dienstprinzipal die folgenden Rollen zu. Die von Ihnen zugewiesene Rolle hängt von den Diensten, die Sie verwenden, und von der Zugriffsebene ab, die der Benutzer oder Dienstprinzipal erfordert:
Dienst, auf den zugegriffen wird | Role | Beschreibung |
---|---|---|
Azure OpenAI | Mitwirkender für Cognitive Services OpenAI | Rufen Sie die öffentliche Erfassungs-API im Azure KI Studio auf. |
Azure OpenAI | Cognitive Services-Benutzer | Listen Sie die API-Schlüssel aus Azure KI Studio auf. |
Azure KI Cognitive Search | Mitwirkender an Suchindexdaten | Erforderlich für Indizierungsszenarien. |
Azure KI Cognitive Search | Suchindexdatenleser | Der Rückschlussdienst fragt die Daten aus dem Index ab. Wird nur für Rückschlussszenarien verwendet. |