Hvad er en OneLake-signatur for delt adgang (SAS)? (Prøveversion)
En SAS (Shared Access Signature– OneLake) giver sikker, kortsigtet og delegeret adgang til ressourcer i din OneLake. Med en OneLake SAS har du detaljeret kontrol over, hvordan en klient kan få adgang til dine data. Eksempler:
- Hvilke ressourcer klienten har adgang til.
- Hvilke tilladelser har de til ressourcerne.
- Hvor længe SAS er gyldig.
Hver OneLake SAS (og brugerdelegeringsnøgle) understøttes altid af en Microsoft Entra Identity, har en maksimal levetid på 1 time og kan kun give adgang til mapper og filer i et dataelement, f.eks. et lakehouse.
Vigtigt
Denne funktion er en prøveversion.
Sådan fungerer en signatur for delt adgang
En signatur for delt adgang er et token, der føjes til URI'en for en OneLake-ressource. Tokenet indeholder et særligt sæt forespørgselsparametre, der angiver, hvordan klienten kan få adgang til ressourcen. En af forespørgselsparametrene er signaturen. Den er konstrueret ud fra SAS-parametrene og signeret med den nøgle, der blev brugt til at oprette SAS. OneLake bruger denne signatur til at godkende adgang til mappen eller filen i OneLake. OneLake SASs bruger samme format og egenskaber som Azure Storage-brugerdelegeret SAS, men med flere sikkerhedsbegrænsninger for deres levetid og omfang.
En OneLake SAS er signeret med en brugerdelegeringsnøgle (UDK), som understøttes af legitimationsoplysningerne til Microsoft Entra. Du kan anmode om en brugerdelegeringsnøgle med handlingen Hent brugerdelegeringsnøgle . Derefter skal du bruge denne nøgle (mens den stadig er gyldig) til at bygge OneLake SAS. Tilladelserne for den pågældende Microsoft Entra-konto bestemmer klientens adgang til ressourcen sammen med de tilladelser, der udtrykkeligt er tildelt SAS.
Godkendelse af en OneLake SAS
Når en klient eller et program får adgang til OneLake med en OneLake SAS, godkendes anmodningen ved hjælp af de Microsoft Entra-legitimationsoplysninger, der anmodede om den UDK, der blev brugt til at oprette SAS. Derfor gælder alle OneLake-tilladelser, der er tildelt denne Microsoft Entra-identitet, for SAS, hvilket betyder, at en SAS aldrig kan overskride tilladelserne for den bruger, der opretter den. Når du opretter en SAS, giver du desuden eksplicit tilladelser, så du kan give SAS endnu flere tilladelser, der er begrænset til ned. Mellem Microsoft Entra-identiteten, de udtrykkeligt tildelte tilladelser og den korte levetid følger OneLake bedste fremgangsmåder for sikkerhed for at give uddelegeret adgang til dine data.
Hvornår skal du bruge en OneLake SAS?
OneLake SASs uddelegerer sikker og midlertidig adgang til OneLake, der understøttes af en Microsoft Entra-identitet. Programmer uden oprindelig Microsoft Entra-support kan bruge en OneLake SAS til at få midlertidig adgang til at indlæse data uden kompliceret konfigurerings- og integrationsarbejde.
OneLake SASs understøtter også programmer, der fungerer som proxyer mellem brugere og deres data. Nogle uafhængige softwareleverandører (ISV'er) kører f.eks. mellem brugere og deres Fabric-arbejdsområde, hvilket giver ekstra funktionalitet og muligvis en anden godkendelsesmodel. Ved at delegere adgang med en OneLake SAS kan disse ISV'er administrere adgangen til de underliggende data og give direkte adgang til data, selvom deres brugere ikke har Microsoft Entra-identiteter.
Administration af OneLake SAS
To indstillinger i din Fabric-lejer administrerer brugen af OneLake SASs. Den første er en indstilling på lejerniveau, Brug kortlivedelegerede SAS-tokens, som administrerer generering af brugerdelegeringsnøgler. Da brugerdelegeringsnøgler genereres på lejerniveau, styres de af en lejerindstilling. Denne indstilling er som standard slået til, da disse brugerdelegeringsnøgler har tilsvarende tilladelser til den Microsoft Entra-identitet, der anmoder om dem, og de er altid kortvarige.
Bemærk
Hvis du slår denne funktion fra, forhindres alle arbejdsområder i at bruge OneLake SASs, da alle brugere ikke kan generere brugerdelegeringsnøgler.
Den anden indstilling er en indstilling for delegeret arbejdsområde, Godkend med OneLake-brugerdelegerede SAS-tokens, som styrer, om et arbejdsområde accepterer en OneLake SAS. Denne indstilling er som standard slået fra og kan aktiveres af en administrator af arbejdsområdet, der vil tillade godkendelse med en OneLake SAS i deres arbejdsområde. En lejeradministrator kan slå denne indstilling til for alle arbejdsområder via lejerindstillingen eller lade den være til arbejdsområdeadministratorer for at aktivere den.
Du kan også overvåge oprettelsen af brugerdelegeringsnøgler via Microsoft Purview-compliance-portal. Du kan søge efter handlingsnavnet generateonelakeudk for at få vist alle nøgler, der er genereret i din lejer. Da oprettelse af en SAS er en handling på klientsiden, kan du ikke overvåge eller begrænse oprettelsen af en OneLake SAS, kun oprettelsen af en UDK.
Bedste fremgangsmåder med OneLake SAS
- Brug altid HTTPS til at oprette eller distribuere en SAS for at beskytte mod man-in-the-middle-angreb, der forsøger at opfange SAS.
- Spor dine udløbstider for token, nøgle og SAS-token. OneLake-brugerdelegeringsnøgler og SAS'er har en maksimal levetid på 1 time. Hvis du forsøger at anmode om en UDK eller oprette en SAS med en levetid på mere end 1 time, mislykkes anmodningen. For at forhindre, at SAS bruges til at forlænge levetiden for udløbne OAuth-tokens, skal tokenets levetid også være længere end udløbstidspunktet for brugerdelegeringsnøglen og SAS.
- Vær forsigtig med SAS' starttidspunkt. Hvis starttidspunktet for en SAS angives som det aktuelle tidspunkt, kan det medføre fejl i de første par minutter på grund af forskellige starttider mellem maskiner (urforvrænget). Hvis starttidspunktet angives til at være et par minutter tidligere, hjælper det med at beskytte mod disse fejl.
- Tildel SAS de mindst mulige rettigheder. Det er bedste praksis for sikkerhed at levere de minimumkravte rettigheder til færrest mulige ressourcer, og det mindsker indvirkningen, hvis en SAS kompromitteres.
- Overvåg generering af brugerdelegeringsnøgler. Du kan overvåge oprettelsen af brugerdelegeringsnøgler i Microsoft Purview-compliance-portal. Søg efter handlingsnavnet 'generateonelakeudk' for at få vist nøgler, der er genereret i din lejer.
- Forstå begrænsningerne i OneLake SASs. Da OneLake SAS'er ikke kan have tilladelser på arbejdsområdeniveau, er de ikke kompatible med nogle Azure Storage-værktøjer, som forventer tilladelser på objektbeholderniveau til at gennemgå data, f.eks. Azure Storage Explorer.