Wat is een Shared Access Signature (SAS) van OneLake? (Preview)
Een Sas (Shared Access Signature) van OneLake biedt veilige, korte en gedelegeerde toegang tot resources in uw OneLake. Met een OneLake SAS hebt u gedetailleerde controle over hoe een client toegang heeft tot uw gegevens. Voorbeeld:
- Tot welke resources de client toegang heeft.
- Welke machtigingen ze hebben voor de resources.
- Hoe lang de SAS geldig is.
Elke OneLake SAS (en sleutel voor gebruikersdelegering) wordt altijd ondersteund door een Microsoft Entra Identity, heeft een maximale levensduur van 1 uur en kan alleen toegang verlenen tot mappen en bestanden binnen een gegevensitem, zoals een lakehouse.
Belangrijk
Deze functie is beschikbaar als preview-versie.
Hoe een Shared Access Signature werkt
Een handtekening voor gedeelde toegang is een token dat is toegevoegd aan de URI voor een OneLake-resource. Het token bevat een speciale set queryparameters die aangeven hoe de client toegang heeft tot de resource. Een van de queryparameters is de handtekening. Het is samengesteld op basis van de SAS-parameters en ondertekend met de sleutel die is gebruikt om de SAS te maken. OneLake gebruikt deze handtekening om toegang tot de map of het bestand in OneLake te autoriseren. OneLake SASs gebruiken dezelfde indeling en eigenschappen als door de gebruiker gedelegeerde SAS van Azure Storage, maar met meer beveiligingsbeperkingen voor hun levensduur en bereik.
Een OneLake SAS is ondertekend met een gebruikersdelegatiesleutel (UDK), die wordt ondersteund door een Microsoft Entra-referentie. U kunt een gebruikersdelegeringssleutel aanvragen met de bewerking Gebruikersdelegeringssleutel ophalen. Vervolgens gebruikt u deze sleutel (terwijl deze nog geldig is) om de OneLake SAS te bouwen. De machtigingen van dat Microsoft Entra-account, samen met de machtigingen die expliciet aan de SAS zijn verleend, bepalen de toegang van de client tot de resource.
Een OneLake SAS autoriseren
Wanneer een client of toepassing OneLake opent met een OneLake SAS, wordt de aanvraag geautoriseerd met behulp van de Microsoft Entra-referenties waarvoor de UDK is aangevraagd die is gebruikt om de SAS te maken. Daarom zijn alle OneLake-machtigingen die zijn verleend aan die Microsoft Entra-identiteit van toepassing op de SAS, wat betekent dat een SAS nooit de machtigingen kan overschrijden van de gebruiker die deze maakt. Bovendien kunt u bij het maken van een SAS expliciet machtigingen verlenen, zodat u nog meer scoped down-machtigingen kunt opgeven voor de SAS. Tussen de Microsoft Entra-identiteit, de expliciet verleende machtigingen en de korte levensduur, volgt OneLake aanbevolen beveiligingsprocedures voor het bieden van gedelegeerde toegang tot uw gegevens.
Wanneer gebruikt u een OneLake SAS?
OneLake SASs delegeert beveiligde en tijdelijke toegang tot OneLake, ondersteund door een Microsoft Entra-identiteit. Toepassingen zonder systeemeigen Microsoft Entra-ondersteuning kunnen een OneLake SAS gebruiken om tijdelijke toegang te krijgen tot het laden van gegevens zonder ingewikkelde instellingen en integratiewerkzaamheden.
OneLake SASs ondersteunt ook toepassingen die fungeren als proxy's tussen gebruikers en hun gegevens. Sommige onafhankelijke softwareleveranciers (ISV's) worden bijvoorbeeld uitgevoerd tussen gebruikers en hun Fabric-werkruimte, wat extra functionaliteit biedt en mogelijk een ander verificatiemodel. Door toegang te delegeren met een OneLake SAS, kunnen deze ISV's de toegang tot de onderliggende gegevens beheren en directe toegang bieden tot gegevens, zelfs als hun gebruikers geen Microsoft Entra-identiteiten hebben.
OneLake SAS beheren
Met twee instellingen in uw Fabric-tenant wordt het gebruik van OneLake-SAS's beheerd. De eerste is een instelling op tenantniveau. Gebruik kortdurende, door de gebruiker gedelegeerde SAS-tokens, waarmee het genereren van gebruikersdelegatiesleutels wordt beheerd. Omdat gebruikersdelegeringssleutels worden gegenereerd op tenantniveau, worden ze beheerd door een tenantinstelling. Deze instelling is standaard ingeschakeld, omdat deze gebruikersdelegatiesleutels gelijkwaardige machtigingen hebben voor de Microsoft Entra-identiteit die hen aanvraagt en altijd kortstondige tijd hebben.
Notitie
Als u deze functie uitschakelt, voorkomt u dat alle werkruimten gebruikmaken van OneLake SASs, omdat alle gebruikers geen gebruikersdelegatiesleutels kunnen genereren.
De tweede instelling is een gedelegeerde werkruimte-instelling, Verifiëren met Door de gebruiker gedelegeerde SAS-tokens van OneLake, waarmee wordt bepaald of een werkruimte een OneLake SAS accepteert. Deze instelling is standaard uitgeschakeld en kan worden ingeschakeld door een werkruimtebeheerder die verificatie met een OneLake SAS in hun werkruimte wil toestaan. Een tenantbeheerder kan deze instelling inschakelen voor alle werkruimten via de tenantinstelling of deze laten staan aan werkruimtebeheerders om deze in te schakelen.
U kunt ook het maken van gebruikersdelegeringssleutels controleren via de Microsoft Purview-nalevingsportal. U kunt zoeken naar de naam van de bewerking generateonelakeudk om alle sleutels weer te geven die in uw tenant zijn gegenereerd. Omdat het maken van een SAS een bewerking aan de clientzijde is, kunt u het maken van een OneLake SAS niet bewaken of beperken, alleen de generatie van een UDK.
Aanbevolen procedures met OneLake SAS
- Gebruik ALTIJD HTTPS om een SAS te maken of te distribueren om bescherming te bieden tegen man-in-the-middle-aanvallen die de SAS willen onderscheppen.
- Houd de verlooptijden van uw token, sleutel en SAS-token bij. OneLake-gebruikersdelegatiesleutels en SAS's hebben een maximale levensduur van 1 uur. Als u probeert een UDK aan te vragen of een SAS te bouwen met een levensduur langer dan 1 uur, mislukt de aanvraag. Om te voorkomen dat SAS wordt gebruikt om de levensduur van verlopen OAuth-tokens te verlengen, moet de levensduur van het token ook langer zijn dan de verlooptijd van de gebruikersdelegeringssleutel en de SAS.
- Wees voorzichtig met de begintijd van een SAS. Het instellen van de begintijd voor een SAS als de huidige tijd kan leiden tot storingen voor de eerste paar minuten, vanwege verschillende begintijden tussen machines (klokverschil). Als u de begintijd instelt op een paar minuten in het verleden, kunt u deze fouten beter beschermen.
- Verdeel zo min mogelijk bevoegdheden aan de SAS. Het bieden van de minimale vereiste bevoegdheden voor de minste resources is een best practice voor beveiliging en vermindert de impact als een SAS wordt aangetast.
- Bewaak de generatie van gebruikersdelegeringssleutels. U kunt het maken van gebruikersdelegeringssleutels controleren in de Microsoft Purview-nalevingsportal. Zoek de naam van de bewerking 'generateonelakeudk' om sleutels weer te geven die zijn gegenereerd in uw tenant.
- Inzicht in de beperkingen van OneLake SASs. Omdat OneLake-SAS's geen machtigingen op werkruimteniveau kunnen hebben, zijn ze niet compatibel met sommige Azure Storage-hulpprogramma's die machtigingen op containerniveau verwachten om gegevens te doorlopen, zoals Azure Storage Explorer.