Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Azure Files stellt verwaltete Dateifreigaben bereit, mit denen mandantenfähige Lösungen Mandantendaten speichern können. In diesem Artikel werden Isolationsmodelle und Azure Files Features für Mehrinstanzenlösungen beschrieben. Es enthält Links zu Anleitungen, die Ihnen helfen können, die Dateien von Mandanten zu isolieren und Den Zugriff, Verschlüsselung und Nutzung zu verwalten.
Isolationsmodelle
Wenn Sie Azure Files in einem mandantenfähigen System verwenden, legen Sie den anzuwendenden Isolationsgrad fest. Sie können Dateifreigaben freigeben, Dateifreigaben für jeden Mandanten innerhalb eines Speicherkontos erstellen oder dedizierte Ressourcen für jeden Mandanten verwenden. Wählen Sie Zugriffssteuerungs- und Isolationsmodelle aus, die zu dem Protokoll und Ressourcenanbieter passen, den Sie verwenden. In der folgenden Tabelle sind die Unterschiede zwischen den Wichtigsten Mandantenisolationsmodellen für Dateifreigaben in Speicherkonten zusammengefasst. Eine Alternative, die keine Speicherkonten erfordert, finden Sie unter "Dateifreigaben" als eigenständige Ressourcen.
| Consideration | Gemeinsame Dateifreigaben | Dateifreigaben für jeden Mandanten | Speicherkonten für jeden Mandanten |
|---|---|---|---|
| Datenisolation | Mittelhoch. Anwenden von Autorisierungsregeln für mandantenspezifische Dateien und Verzeichnisse. | Mittelhoch | Hoch |
| Leistungsisolation | Low | niedrig bis mittel Die meisten Kontingente und Grenzwerte gelten für das gesamte Speicherkonto. Legen Sie Größenkontingente für jede Dateifreigabe fest, oder verwenden Sie bereitgestellte SSD-Freigaben (v2), um IOPS und Durchsatz für jede Freigabe bereitzustellen. | Hoch |
| Komplexität der Bereitstellung | Low | Medium | Hoch |
| Betriebliche Komplexität | Low | Medium | Hoch |
| Beispielszenario | Eine Anwendung steuert den gesamten Zugriff auf Dateien. | Benutzer greifen auf ihre eigenen Dateien zu. | Jeder Mandant verfügt über einen eigenen Bereitstellungsstempel. |
Hinweis
Berücksichtigen Sie Kontingente und Grenzwerte, wenn Sie ein Isolationsmodell auswählen. Zu diesen Grenzwerten gehören Azure Servicelimits, Azure Files Skalierbarkeitsziele und Skalierbarkeitsziele für den Speicherressourcenanbieter.
Gemeinsame Dateifreigaben
Wenn Sie mit Dateifreigaben arbeiten, können Sie eine gemeinsame Dateifreigabe mit Dateipfaden verwenden, um die Daten der Mandanten voneinander zu trennen.
| Mieter-ID | Beispieldateipfad |
|---|---|
tenant-a |
https://contoso.file.core.windows.net/share/tenant-a/file1.mp4 |
tenant-b |
https://contoso.file.core.windows.net/share/tenant-b/file2.mp4 |
Dateipfade identifizieren zwar die Daten der einzelnen Mandanten, erzwingen für sich genommen jedoch keine Isolation. Berücksichtigen Sie Isolationsansätze basierend auf der Art und Weise, wie Ihre Anwendungen auf Daten in der Freigabe zugreifen:
- Wenden Sie für den SMB-Zugriff (Server Message Block) Autorisierung und Verzeichnis- oder Dateiberechtigungen auf Freigabeebene an, um den Zugriff jedes Mandanten einzuschränken.
- Für den FileREST-Zugriff geben Sie SAS-Token (Shared Access Signature) für die entsprechenden Ressourcen aus, oder erzwingen Sie die Isolation in Ihrer Anwendung.
- Verlassen Sie sich bei NFS-Zugriff nicht auf Mandantenverzeichnisse oder separate Freigaben innerhalb eines Speicherkontos, um einander nicht vertrauende, mandantengesteuerte Clients zu isolieren. NFS verwendet Zugriffssteuerungen auf Netzwerkebene anstelle der benutzerbasierten Authentifizierung. Klassische Freigaben verwenden Netzwerkregeln auf Kontoebene gemeinsam. Führen Sie den Zugriff über eine vertrauenswürdige Anwendungsebene, oder verwenden Sie separate Speicherkonten oder eigenständige Freigaben mit mandantenspezifischen Netzwerkeinschränkungen.
Wenn Sie freigegebene Dateifreigaben verwenden, überlegen Sie, ob Sie die Daten und die Nutzung für jeden Mandanten nachverfolgen müssen. Weitere Informationen finden Sie unter Überwachung.
Dateifreigaben für jeden Mandanten
Sie können für jeden Mandanten separate Dateifreigaben innerhalb eines einzelnen Speicherkontos erstellen. Verwenden Sie für dieses Szenario Azure Files Zugriffssteuerung, um den Zugriff für die Daten jedes Mandanten zu verwalten. Wählen Sie die identitätsbasierte Autorisierung für SMB oder den bereichsbezogenen Zugriff für FileREST aus. Sie können auch die Kapazität überwachen, die jede Dateifreigabe verwendet.
Bei SSD-Dateifreigaben können Sie mit dem Provisioned v2-Modell Speicher, IOPS und Durchsatz unabhängig für jede Freigabe bereitstellen. Diese Funktion verbessert die Leistungsisolation zwischen Mandanten, da die Aktivität eines Mandanten nicht den Durchsatz verbraucht, den Sie für die Freigabe eines anderen Mandanten bereitstellen. Sie unterstützt auch die Kostennachverfolgung pro Mandant, da Azure Files jede Freigabe nach ihrer bereitgestellten Kapazität abrechnet.
Speicherkonten für jeden Mandanten
Ein dediziertes Speicherkonto für jeden Mandanten isoliert Speicherkontoschlüssel, die Sie unabhängig voneinander rotieren können. Außerdem können Sie Ihre Lösung über die Grenzwerte und Kontingente für jedes Speicherkonto skalieren. Sie müssen jedoch auch die maximale Anzahl von Speicherkonten berücksichtigen, die innerhalb eines einzelnen Azure-Abonnements zulässig sind.
Dateifreigaben als eigenständige Ressourcen
Sie können eine Dateifreigabe als eigenständige Azure-Ressource der obersten Ebene erstellen, indem Sie den Microsoft.FileShares-Ressourcenanbieter verwenden, der eine Freigabe ohne Speicherkonto bereitstellt. Jede Freigabe verfügt über eigene Leistungs-, Redundanz-, Netzwerk- und Abrechnungseinstellungen, sodass Sie Mandanten isolieren können, ohne die Grenzwerte für gemeinsame Speicherkonten zu verwalten. Berücksichtigen Sie die Anzahl der Dateifreigaben, die Sie für jedes Abonnement in jeder Region bereitstellen können , wenn Sie dieses Modell auswerten.
Dieser Ressourcenanbieter unterstützt derzeit nur NFS 4.1 SSD-Freigaben, die das Abrechnungsmodell „Provisioned v2“ verwenden, und das SMB-Protokoll wird nicht unterstützt. Wenn Ihre Mandanten SMB-Zugriff, die unter identitätsbasierte Zugriffssteuerung beschriebenen Optionen oder HDD-Speicher benötigen, verwenden Sie stattdessen Dateifreigaben in einem Speicherkonto. Die vollständige Liste der Unterschiede finden Sie unter Vergleich der Anbieter Microsoft.Storage und Microsoft.FileShares.
Azure Files-Features, die Mandantenfähigkeit unterstützen
Die folgenden Azure Files Features können Ihnen helfen, Ihr ausgewähltes Isolationsmodell zu implementieren und zu betreiben.
Geteilte Zugriffssignaturen
Wenn Sie über die FileREST-API auf Azure Files zugreifen, überlegen Sie, ob Clientanforderungen über Ihre Anwendungsebene weitergeleitet werden sollen oder ob Clients eine direkte Verbindung mit einer Dateifreigabe herstellen können. Der direkte Clientzugriff kann die Last Ihrer Back-End-Anwendungen und die Anzahl der Netzwerksprünge verringern.
Mit einer freigegebenen Zugriffssignatur (SHARED Access Signature, SAS) können Sie Clientanwendungen mit eingeschränktem Zugriff auf Dateifreigaben oder einzelne Dateien bereitstellen. Sie können die Vorgänge einschränken, die ein Client ausführen kann, und den Zeitraum, in dem der Zugriff zulässig ist. Die SAS-Autorisierung gilt für FileREST-Anforderungen, nicht für SMB- oder NFS-Zugriff.
Verwenden Sie das Valet Key-Muster , um eingeschränkte und bereichsbezogene SAS-Token von Ihrer Anwendungsebene aus auszugeben. Authentifizieren Sie den Client über das Authentifizierungssystem Ihrer Anwendung, ermitteln Sie, auf welche Mandantendateien der Client zugreifen darf, und stellen Sie ein Token nur für die erforderlichen Ressourcen und Vorgänge aus.
Mithilfe von gespeicherten Zugriffsrichtlinien können Sie eine einzelne Richtlinie definieren, die verwendet werden soll, wenn Sie mehrere Dienst-SAS-Token ausstellen. Gespeicherte Zugriffsrichtlinien gelten nicht für SAS-Token für Benutzerdelegierung oder Konto-SAS-Token.
SAS für die Benutzerdelegierung
Ein Dienst-SAS oder Konto-SAS ist mit einem der Schlüssel Ihres Speicherkontos signiert. Stattdessen wird eine Benutzerdelegierungs-SAS mit Microsoft Entra Anmeldeinformationen gesichert. Ihre Anwendungsebene fordert einen Benutzerdelegierungsschlüssel mithilfe einer eigenen verwalteten Identität an und signiert dann bereichsbezogene, zeitlich begrenzte Token für jeden Mandanten. Sie verteilen oder speichern keine Kontoschlüssel. Microsoft empfiehlt die Verwendung einer Benutzerdelegierungs-SAS anstelle einer SAS mit Kontoschlüssel, wenn Ihr Design sie unterstützt.
Verwenden Sie kurze Tokenlebensdauern, und planen Sie, wie Sie den Zugriff widerrufen, wenn ein Token kompromittiert wird. Um Ihre Anwendungsprotokolle mit Azure Files Protokollen zu korrelieren, legen Sie eine Clientanforderungs-ID (x-ms-client-request-id) für FileREST-Anforderungen fest und protokollieren sie zusammen mit der Mandanten-ID.
Identitätsbasierte Zugriffssteuerung
Wenn Ihre Anwendung über das SMB-Protokoll kommuniziert, unterstützt Azure Files identitätsbasierte Autorisierung sowohl auf Freigabeebene als auch auf Verzeichnis- oder Dateiebene.
Sie können lokale Active Directory Domain Services, Microsoft Entra Domain Services oder Microsoft Entra Kerberos für hybride und reine Cloudidentitäten verwenden. Durch die Verwendung von Microsoft Entra Kerberos können reine Cloudidentitäten ohne Domänencontroller auf eine Freigabe zugreifen, wodurch die lokale Abhängigkeit bei der Autorisierung der Benutzer jedes Mandanten entfällt. Jedes Speicherkonto unterstützt nur eine dieser Identitätsquellen, und dies gilt für alle Dateifreigaben im Konto. Wenn Ihre Mandanten unterschiedliche Identitätsquellen benötigen, isolieren Sie diese Mandanten in separaten Speicherkonten.
Encryption
Azure Files verschlüsselt ruhende Daten standardmäßig mit Microsoft verwalteten Schlüsseln. Für Dateifreigaben innerhalb eines Speicherkontos können Sie kundenseitig verwaltete Schlüssel verwenden. Wenn für jeden Mandanten ein separater Verschlüsselungsschlüssel erforderlich ist, verwenden Sie separate Speicherkonten, da der Schlüssel auf Kontoebene gilt.
Über den Microsoft.FileShares Ressourcenanbieter erstellte Dateifreigaben verwenden von Microsoft verwaltete Schlüssel und unterstützen keine vom Kunden verwalteten Schlüssel. Berücksichtigen Sie diese Unterschiede, wenn Sie ein Isolationsmodell auswählen und ihren Mandantenlebenszyklus planen.
Monitoring
Überlegen Sie in einer mehrinstanzenfähigen Lösung, ob Sie den Verbrauch für jeden Mandanten messen müssen. Definieren Sie die spezifischen Metriken, die nachverfolgt werden sollen, z. B. die Speicherkapazität, die jeder Mandant verwendet, oder die Anzahl der Vorgänge, die für die Dateien der einzelnen Mandanten ausgeführt werden. Sie können die Kostenzuordnung auch verwenden, um die Kosten der Nutzung jedes Mandanten nachzuverfolgen und Rückbuchungen für mehrere Abonnements zu aktivieren.
Azure Files bietet integrierte Überwachungsfunktionen. Sie können die Kapazität für jede Freigabe anzeigen, aber nicht für jeden Ordner. Wenn Mandanten sich eine Dateifreigabe teilen, planen Sie, wie die Nutzung für jeden Mandanten gemessen wird.
Sie können Anforderungsprotokolle sammeln und dann für jeden Mandanten aggregieren und analysieren. Überprüfen Sie, welche Vorgänge von Ihrem Protokoll und Ressourcenanbieter protokolliert werden. Berücksichtigen Sie bei Lösungen, die ein hohes Volumen an Anfragen erzeugen, ob der Vorteil die Kosten für die Erfassung und Verarbeitung dieser Protokolle rechtfertigt.
Contributors
Dieser Artikel wird von Microsoft gepflegt. Die folgenden Mitwirkenden haben diesen Artikel geschrieben.
Hauptautor:
- John Downs | Principal Software Engineer, Azure Patterns & Practices
Andere Mitwirkende:
- Dr. Christian Geuer-Pollmann | Principal Customer Engineer, FastTrack für Azure
- Patrick Horn | Senior Customer Engineering Manager, FastTrack für Azure
- Ben Hummerstone | Principal Customer Engineer, FastTrack für Azure
- Vic Perdana | Cloud Solution Architect, Azure ISV
- Daniel Scott-Raynsford | Partner Solution Architect, Data & AI
- Arsen Vladimirskiy | Principal Customer Engineer, FastTrack für Azure
Um nicht öffentliche LinkedIn-Profile zu sehen, melden Sie sich bei LinkedIn an.