Serviceprincipal in Fabric Data Warehouse
van toepassing op:✅ Warehouse in Microsoft Fabric
Een Azure-service-principal (SPN) is een beveiligingsidentiteit die wordt gebruikt door toepassingen of automatiseringsprogramma's voor toegang tot specifieke Azure-resources. In tegenstelling tot gebruikersidentiteiten zijn service-principals niet-interactief, op toepassingen gebaseerde identiteiten die nauwkeurige machtigingen kunnen krijgen, waardoor ze perfect zijn voor geautomatiseerde processen of achtergrondservices. Met behulp van service-principals kunt u veilig verbinding maken met uw gegevensbronnen en tegelijkertijd de risico's van menselijke fouten en beveiligingsproblemen op basis van identiteit minimaliseren. Voor meer informatie over service-principals, zie Toepassings- en service-principalobjecten in Microsoft Entra ID.
Voorwaarden
Een service-principal maken, rollen toewijzen en een geheim maken met behulp van Azure.
Zorg ervoor dat de tenantbeheerder Service-principals kan inschakelen, fabric-API's kunnen gebruiken in de Fabric-beheerportal.
Zorg ervoor dat een gebruiker met de werkruimterol Administrator toegang voor een SPN kan verlenen via Toegang beheren in de werkruimte.
Warehouses maken en openen via REST API's met behulp van SPN
Gebruikers met de rol beheerder, lid of inzender werkruimte kunnen service-principals gebruiken voor verificatie voor het maken, bijwerken, lezen en verwijderen van warehouse-items via Fabric REST API's. Hierdoor kunt u terugkerende taken automatiseren, zoals het inrichten of beheren van magazijnen zonder dat u afhankelijk bent van gebruikersreferenties.
Als u een gedelegeerd account of een vaste identiteit (identiteit van de eigenaar) gebruikt om het magazijn aan te maken, gebruikt het magazijn die referentie voor toegang tot OneLake. Hierdoor ontstaat er een probleem wanneer de eigenaar de organisatie verlaat, omdat het magazijn niet meer werkt. Om dit te voorkomen, maakt u magazijnen met behulp van een SPN.
Fabric vereist ook dat de gebruiker zich elke 30 dagen aanmeldt om ervoor te zorgen dat er om veiligheidsredenen een geldig token wordt opgegeven. Voor een datawarehouse moet de eigenaar zich elke 30 dagen aanmelden bij Fabric. Dit kan worden geautomatiseerd met behulp van een SPN met de List-API.
Warehouses die zijn gemaakt door een SPN met behulp van REST-API's, worden weergegeven in de werkruimtelijstweergave in de Fabric-portal, met de eigenaar naam als de SPN. In de volgende afbeelding ziet u een screenshot van de werkruimte in de Fabric-portal. "Fabric Public API test app" is de SPN die het Contoso Marketing Warehouse heeft gemaakt.
Verbinding maken met clienttoepassingen met behulp van SPN
U kunt verbinding maken met Fabric-magazijnen met behulp van service-principals met hulpprogramma's zoals SSMS (SQL Server Management Studio) 19 of hogere versies.
- verificatie: Microsoft Entra-service-principal
- gebruikersnaam: client-id van SPN (gemaakt via Azure in de sectie Vereisten)
- wachtwoord: geheim (gemaakt via Azure in de sectie Vereisten)
Machtigingen voor het controlevlak
SPN's kunnen toegang krijgen tot magazijnen met behulp van werkruimterollen via Toegang beheren in de werkruimte. Bovendien kunnen magazijnen worden gedeeld met een SPN via de Fabric-portal met behulp van Artikelmachtigingen.
Machtigingen voor het gegevensvlak
Zodra warehouses machtigingen voor het besturingsvlak voor een SPN krijgen via werkruimterollen of itemmachtigingen, kunnen beheerders T-SQL-opdrachten zoals GRANT
gebruiken om specifieke machtigingen voor gegevensvlak toe te wijzen aan service-principals, om precies te bepalen tot welke metagegevens/gegevens en bewerkingen een SPN toegang heeft. Dit wordt aanbevolen om het principe van minimale bevoegdheden te volgen.
Bijvoorbeeld:
GRANT SELECT ON <table name> TO <service principal name>;
Zodra machtigingen zijn verleend, kunnen SPN's verbinding maken met clienttoepassingshulpprogramma's zoals SSMS, waardoor ontwikkelaars veilige toegang krijgen om COPY INTO uit te voeren (met en zonder firewallopslag), en ook programmatisch een T-SQL-query uitvoeren volgens een schema met Data Factory-pijplijnen.
Monitor
Wanneer een SPN query's uitvoert in het magazijn, zijn er verschillende bewakingshulpprogramma's die inzicht bieden in de gebruiker of SPN die de query heeft uitgevoerd. U vindt de gebruiker voor queryactiviteit op de volgende manieren:
-
Dynamische beheerweergaven (DMV's):
login_name
kolom insys.dm_exec_sessions
. -
Query Insights:
login_name
kolom inqueryinsights.exec_requests_history
weergave. -
Queryactiviteit:
submitter
kolom in Fabric-queryactiviteit. - app voor metrische capaciteitsgegevens: Rekengebruik voor magazijnbewerkingen die door SPN worden uitgevoerd, wordt weergegeven als de client-id onder de kolom Gebruiker in de analysetabel achtergrondbewerkingen.
Zie Fabric-datawarehouse bewakenvoor meer informatie.
Overname-API
Eigendom van magazijnen kan worden gewijzigd van een SPN naar een gebruiker en van een gebruiker naar een SPN.
Overname van SPN of gebruiker naar gebruiker: Zie Wijzig eigendom van Fabric Warehouse.
Overname van SPN of gebruiker naar SPN: gebruik een POST-aanroep in REST API.
POST <PowerBI Global Service FQDN>/v1.0/myorg/groups/{workspaceid}/datawarehouses/{warehouseid}/takeover
Beperkingen
Beperkingen van service-principals met Microsoft Fabric Data Warehouse:
- Standaard semantische modellen worden niet ondersteund voor door SPN gemaakte magazijnen en als gevolg hiervan werken functies zoals het weergeven van tabellen in de gegevenssetweergave, het maken van een rapport op basis van de standaardgegevensset niet.
- Service-principal voor SQL-analyse-eindpunten wordt momenteel niet ondersteund.
- Referenties voor een service-principal of Entra ID worden momenteel niet ondersteund voor Copy Into-foutlogbestanden.
- Service principals worden niet ondersteund voor GIT-API's. SPN-ondersteuning bestaat alleen voor api's voor implementatiepijplijn.