Použití spravovaných identit pro přístup ke službě Azure SQL Database nebo Azure Synapse Analytics z úlohy Azure Stream Analytics

Azure Stream Analytics podporuje ověřování spravovaných identit pro azure SQL Database a výstupní jímky Azure Synapse Analytics. Spravované identity eliminují omezení metod ověřování na základě uživatelů, jako je potřeba znovu ověřit kvůli změnám hesla nebo vypršení platnosti tokenů uživatele, ke kterým dochází každých 90 dnů. Když odeberete nutnost ručního ověření, nasazení Stream Analytics je možné plně automatizovat.

Spravovaná identita je spravovaná aplikace zaregistrovaná v Microsoft Entra ID, která představuje danou úlohu Stream Analytics. Spravovaná aplikace se používá k ověření v cílovém prostředku. V tomto článku se dozvíte, jak povolit spravovanou identitu pro službu Azure SQL Database nebo výstupy azure Synapse Analytics úlohy Stream Analytics prostřednictvím webu Azure Portal.

Přehled

Tento článek ukazuje kroky potřebné k připojení úlohy Stream Analytics ke službě Azure SQL Database nebo fondu SQL služby Azure Synapse Analytics pomocí režimu ověřování spravované identity.

  • Nejprve vytvoříte spravovanou identitu přiřazenou systémem pro úlohu Stream Analytics. Toto je identita vaší úlohy v Microsoft Entra ID.

  • Přidejte správce služby Active Directory do pracovního prostoru SQL Serveru nebo Synapse, který umožňuje ověřování Microsoft Entra ID (spravovaná identita) pro tento prostředek.

  • Dále vytvořte uživatele s omezením představujícím identitu úlohy Stream Analytics v databázi. Pokaždé, když úloha Stream Analytics komunikuje s vaším prostředkem služby SQL DATABASE nebo Synapse SQL DB, je to identita, která bude odkazovat na kontrolu oprávnění, která vaše úloha Stream Analytics má.

  • Udělte oprávnění k úloze Stream Analytics pro přístup k fondům SQL Database nebo Synapse SQL.

  • Nakonec do úlohy Stream Analytics přidejte službu Azure SQL Database nebo Azure Synapse Analytics jako výstup.

Předpoklady

K použití této funkce jsou potřeba následující:

  • Úloha Azure Stream Analytics.

  • Prostředek Azure SQL Database.

Vytvoření spravované identity

Nejprve vytvoříte spravovanou identitu pro úlohu Azure Stream Analytics.

  1. Na webu Azure Portal otevřete úlohu Azure Stream Analytics.

  2. V levé navigační nabídce vyberte spravovanou identitu umístěnou v části Konfigurovat. Potom zaškrtněte políčko vedle možnosti Použít spravovanou identitu přiřazenou systémem a vyberte Uložit.

    Select system-assigned managed identity

    Instanční objekt pro identitu úlohy Stream Analytics se vytvoří v Microsoft Entra ID. Životní cyklus nově vytvořené identity spravuje Azure. Když se úloha Stream Analytics odstraní, azure automaticky odstraní přidruženou identitu (tj. instanční objekt).

  3. Můžete také přepnout na spravované identity přiřazené uživatelem.

  4. Při uložení konfigurace se ID objektu (OID) instančního objektu zobrazí jako ID objektu zabezpečení, jak je znázorněno níže:

    Object ID shown as Principal ID

    Instanční objekt má stejný název jako úloha Stream Analytics. Pokud je například název vaší úlohy MyASAJob, název instančního objektu je také MyASAJob.

Vyberte správce služby Active Directory.

Po vytvoření spravované identity vyberete správce služby Active Directory.

  1. Přejděte ke svému prostředku fondu SQL Azure SQL Database nebo Azure Synapse Analytics a vyberte pracovní prostor SQL Serveru nebo Synapse, ve které se prostředek nachází. Odkaz na tyto položky najdete na stránce přehledu prostředků vedle názvu serveru nebo názvu pracovního prostoru.

  2. V části Nastavení vyberte Správa služby Active Directory nebo SPRÁVA SQL Active Directory pro pracovní prostor SQL Server a Synapse. Pak vyberte Nastavit správce.

    Active Directory admin page

  3. Na stránce správce služby Active Directory vyhledejte uživatele nebo skupinu, které mají být správcem SQL Serveru, a klikněte na vybrat. Bude to uživatel, který bude moct vytvořit uživatele databáze s omezením v další části.

    Add Active Directory admin

    Na stránce správce služby Active Directory se zobrazují všichni členové a skupiny vaší služby Active Directory. Neaktivní uživatelé nebo skupiny se nedají vybrat, protože nejsou podporované jako správci Microsoft Entra. Seznam podporovaných správců najdete v části Microsoft Entra features and Limitations (Omezení ) v části Použití ověřování Microsoft Entra pro ověřování pomocí služby SQL Database nebo Azure Synapse.

  4. Na stránce správce služby Active Directory vyberte Uložit. Proces změny správce trvá několik minut.

Vytvoření uživatele databáze s omezením

Dále vytvoříte uživatele databáze s omezením ve vaší databázi Azure SQL nebo Azure Synapse, která je namapovaná na identitu Microsoft Entra. Uživatel databáze s omezením nemá přihlášení k primární databázi, ale mapuje se na identitu v adresáři přidruženém k databázi. Identita Microsoft Entra může být individuální uživatelský účet nebo skupina. V takovém případě chcete pro úlohu Stream Analytics vytvořit uživatele databáze s omezením.

Další informace najdete v následujícím článku o integraci Microsoft Entra: Universal Authentication with SQL Database a Azure Synapse Analytics (podpora SSMS pro MFA)

  1. Připojení k databázi Azure SQL nebo Azure Synapse pomocí aplikace SQL Server Management Studio. Uživatelské jméno je uživatel Microsoft Entra s oprávněním ALTER ANY USER. Příkladem je správce, který jste nastavili na SQL Serveru. Použijte Microsoft Entra ID – Univerzální s ověřováním MFA .

    Connect to SQL Server

    Název <SQL Server name>.database.windows.net serveru se může lišit v různých oblastech. Například oblast Čína by měla používat <SQL Server name>.database.chinacloudapi.cn.

    Konkrétní databázi Azure SQL nebo Azure Synapse můžete zadat tak, že přejdete na Možnosti Připojení vlastnosti > Připojení do databáze>.

    SQL Server connection properties

  2. Při prvním připojení se může zobrazit následující okno:

    New firewall rule window

    1. Pokud ano, přejděte na webu Azure Portal k prostředku pracovního prostoru SQL Server nebo Synapse. V části Zabezpečení otevřete stránku Brány firewall a virtuální sítě nebo brány firewall.
    2. Přidejte nové pravidlo s libovolným názvem pravidla.
    3. Pro počáteční IP adresu použijte IP adresu Odesílatele z okna Nové pravidlo brány firewall.
    4. Použijte IP adresu To z okna Nové pravidlo brány firewall pro koncovou IP adresu.
    5. Vyberte Uložit a zkuste se znovu připojit z aplikace SQL Server Management Studio.
  3. Po připojení vytvořte uživatele databáze s omezením. Následující příkaz SQL vytvoří uživatele databáze s omezením, který má stejný název jako vaše úloha Stream Analytics. Nezapomeňte do ASA_JOB_NAME zahrnout hranaté závorky. Použijte následující syntaxi T-SQL a spusťte dotaz.

    CREATE USER [ASA_JOB_NAME] FROM EXTERNAL PROVIDER;
    

    Pokud chcete ověřit, jestli jste uživatele databáze s omezením správně přidali, spusťte v aplikaci SSMS v související databázi následující příkaz a zkontrolujte, jestli je váš ASA_JOB_NAME pod sloupcem "name".

    SELECT * FROM <SQL_DB_NAME>.sys.database_principals
    WHERE type_desc = 'EXTERNAL_USER'
    
  4. Pokud chce Microsoft Entra ID ověřit, jestli má úloha Stream Analytics přístup ke službě SQL Database, musíme microsoftu Entra udělit oprávnění ke komunikaci s databází. Uděláte to tak, že znovu přejdete na stránku Brány firewall a virtuální síť nebo brány firewall na webu Azure Portal a povolíte možnost Povolit službám a prostředkům Azure přístup k tomuto serveru nebo pracovnímu prostoru.

    Firewall and virtual network

Udělení oprávnění úlohy Stream Analytics

Po vytvoření uživatele databáze s omezením a udělení přístupu ke službám Azure na portálu, jak je popsáno v předchozí části, má vaše úloha Stream Analytics oprávnění ze spravované identity připojit k prostředku databáze Azure SQL prostřednictvím spravované identity. Doporučujeme udělit oprávnění SELECT a INSERT úloze Stream Analytics, protože je budete potřebovat později v pracovním postupu Stream Analytics. Oprávnění SELECT umožňuje úloze otestovat připojení k tabulce v databázi Azure SQL. Oprávnění INSERT umožňuje testování kompletních dotazů Stream Analytics, jakmile nakonfigurujete vstup a výstup databáze Azure SQL.

Tato oprávnění můžete udělit úloze Stream Analytics pomocí aplikace SQL Server Management Studio. Další informace najdete v referenčních informacích k grantu (Transact-SQL).

Pokud chcete udělit oprávnění pouze k určité tabulce nebo objektu v databázi, použijte následující syntaxi T-SQL a spusťte dotaz.

GRANT CONNECT TO ASA_JOB_NAME;
GRANT SELECT, INSERT ON OBJECT::TABLE_NAME TO ASA_JOB_NAME;

Případně můžete kliknout pravým tlačítkem na databázi Azure SQL nebo Azure Synapse v aplikaci SQL Server Management Studio a vybrat Oprávnění vlastností>. V nabídce oprávnění můžete zobrazit úlohu Stream Analytics, kterou jste přidali dříve, a podle potřeby můžete oprávnění udělit nebo odepřít ručně.

Pokud se chcete podívat na všechna oprávnění, která jste přidali do ASA_JOB_NAME uživatele, spusťte v SSMS v rámci související databáze následující příkaz:

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>'

Vytvoření výstupu Azure SQL Database nebo Azure Synapse

Poznámka:

Při použití spravované instance SQL (MI) jako referenčního vstupu musíte ve spravované instanci SQL nakonfigurovat veřejný koncový bod. Při konfiguraci vlastnosti databáze je nutné zadat plně kvalifikovaný název domény s portem. Příklad: sampleserver.public.database.windows.net,3342.

Teď, když je vaše spravovaná identita nakonfigurovaná, můžete do úlohy Stream Analytics přidat výstup služby Azure SQL Database nebo Azure Synapse.

Ujistěte se, že jste ve službě SQL Database vytvořili tabulku s odpovídajícím výstupním schématem. Název této tabulky je jednou z požadovaných vlastností, které se musí vyplnit při přidání výstupu služby SQL Database do úlohy Stream Analytics. Také se ujistěte, že úloha má oprávnění SELECT a INSERT k otestování připojení a spouštění dotazů Stream Analytics. Pokud jste to ještě neudělali, projděte si část Udělení oprávnění úlohy Stream Analytics.

  1. Vraťte se k úloze Stream Analytics a přejděte na stránku Výstupy v části Topologie úlohy.

  2. Vyberte Přidat > databázi SQL. V okně vlastností výstupu služby SQL Database vyberte v rozevíracím seznamu Režim ověřování spravovanou identitu .

  3. Vyplňte zbývající vlastnosti. Další informace o vytvoření výstupu služby SQL Database najdete v tématu Vytvoření výstupu služby SQL Database pomocí Stream Analytics. Jakmile budete hotovi, zvolte tlačítko Uložit.

  4. Po kliknutí na Uložit by se měl automaticky aktivovat test připojení k vašemu prostředku. Po úspěšném dokončení jste úspěšně nakonfigurovali úlohu Stream Analytics tak, aby se k vaší službě Azure SQL Database nebo Synapse SQL Database připojili pomocí režimu ověřování spravované identity.

Další kroky pro referenční data SQL

Azure Stream Analytics vyžaduje, abyste při použití referenčních dat SQL nakonfigurovali účet úložiště vaší úlohy. Tento účet úložiště slouží k ukládání obsahu souvisejícího s úlohou Stream Analytics, jako jsou například snímky referenčních dat SQL.

Pokud chcete nastavit přidružený účet úložiště, postupujte následovně:

  1. Na stránce úlohy Stream Analytics vyberte nastavení účtu úložiště v části Konfigurovat v nabídce vlevo.

  2. Na stránce Nastavení účtu úložiště vyberte Přidat účet úložiště.

  3. Podle pokynů nakonfigurujte nastavení účtu úložiště.

    Screenshot of the Storage account settings page of a Stream Analytics job.

Důležité

  • Pokud se chcete ověřit pomocí připojovací řetězec, musíte zakázat nastavení brány firewall účtu úložiště.
  • Pokud se chcete ověřit pomocí spravované identity, musíte úlohu Stream Analytics přidat do seznamu řízení přístupu účtu úložiště pro roli Přispěvatel dat v objektech blob služby Storage a roli Přispěvatel dat tabulky služby Storage. Pokud neudělíte přístup k úloze, úloha nebude moct provádět žádné operace. Další informace o udělení přístupu najdete v tématu Použití Azure RBAC k přiřazení přístupu ke spravované identitě k jinému prostředku.

Další kroky se spravovanou identitou přiřazenou uživatelem

Opakujte kroky, pokud jste vybrali spravovanou identitu přiřazenou uživatelem pro připojení ASA k Synapse:

  1. Vytvořte uživatele databáze s omezením. Nahraďte ASA_Job_Name spravovanou identitou přiřazenou uživatelem. Viz příklad níže.
    CREATE USER [User-Assigned Managed Identit] FROM EXTERNAL PROVIDER;
    
  2. Udělte oprávnění spravované identitě přiřazené uživatelem. Nahraďte ASA_Job_Name spravovanou identitou přiřazenou uživatelem.

Další podrobnosti najdete v částech výše.

Odebrání spravované identity

Spravovaná identita vytvořená pro úlohu Stream Analytics se odstraní jenom při odstranění úlohy. Spravovanou identitu není možné odstranit bez odstranění úlohy. Pokud už spravovanou identitu nechcete používat, můžete změnit metodu ověřování pro výstup. Spravovaná identita bude nadále existovat, dokud se úloha nesmazat, a použije se, pokud se rozhodnete znovu použít ověřování spravované identity.

Další kroky