Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Azure Stream Analytics ondersteunt Managed Identity Authentication voor Azure SQL Database en Azure Synapse Analytics uitvoer-sinks. Beheerde identiteiten elimineren de beperkingen van verificatiemethoden op basis van gebruikers, zoals de noodzaak om opnieuw te verifiëren vanwege wachtwoordwijzigingen of verloop van gebruikerstoken die elke 90 dagen plaatsvinden. Wanneer u de noodzaak voor handmatige verificatie verwijdert, kunnen uw Stream Analytics-implementaties volledig worden geautomatiseerd.
Een beheerde identiteit is een beheerde toepassing die is geregistreerd in Microsoft Entra ID die een bepaalde Stream Analytics-taak vertegenwoordigt. De beheerde toepassing wordt gebruikt om authenticatie uit te voeren naar een doelresource. In dit artikel leest u hoe u Beheerde identiteit kunt inschakelen voor een Azure SQL Database of een Azure Synapse Analytics uitvoer(en) van een Stream Analytics-taak via de Azure-portal.
Overzicht
In dit artikel worden de stappen beschreven die nodig zijn om uw Stream Analytics-taak te verbinden met uw Azure SQL Database of Azure Synapse Analytics SQL-pool met behulp van de verificatiemodus beheerde identiteit.
U maakt eerst een door het systeem toegewezen beheerde identiteit voor uw Stream Analytics-taak. Dit is de identiteit van uw taak in Microsoft Entra ID.
Voeg een Active Directory-beheerder toe aan uw SQL-server of Synapse-werkruimte, waarmee Microsoft Entra ID (Beheerde identiteit) verificatie voor die resource mogelijk is.
Maak vervolgens een ingesloten gebruiker die de identiteit van de Stream Analytics-taak in de database vertegenwoordigt. Wanneer de Stream Analytics-taak communiceert met uw SQL DB- of Synapse SQL DB-resource, is dit de identiteit waarnaar wordt verwezen om te controleren welke machtigingen uw Stream Analytics-taak heeft.
Ververleent machtigingen aan uw Stream Analytics-taak voor toegang tot uw SQL Database- of Synapse SQL-pools.
Voeg ten slotte uw Azure SQL Database/Azure Synapse Analytics toe als uitvoer in de Stream Analytics-taak.
Prerequisites
U hebt het volgende nodig om deze functie te gebruiken:
Een Azure Stream Analytics baan.
Een Azure SQL Database bron.
Een beheerde identiteit maken
Maak eerst een beheerde identiteit voor uw Azure Stream Analytics taak.
Open in de Azure-portal uw Azure Stream Analytics taak.
Selecteer in het linkernavigatiemenu beheerde identiteit onder Configureren. Schakel vervolgens het selectievakje in naast Door het systeem toegewezen beheerde identiteit gebruiken en selecteer Opslaan.
Microsoft Entra ID creëert een service-principal voor de identiteit van de Stream Analytics-job. Azure beheert de levenscyclus van de zojuist gemaakte identiteit. Wanneer u de Stream Analytics-job verwijdert, verwijdert Azure automatisch de bijbehorende identiteit (dat wil zeggen de service-principal).
U kunt ook overschakelen naar door de gebruiker toegewezen beheerde identiteiten.
Wanneer u de configuratie opslaat, wordt de object-id (OID) van de service-principal weergegeven als de principal-id, zoals wordt weergegeven in de volgende sectie:
De service-principal heeft dezelfde naam als de Stream Analytics-taak. Als de naam van uw taak bijvoorbeeld MyASAJob is, is de naam van de service-principal ook MyASAJob.
Een Active Directory-beheerder selecteren
Nadat u een beheerde identiteit hebt gemaakt, selecteert u een Active Directory-beheerder.
Ga naar uw Azure SQL Database of Azure Synapse Analytics SQL Pool-resource. Selecteer de SQL Server of Synapse-werkruimte waaronder de resource zich bevindt. U vindt de koppeling naar deze resources op de overzichtspagina van de resource naast servernaam of werkruimtenaam.
Selecteer respectievelijk Active Directory Admin of SQL Active Directory Admin onder Settings voor respectievelijk SQL Server en Synapse Workspace. Selecteer vervolgens Beheerder instellen.
Zoek op de Active Directory beheerpagina naar een gebruiker of groep als beheerder voor de SQL Server en selecteer Select. Deze gebruiker kan de ingesloten databasegebruiker maken in de volgende sectie.
Op de Active Directory beheerpagina worden alle leden en groepen van uw Active Directory weergegeven. Grijs weergegeven gebruikers of groepen kunnen niet worden geselecteerd omdat ze niet worden ondersteund als Microsoft Entra beheerders. Zie de lijst met ondersteunde beheerders in de sectie Microsoft Entra functies en beperkingen van Verificatie Microsoft Entra voor verificatie met SQL Database of Azure Synapse gebruiken.
Selecteer Opslaan op de pagina Active Directory admin. Het proces voor het wijzigen van de beheerder duurt enkele minuten.
Een ingesloten databasegebruiker maken
Maak vervolgens een ingesloten databasegebruiker in uw Azure SQL of Azure Synapse database die is toegewezen aan de Microsoft Entra identiteit. De opgenomen databasegebruiker heeft geen login voor de primaire database, maar wordt gekoppeld aan een identiteit in de directory die aan de database is verbonden. De Microsoft Entra-identiteit kan een afzonderlijk gebruikersaccount of een groep zijn. In dit geval wilt u een ingesloten databasegebruiker maken voor uw Stream Analytics-taak.
Zie Universal Authentication with SQL Database and Azure Synapse Analytics (SSMS support for MFA)voor meer informatie.
Maak verbinding met uw Azure SQL- of Azure Synapse-database met behulp van SQL Server Management Studio. De Gebruikernaam is een Microsoft Entra gebruiker met de machtiging ALTER ANY USER. De beheerder die u hebt ingesteld op het SQL Server is een voorbeeld. Gebruik Microsoft Entra ID – Universeel met MFA-verificatie.
De servernaam
<SQL Server name>.database.windows.netkan verschillen in verschillende regio's. De regio China moet bijvoorbeeld<SQL Server name>.database.chinacloudapi.cngebruiken.U kunt een specifieke Azure SQL of Azure Synapse database opgeven door naar Options > Verbindingseigenschappen > Verbinding maken met database te gaan.
Wanneer u voor het eerst verbinding maakt, kan het volgende venster optreden:
- Zo ja, ga dan naar uw SQL Server- of Synapse-werkruimteresource in de Azure-portal. Open in de sectie Beveiliging de pagina Firewalls en virtueel netwerk of firewalls .
- Voeg een nieuwe regel toe met een willekeurige regelnaam.
- Gebruik het From IP-adres uit het venster Nieuwe firewallregel voor het Start IP-adres.
- Gebruik het Doel-IP-adres in het venster Nieuwe firewallregel als eind-IP-adres.
- Selecteer Opslaan en probeer opnieuw verbinding te maken vanuit SQL Server Management Studio.
Nadat u verbinding hebt gemaakt, maakt u de ingesloten databasegebruiker. Met de volgende SQL-opdracht maakt u een ingesloten databasegebruiker met dezelfde naam als uw Stream Analytics-taak. Zorg ervoor dat u de vierkante haken rond de ASA_JOB_NAME plaatst. Gebruik de volgende T-SQL-syntaxis en voer de query uit.
CREATE USER [ASA_JOB_NAME] FROM EXTERNAL PROVIDER;Als u wilt controleren of de ingesloten databasegebruiker correct is toegevoegd, voert u de volgende opdracht uit in SSMS onder de betreffende database en controleert u of uw ASA_JOB_NAME zich onder de kolom 'naam' bevindt.
SELECT * FROM <SQL_DB_NAME>.sys.database_principals WHERE type_desc = 'EXTERNAL_USER'Voor Microsoft Microsoft Entra ID om te controleren of de Stream Analytics-taak toegang heeft tot de SQL Database, moet u Microsoft Entra toestemming geven om met de database te communiceren. Hiervoor gaat u opnieuw naar de pagina Firewalls en virtueel netwerk of Firewalls in de Azure-portal en schakelt u de optie Azure-services en -resources toegang tot deze server toestaan of werkruimte in.
Stream Analytics-taakmachtigingen verlenen
Nadat u een zelfstandige databasegebruiker hebt gemaakt en toegang hebt verleend tot Azure-services in de portal, zoals beschreven in de vorige sectie, heeft uw Stream Analytics-taak via Managed Identity toestemming om verbinding te maken met uw Azure SQL-databaseresource. Verken de SELECT - en INSERT-machtigingen voor de Stream Analytics-taak, omdat de taak deze machtigingen later in de Stream Analytics-werkstroom nodig heeft. Met de machtiging SELECT kan de taak de verbinding met de tabel in de Azure SQL-database testen. Met de machtiging INSERT kunt u end-to-end Stream Analytics-query's testen zodra u een invoer en de Azure SQL database-uitvoer hebt geconfigureerd.
U kunt deze machtigingen verlenen aan de Stream Analytics-taak met behulp van SQL Server Management Studio. Zie voor meer informatie de GRANT (Transact-SQL)-referentie.
Als u alleen machtigingen wilt verlenen aan een bepaalde tabel of een bepaald object in de database, gebruikt u de volgende T-SQL-syntaxis en voert u de query uit.
GRANT CONNECT TO ASA_JOB_NAME;
GRANT SELECT, INSERT ON OBJECT::TABLE_NAME TO ASA_JOB_NAME;
U kunt ook met de rechtermuisknop op uw Azure SQL of Azure Synapse database in SQL Server Management Studio klikken en Properties > Permissions selecteren. In het menu Machtigingen ziet u de Stream Analytics-taak die u eerder hebt toegevoegd en kunt u handmatig machtigingen verlenen of weigeren zoals u dat ziet.
Als u alle machtigingen wilt bekijken die u hebt toegevoegd aan uw ASA_JOB_NAME gebruiker, voert u de volgende opdracht uit in SSMS onder de betreffende database:
SELECT dbprin.name, dbprin.type_desc, dbperm.permission_name, dbperm.state_desc, dbperm.class_desc, object_name(dbperm.major_id)
FROM sys.database_principals dbprin
LEFT JOIN sys.database_permissions dbperm
ON dbperm.grantee_principal_id = dbprin.principal_id
WHERE dbprin.name = '<ASA_JOB_NAME>'
Een Azure SQL Database- of Azure Synapse-uitvoer maken
Opmerking
Wanneer u SQL Managed Instance (MI) als referentie-invoer gebruikt, moet u een openbaar eindpunt configureren in uw SQL Managed Instance. U moet de volledig gekwalificeerde domeinnaam opgeven met de poort bij het configureren van de database-eigenschap . Bijvoorbeeld: sampleserver.public.database.windows.net,3342.
Nadat u uw beheerde identiteit hebt geconfigureerd, kunt u een Azure SQL Database of Azure Synapse uitvoer toevoegen aan uw Stream Analytics-taak.
Zorg ervoor dat u een tabel in uw SQL Database maakt met het juiste uitvoerschema. U moet de naam van deze tabel opgeven wanneer u de SQL Database-uitvoer toevoegt aan de Stream Analytics-taak. Zorg er ook voor dat de taak SELECT - en INSERT-machtigingen heeft om de verbinding te testen en Stream Analytics-query's uit te voeren. Als u dit nog niet hebt gedaan, raadpleegt u de sectie Machtigingen voor Stream Analytics-taken verlenen .
Ga terug naar uw Stream Analytics-taak en ga naar de pagina Uitvoer onder Taaktopologie.
Selecteer SQL Database toevoegen>. Selecteer in het venster met uitvoereigenschappen van de uitvoersink van SQL Database beheerde identiteit in de vervolgkeuzelijst Verificatiemodus.
Vul de rest van de eigenschappen in. Zie Een SQL Database-uitvoer maken met Stream Analytics voor meer informatie over het maken van een SQL Database-uitvoer. Selecteer Opslaan wanneer u klaar bent.
Nadat u Opslaan hebt geselecteerd, wordt automatisch een verbindingstest naar uw resource geactiveerd. Zodra deze test is voltooid, hebt u uw Stream Analytics-taak geconfigureerd om verbinding te maken met uw Azure SQL Database of Synapse SQL Database met behulp van de verificatiemodus voor beheerde identiteiten.
Aanvullende stappen voor SQL-referentiegegevens
Wanneer u SQL-referentiegegevens gebruikt, vereist Azure Stream Analytics dat u het opslagaccount voor uw taak configureert. De taak gebruikt dit opslagaccount om inhoud op te slaan die betrekking heeft op uw Stream Analytics-taak, zoals momentopnamen van SQL-referentiegegevens.
Volg deze stappen om een gekoppeld opslagaccount in te stellen:
Selecteer op de pagina Stream Analytics-taak onder Configureren in het linkermenu de instellingen van het opslagaccount.
Selecteer op de pagina van de Stream Analytics-taakde instellingen van het opslagaccount onder Configureren in het menu links.
Selecteer Op de pagina Opslagaccountinstellingen de optie Opslagaccount toevoegen.
Volg de instructies voor het configureren van de instellingen van uw opslagaccount.
Belangrijk
- Als u wilt verifiëren met behulp van een verbindingsreeks, moet u de firewallinstellingen van het opslagaccount uitschakelen.
- Als u wilt verifiëren met beheerde identiteit, moet u uw Stream Analytics-taak toevoegen aan de toegangsbeheerlijst van het opslagaccount voor de rol Inzender voor opslagblobgegevens en de rol Inzender voor opslagtabelgegevens. Als u uw taak geen toegang geeft, kan de taak geen bewerkingen uitvoeren. Zie Azure RBAC gebruiken om een beheerde identiteit toegang toe te wijzen aan een andere resource voor meer informatie over het verlenen van toegang.
Aanvullende stappen met door de gebruiker toegewezen beheerde identiteit
Herhaal de stappen als u door de gebruiker toegewezen beheerde identiteit hebt geselecteerd om ASA te verbinden met Synapse:
- Maak een ingesloten databasegebruiker. Vervang ASA_Job_Name door User-Assigned Managed Identity. Zie het volgende voorbeeld.
CREATE USER [User-Assigned Managed Identity] FROM EXTERNAL PROVIDER; - Machtigingen verlenen aan de door Gebruikers toegewezen Beheerde Identiteit. Vervang ASA_Job_Name door door gebruikers toegewezen beheerde identiteit.
Zie de voorgaande secties voor meer informatie.
Beheerde identiteit verwijderen
U verwijdert de beheerde identiteit die u voor een Stream Analytics-taak hebt gemaakt, alleen wanneer u de taak verwijdert. U kunt de beheerde identiteit niet verwijderen zonder de taak te verwijderen. Als u de beheerde identiteit niet meer wilt gebruiken, wijzigt u de verificatiemethode voor de uitvoer. De beheerde identiteit blijft bestaan totdat u de taak verwijdert en deze wordt gebruikt als u besluit om verificatie van beheerde identiteit opnieuw te gebruiken.
Volgende stappen
- Uitvoer van Azure Stream Analytics begrijpen
- Uitvoer van Azure Stream Analytics naar Azure SQL Database
- Doorvoerprestaties verhogen naar Azure SQL Database vanuit Azure Stream Analytics
- Referentiegegevens uit een SQL Database gebruiken voor een Azure Stream Analytics-taak
- Records in Azure SQL Database bijwerken of samenvoegen met Azure Functions
- Quickstart: Een Stream Analytics-taak maken met behulp van de Azure-portal