Hva er en OneLake delt tilgangssignatur (SAS)? (Testversjon)
En OneLake delt tilgangssignatur (SAS) gir sikker, kortsiktig og delegert tilgang til ressurser i OneLake. Med en OneLake SAS har du detaljert kontroll over hvordan en klient kan få tilgang til dataene dine. Eksempel:
- Hvilke ressurser klienten har tilgang til.
- Hvilke tillatelser de har til ressursene.
- Hvor lenge SAS er gyldig.
Hver OneLake SAS (og brukerdelegeringsnøkkel) støttes alltid av en Microsoft Entra-identitet, har en maksimal levetid på 1 time, og kan bare gi tilgang til mapper og filer i et dataelement, for eksempel et lakehouse.
Viktig
Denne funksjonen er i forhåndsvisning.
Slik fungerer en delt tilgangssignatur
En delt tilgangssignatur er et token som legges til URI-en for en OneLake-ressurs. Tokenet inneholder et spesielt sett med spørringsparametere som angir hvordan klienten har tilgang til ressursen. En av spørringsparameterne er signaturen. Den er konstruert fra SAS-parameterne og signert med nøkkelen som ble brukt til å opprette SAS. OneLake bruker denne signaturen til å godkjenne tilgang til mappen eller filen i OneLake. OneLake SASs bruker samme format og egenskaper som Azure Storage brukerdelegerte SAS, men med flere sikkerhetsbegrensninger på levetiden og omfanget.
En OneLake SAS er signert med en brukerdelegeringsnøkkel (UDK), som er støttet av en Microsoft Entra-legitimasjon. Du kan be om en brukerdelegeringsnøkkel med operasjonen Hent brukerdelegeringsnøkkel . Deretter bruker du denne nøkkelen (mens den fortsatt er gyldig) til å bygge OneLake SAS. Tillatelsene til Microsoft Entra-kontoen, sammen med tillatelsene som eksplisitt er gitt til SAS, bestemmer klientens tilgang til ressursen.
Godkjenne en OneLake SAS
Når en klient eller et program får tilgang til OneLake med en OneLake SAS, godkjennes forespørselen ved hjelp av Microsoft Entra-legitimasjonen som ba om UDK som ble brukt til å opprette SAS. Derfor gjelder alle OneLake-tillatelser som er gitt til Microsoft Entra-identiteten, for SAS, noe som betyr at en SAS aldri kan overskride tillatelsene til brukeren som oppretter den. Når du oppretter en SAS, gir du i tillegg eksplisitt tillatelser, slik at du kan gi enda flere tillatelser til SAS. Mellom Microsoft Entra-identiteten, de eksplisitt gitte tillatelsene og den korte levetiden følger OneLake anbefalte fremgangsmåter for sikkerhet for å gi delegert tilgang til dataene dine.
Når du skal bruke en OneLake SAS
OneLake SASs-representanten sikrer og midlertidig tilgang til OneLake, støttet av en Microsoft Entra-identitet. Programmer uten opprinnelig Microsoft Entra-støtte kan bruke en OneLake SAS for å få midlertidig tilgang til å laste inn data uten komplisert oppsetts- og integreringsarbeid.
OneLake SASs støtter også programmer som fungerer som proxyer mellom brukere og deres data. Noen uavhengige programvareleverandører (ISV-er) kjører for eksempel mellom brukere og deres Fabric-arbeidsområde, noe som gir ekstra funksjonalitet og muligens en annen godkjenningsmodell. Ved å delegere tilgang med en OneLake SAS kan disse ISV-ene administrere tilgang til de underliggende dataene og gi direkte tilgang til data, selv om brukerne ikke har Microsoft Entra-identiteter.
Administrere OneLake SAS
To innstillinger i Fabric-leieren administrerer bruken av OneLake SASs. Den første er en innstilling på leiernivå, Bruk kortvarige brukerdelegerte SAS-tokener, som administrerer genereringen av brukerdelegeringsnøkler. Fordi brukerdelegeringsnøkler genereres på leiernivå, kontrolleres de av en leierinnstilling. Denne innstillingen er aktivert som standard, siden disse brukerdelegeringsnøklene har tilsvarende tillatelser til Microsoft Entra-identiteten som ber om dem og alltid er kortvarige.
Merk
Hvis du deaktiverer denne funksjonen, hindres alle arbeidsområder i å bruke OneLake SASs, da alle brukere ikke kan generere brukerdelegeringsnøkler.
Den andre innstillingen er en delegert arbeidsområdeinnstilling, Authenticate with OneLake user-delegated SAS tokens, som styrer om et arbeidsområde godtar en OneLake SAS. Denne innstillingen er slått av som standard og kan aktiveres av en administrator for arbeidsområdet som ønsker å tillate godkjenning med en OneLake SAS i arbeidsområdet. En leieradministrator kan aktivere denne innstillingen for alle arbeidsområder via leierinnstillingen, eller la den være til administratorer for arbeidsområdet for å aktivere den.
Du kan også overvåke opprettingen av brukerdelegeringsnøkler via Microsoft Purview-samsvarsportal. Du kan søke etter operasjonsnavnet generateonelakeudk for å vise alle nøklene som genereres i leieren. Fordi oppretting av en SAS er en operasjon på klientsiden, kan du ikke overvåke eller begrense opprettingen av en OneLake SAS, bare genereringen av en UDK.
Anbefalte fremgangsmåter med OneLake SAS
- Bruk alltid HTTPS til å opprette eller distribuere en SAS for å beskytte mot mann-i-midten-angrep som søker å avskjære SAS.
- Spor utløpstidene for tokenet, nøkkelen og SAS-tokenet. OneLake-brukerdelegeringsnøkler og SAS-er har en maksimal levetid på 1 time. Forsøk på å be om en UDK eller bygge en SAS med en levetid som er lengre enn 1 time, fører til at forespørselen mislykkes. Hvis du vil hindre at SAS brukes til å forlenge levetiden til utløpende OAuth-tokener, må tokenets levetid også være lengre enn utløpstiden for brukerdelegeringsnøkkelen og SAS.
- Vær forsiktig med starttidspunktet for SAS. Hvis du angir starttidspunktet for en SAS som gjeldende tid, kan det føre til feil de første minuttene, på grunn av ulike starttider mellom maskiner (klokkespyd). Hvis du angir at starttidspunktet skal være noen minutter tidligere, bidrar det til å beskytte mot disse feilene.
- Gi sasen minst mulig rettigheter. Å gi minimum nødvendige rettigheter til færrest mulige ressurser er en anbefalt sikkerhetspraksis og reduserer innvirkningen hvis en SAS er kompromittert.
- Overvåk genereringen av brukerdelegeringsnøkler. Du kan overvåke opprettingen av brukerdelegeringsnøkler i Microsoft Purview-samsvarsportal. Søk etter operasjonsnavnet Generateonelakeudk for å vise nøkler generert i leieren.
- Forstå begrensningene til OneLake SASs. Siden OneLake SASs ikke kan ha tillatelser på arbeidsområdenivå, er de ikke kompatible med enkelte Azure Storage-verktøy som forventer tillatelser på beholdernivå for å krysse data, for eksempel Azure Storage Explorer.