Připojení k serveru IBM MQ z pracovního postupu v Azure Logic Apps
Platí pro: Azure Logic Apps (Consumption + Standard)
Tento průvodce ukazuje, jak získat přístup k místnímu nebo hostovaného serveru Azure z pracovního postupu v Azure Logic Apps pomocí konektoru MQ. Pak můžete vytvořit automatizované pracovní postupy, které přijímají a odesílají zprávy uložené na serveru MQ. Pracovní postup může například vyhledat jednu zprávu ve frontě a pak spustit další akce.
Konektor MQ vytváří kolem klienta Microsoft MQ obálku, která zahrnuje všechny možnosti zasílání zpráv pro komunikaci se vzdáleným serverem MQ přes síť TCP/IP. Tento konektor definuje připojení, operace a parametry pro volání klienta MQ.
Podporované verze IBM WebSphere MQ
- MQ 7.5
- MQ 8.0
- MQ 9.0, 9.1, 9.2 a 9.3
Technické reference ke konektoru
Konektor MQ má různé verze založené na typu aplikace logiky a hostitelském prostředí.
Aplikace logiky | Prostředí | Verze připojení |
---|---|---|
Využití | Azure Logic Apps s více tenanty | Spravovaný konektor, který se zobrazí v galerii konektorů v rámci sdíleného modulu runtime> Tento konektor poskytuje pouze akce, nikoli triggery. Ve scénářích místního serveru MQ podporuje spravovaný konektor pouze ověřování pomocí šifrování TLS (SSL). Další informace najdete v následující dokumentaci: - Referenční informace ke spravovanému konektoru MQ - Spravované konektory v Azure Logic Apps |
Standard | Azure Logic Apps a App Service Environment v3 s jedním tenantem (pouze služba ASE v3 s plány Windows) | Spravovaný konektor, který se zobrazí v galerii konektorů v části Sdílené moduly runtime>a integrovaný konektor, který se zobrazí v galerii konektorů v části Modul runtime>v aplikaci a je založený na poskytovateli služeb. Integrovaná verze se liší následujícími způsoby: – Integrovaná verze obsahuje akce a triggery. – Integrovaný konektor se může přímo připojit k serveru MQ a přistupovat k virtuálním sítím Azure pomocí připojovací řetězec bez místní brány dat. – Integrovaná verze podporuje ověřování serveru i ověřování serveru pomocí šifrování TLS (SSL) pro přenášená data, kódování zpráv pro operace odesílání i příjmu a integraci virtuální sítě Azure. Další informace najdete v následující dokumentaci: - Referenční informace ke spravovanému konektoru MQ - Referenční informace k integrovanému konektoru MQ - Integrované konektory v Azure Logic Apps |
Ověřování pomocí šifrování TLS (SSL)
Na základě toho, jestli používáte spravovaný konektor MQ (pracovní postupy Consumption nebo Standard) nebo integrovaný konektor MQ (jenom pracovní postupy standardu), konektor MQ podporuje jeden nebo oba následující směry ověřování:
Ověřování | Podporovaný typ aplikace logiky a konektor MQ | Zpracovat |
---|---|---|
Pouze server (jednosměrná) |
– Spotřeba: Spravováno pouze - Standard: Spravované nebo integrované |
Pro ověřování serveru odešle server MQ certifikát privátního klíče (veřejně důvěryhodný nebo neveřejně důvěryhodný) klientovi aplikace logiky k ověření. Konektor MQ ověří pravost certifikátu serveru příchozí pošty vůči certifikátům veřejného klíče, označovaným také jako certifikáty podepisující osoby, pomocí standardního ověření streamu SSL .NET. Pracovní postup aplikace logiky neodesílá klientský certifikát. |
Serverový klient (obousměrně) |
– Spotřeba: Nepodporováno - Standardní: integrovaná pouze |
Informace o ověřování serveru najdete v předchozím řádku. Pro ověření klienta odešle klient aplikace logiky certifikát privátního klíče k ověření serveru MQ. Server MQ ověří pravost příchozího klientského certifikátu také pomocí certifikátu veřejného klíče. |
Důležité
V produkčních prostředích vždy chraňte citlivé informace a tajné kódy, jako jsou přihlašovací údaje, certifikáty, kryptografické otisky, přístupové klíče a připojovací řetězec. Ujistěte se, že tyto informace bezpečně ukládáte pomocí ID Microsoft Entra a služby Azure Key Vault. Vyhněte se pevně zakódování těchto informací, sdílení s jinými uživateli nebo ukládání do prostého textu kdekoli, kde mají ostatní přístup. Pokud si myslíte, že by mohly být tyto informace ohroženy, obměňte tajné kódy co nejdříve. Další informace najdete v tématu o službě Azure Key Vault.
Poznámky k privátnímu klíči a certifikátům veřejného klíče
Certifikát, který vyžaduje ověření, je vždy certifikát privátního klíče. Certifikát použitý k ověření je vždy certifikát veřejného klíče.
Certifikát veřejného důvěryhodného privátního klíče vydává rozpoznaná certifikační autorita. Certifikát privátního klíče, který není veřejně důvěryhodný, zahrnuje certifikát podepsaný svým držitelem, privátní certifikační autoritu a podobné certifikáty.
Pokud chcete ověřit certifikát privátního klíče odesílaný ze serveru MQ, konektor MQ používá certifikáty veřejného klíče, které obvykle existují na hostiteli virtuálního počítače vaší aplikace logiky v úložišti důvěryhodných kořenových certifikačních autorit hostitele .
Pokud ale hostitel nemá všechny požadované certifikáty veřejného klíče nebo pokud váš server MQ odešle certifikát privátního klíče, který není veřejně důvěryhodný, musíte provést další kroky. Další informace najdete v části Předpoklady.
K ověření certifikátu privátního klíče klienta odeslaného z vaší standardní aplikace logiky používá server MQ certifikáty veřejného klíče, které existují v úložišti certifikátů serveru MQ. Pokud chcete přidat certifikát privátního klíče pro aplikaci logiky, který se má použít jako klientský certifikát, přečtěte si téma Přidání certifikátu privátního klíče.
Omezení
Ověřování pomocí šifrování TLS (SSL)
Konektor MQ Podporovaný směr ověřování Spravované Pouze server (jednosměrný) Integrovaný – Serverový klient (obousměrný)
- Pouze server (jednosměrný)Ověření certifikátu serveru
Integrovaný konektor MQ neověřuje datum vypršení platnosti certifikátu serveru ani řetěz certifikátů.
Převody znakové sady
Spravovaný konektor MQ neprovádí převody znakové sady ani nepoužívá pole Formát zprávy. Konektor zkopíruje jenom všechna data, která se zobrazí v poli zprávy, a odešle zprávu spolu.
Integrovaný konektor MQ může provádět převody znakové sady, ale pouze v případě, že datový formát je řetězec. Pokud zadáte jiné ID znakové sady (znaková stránka), konektor se pokusí převést data na novou znakovou stránku.
Konektor MQ nepodporuje segmentované zprávy.
Další informace najdete v referenčních informacích ke spravovanému konektoru MQ nebo o integrovaném konektoru MQ.
Požadavky
Účet a předplatné Azure. Pokud nemáte předplatné Azure, zaregistrujte si bezplatný účet Azure.
Pokud se chcete připojit k místnímu serveru MQ, musíte místní bránu dat nainstalovat na server v síti. Aby konektor MQ fungoval, musí mít server s místní bránou dat nainstalovanou také rozhraní .NET Framework 4.6.
Po instalaci brány musíte také vytvořit prostředek brány dat v Azure. Konektor MQ používá tento prostředek pro přístup k vašemu serveru MQ. Další informace najdete v tématu Nastavení připojení brány dat.
Poznámka:
Bránu nepotřebujete v následujících scénářích:
- Váš server MQ je veřejně dostupný nebo dostupný v Azure.
- Použijete integrovaný konektor MQ, nikoli spravovaný konektor.
Prostředek aplikace logiky a pracovní postup, kde chcete získat přístup k serveru MQ.
Pokud chcete používat spravovaný konektor MQ s místní bránou dat, prostředek aplikace logiky musí používat stejné umístění jako prostředek brány v Azure.
Pokud chcete použít spravovaný konektor MQ, který neposkytuje žádné triggery, ujistěte se, že váš pracovní postup začíná triggerem nebo že do pracovního postupu nejprve přidáte aktivační událost. Můžete například použít trigger opakování.
Pokud chcete použít trigger z integrovaného konektoru MQ, ujistěte se, že začínáte s prázdným pracovním postupem.
Požadavky na certifikáty pro ověřování pomocí šifrování TLS (SSL)
Spravovaný konektor MQ
Server MQ Požadavky Server MQ hostovaný v Azure Server MQ musí odeslat certifikát privátního klíče vydaný důvěryhodnou certifikační autoritou klientovi aplikace logiky k ověření. Místní server MQ s využitím místní brány dat Pokud chcete odeslat certifikát privátního klíče, který není veřejně důvěryhodný, například certifikát podepsaný svým držitelem nebo privátní certifikační autoritou, musíte certifikát přidat do úložiště důvěryhodných kořenových certifikačních autorit (CA) na místním počítači s instalací místní brány dat. Pro tuto úlohu můžete použít Správce certifikátů systému Windows (certmgr.exe). Integrovaný konektor MQ
Standardní aplikace logiky používají Azure App Service jako hostitelskou platformu a zpracovávají certifikáty. U standardních aplikací logiky v libovolném plánu WS* můžete do úložiště certifikátů místního počítače přidat veřejné, soukromé, vlastní nebo certifikáty podepsané svým držitelem. Pokud ale potřebujete přidat certifikáty do důvěryhodného kořenového úložiště certifikační autority na hostiteli virtuálního počítače, na kterém běží vaše standardní aplikace logiky, služba App Service vyžaduje, aby vaše aplikace logiky běžela v izolovaném prostředí App Service Environment v3 (ASE) s plánem služby App Service pouze s Windows a plánu služby App Service založeném na ASE. Další informace najdete v tématu Certifikáty a App Service Environment.
Ověřování serveru MQ
Následující tabulka popisuje požadavky na certifikáty na základě vašeho scénáře:
Certifikát příchozího serveru MQ Požadavky Veřejně důvěryhodný certifikát privátního klíče vydaný důvěryhodnou certifikační autoritou Aplikace logiky obvykle nepotřebuje žádné další nastavení, protože hostitel virtuálního počítače vaší aplikace logiky obvykle obsahuje požadované certifikáty veřejného klíče k ověření certifikátu privátního klíče příchozíhi serveru MQ. Pokud chcete zkontrolovat, jestli tyto certifikáty veřejného klíče existují, postupujte podle pokynů Zobrazení a potvrzení kryptografických otisků pro existující certifikáty veřejného klíče.
Pokud hostitel virtuálního počítače nemá všechny požadované certifikáty veřejného klíče k ověření certifikátu privátního klíče serveru MQ a všech zřetězených certifikátů, proveďte následující kroky:
1. Znovu vytvořte aplikaci logiky standardu pomocí Aplikace Azure Service Environment v3 (ASE) s plánem služby App Service založeným na Windows a službě ASE.
2. Ručně přidejte požadované certifikáty veřejného klíče do úložiště důvěryhodné kořenové certifikační autority hostitele.Certifikát privátního klíče, který není veřejně důvěryhodný, například certifikát podepsaný svým držitelem nebo privátní certifikační autority Hostitel virtuálního počítače vaší aplikace logiky nebude mít požadované certifikáty veřejného klíče v úložišti důvěryhodných kořenových certifikačních autorit hostitele k ověření řetězu certifikátů serveru MQ. V tomto případě proveďte následující kroky:
1. Znovu vytvořte aplikaci logiky standardu pomocí Aplikace Azure Service Environment v3 (ASE) s plánem služby App Service založeným na Windows a službě ASE.
2. Ručně přidejte požadované certifikáty veřejného klíče do úložiště důvěryhodné kořenové certifikační autority hostitele.
Další informace najdete v následující dokumentaci:
- Vazby certifikátů a služby App Service Environment
- Přidání a správa certifikátů TLS/SSL ve službě Azure App ServiceOvěřování klientů aplikace logiky
Můžete přidat certifikát privátního klíče, který se bude odesílat jako klientský certifikát, a poté zadat hodnotu otisku certifikátu v podrobnostech připojení pro integrovaný konektor MQ. Další informace najdete v tématu Přidání certifikátu privátního klíče.
Doporučení: Upgrade na server MQ 9.0 nebo novější. Na serveru MQ také nezapomeňte nastavit kanál připojení k serveru pomocí šifrovací sady, která odpovídá specifikaci šifry, kterou používá vaše připojení klienta, například ANY_TLS12_OR_HIGHER. Další informace najdete v další položce o požadavcích na šifrování.
Požadavky na specifikaci šifry
Server MQ vyžaduje, abyste definovali specifikaci šifry pro připojení, která používají šifrování TLS (SSL). Tato specifikace šifry musí odpovídat podporovaným, zvoleným a používaným operačním systémem, na kterém běží server MQ. V konečném důsledku musí specifikace šifry používané připojením klienta odpovídat šifrovacím sadám nastaveným v kanálu připojení k serveru na serveru MQ.
Více informací najdete v tématu Problémy s připojením a ověřováním.
Přidání triggeru MQ (jenom aplikace logiky úrovně Standard)
Následující kroky platí jenom pro pracovní postupy standardní aplikace logiky, které můžou používat triggery poskytované integrovaným konektorem MQ. Spravovaný konektor MQ neobsahuje žádné triggery.
Tyto kroky používají Azure Portal, ale s příslušným rozšířením Azure Logic Apps můžete také pomocí editoru Visual Studio Code vytvořit pracovní postup standardní aplikace logiky.
Na webu Azure Portal otevřete v návrháři prázdný pracovní postup aplikace logiky.
Podle těchto obecných kroků přidejte předdefinovaný trigger MQ, který chcete použít. Další informace najdete v tématu Triggery integrovaného konektoru MQ.
Zadejte požadované informace pro ověření připojení. Až budete hotovi, vyberte Vytvořit.
Jakmile se zobrazí informační pole aktivační události, zadejte požadované informace pro trigger.
Po dokončení uložte pracovní postup. Na panelu nástrojů návrháře vyberte Uložit.
Přidání akce MQ
Pracovní postup aplikace logiky Consumption může používat pouze spravovaný konektor MQ. Pracovní postup standardní aplikace logiky ale může používat spravovaný konektor MQ a integrovaný konektor MQ. Každá verze má více akcí. Například spravované i integrované verze konektoru mají vlastní akce pro procházení zprávy.
Akce spravovaného konektoru: Tyto akce se spouští v pracovním postupu aplikace logiky Consumption nebo Standard.
Předdefinované akce konektoru: Tyto akce se spouštějí jenom v pracovním postupu standardní aplikace logiky.
Následující kroky používají Azure Portal, ale s příslušným rozšířením Azure Logic Apps můžete k vytváření pracovních postupů aplikace logiky použít také následující nástroje:
- Pracovní postupy consumption: Visual Studio Code
- Standardní pracovní postupy: Visual Studio Code
Na webu Azure Portal otevřete pracovní postup aplikace logiky v návrháři.
Podle těchto obecných kroků přidejte požadovanou akci MQ. Další informace najdete v tématu Akce konektoru MQ.
Zadejte požadované informace pro ověření připojení. Až budete hotovi, vyberte Vytvořit.
Jakmile se zobrazí pole s informacemi o akci, zadejte požadované informace pro vaši akci.
Po dokončení uložte pracovní postup. Na panelu nástrojů návrháře vyberte Uložit.
Otestování pracovního postupu
Pokud chcete zkontrolovat, že váš pracovní postup vrací očekávané výsledky, spusťte pracovní postup a zkontrolujte výstupy z historie spuštění pracovního postupu.
Spusťte svůj pracovní postup.
Pracovní postup Consumption: Na panelu nástrojů návrháře pracovního postupu vyberte Spustit>.
Standardní pracovní postup: V nabídce pracovního postupu v části Nastavení vyberte Historie spuštění. Na panelu nástrojů vyberte Spustit>spuštění.
Po dokončení spuštění návrhář zobrazí historii spuštění pracovního postupu spolu se stavem každého kroku.
Pokud chcete zkontrolovat vstupy a výstupy pro každý krok, který se spustil (nepřeskočil), rozbalte nebo vyberte krok.
Pokud chcete zkontrolovat další podrobnosti o vstupu, vyberte Zobrazit nezpracované vstupy.
Pokud chcete zkontrolovat další podrobnosti o výstupu, vyberte Zobrazit nezpracované výstupy. Pokud nastavíte IncludeInfo na hodnotu true, bude zahrnut další výstup.
Zobrazení a přidání certifikátů pro ověřování pomocí šifrování TLS (SSL)
Následující informace platí jenom pro pracovní postupy standardní aplikace logiky integrovaného konektoru MQ pomocí ověřování pouze serveru nebo klienta s šifrováním TLS (SSL).
Zobrazení a potvrzení kryptografických otisků pro existující certifikáty veřejného klíče
Pokud chcete zkontrolovat, jestli na hostiteli virtuálního počítače standardní aplikace logiky v důvěryhodném kořenovém úložišti certifikační autority existují kryptografické otisky požadovaných certifikátů veřejného klíče, spusťte skript cert
PowerShellu z nabídky prostředků vaší standardní aplikace logiky.
Na webu Azure Portal otevřete prostředek aplikace logiky Standard. V nabídce prostředků aplikace logiky v části Vývojové nástroje vyberte Rozšířené nástroje>Přejít.
V nabídce konzoly Ladění Kudu vyberte PowerShell.
Po zobrazení okna PowerShellu spusťte z příkazového řádku PowerShellu následující skript:
dir cert:\localmachine\root
V okně PowerShellu jsou uvedeny existující kryptografické otisky a popisy, například:
Přidání certifikátu veřejného klíče
Tímto postupem přidáte certifikát veřejného klíče do úložiště důvěryhodné kořenové certifikační autority na hostiteli virtuálního počítače, na kterém běží vaše standardní aplikace logiky.
Na webu Azure Portal otevřete prostředek aplikace logiky Standard. V nabídce prostředků aplikace logiky v části Nastavení vyberte Certifikáty.
Vyberte kartu Certifikáty veřejného klíče (.cer) a pak vyberte Přidat certifikát.
V podokně Přidat certifikát veřejného klíče, které se otevře, vyhledejte a vyberte soubor certifikátu veřejného klíče (.cer), který chcete přidat. Zadejte popisný název, který popisuje certifikát. Až budete hotovi, vyberte Přidat.
Po přidání certifikátu zkopírujte ve sloupci Kryptografický otisk hodnotu kryptografického otisku certifikátu.
V nabídce prostředků aplikace logiky vyberte Konfigurace.
Na kartě Nastavení aplikace vyberte Nové nastavení aplikace. Přidejte nové nastavení aplikace s názvem WEBSITE_LOAD_ROOT_CERTIFICATES a zadejte hodnotu kryptografického otisku certifikátu, kterou jste předtím zkopírovali. Pokud máte více hodnot kryptografického otisku certifikátu, nezapomeňte každou hodnotu oddělit čárkou (,).
Další informace najdete v tématu Úprava nastavení hostitele a aplikace pro standardní aplikace logiky v Azure Logic Apps s jedním tenantem.
Poznámka:
Pokud zadáte kryptografický otisk pro certifikát privátní certifikační autority, integrovaný konektor MQ nespustí žádné ověření certifikátu, například kontrolu data vypršení platnosti certifikátu nebo zdroje certifikátu. Pokud standardní ověřování SSL rozhraní .NET selže, konektor porovná pouze libovolnou hodnotu kryptografického otisku předanou s hodnotou v nastavení WEBSITE_LOAD_ROOT_CERTIFICATES .
Pokud se přidaný certifikát nezobrazí v seznamu certifikátů veřejného klíče, vyberte na panelu nástrojů možnost Aktualizovat.
Přidání certifikátu privátního klíče
Tímto postupem přidáte certifikát privátního klíče do úložiště důvěryhodných kořenových certifikačních autorit na hostiteli virtuálního počítače, na kterém běží vaše standardní aplikace logiky.
Na webu Azure Portal otevřete prostředek aplikace logiky. V nabídce prostředků aplikace logiky v části Nastavení vyberte Certifikáty.
Vyberte kartu Přineste si vlastní certifikáty (.pfx) a pak vyberte Přidat certifikát.
V podokně Přidat certifikát privátního klíče, které se otevře, vyberte v části Zdroj jednu z následujících možností:
Nahrání certifikátu (.pfx)
Zadejte následující hodnoty:
Parametr Popis Soubor certifikátu PFX Vyhledejte a vyberte soubor certifikátu privátního klíče (.pfx). Heslo certifikátu Zadejte heslo, které jste vytvořili při exportu souboru PFX. Popisný název certifikátu Zadejte název certifikátu, který se má zobrazit v prostředku aplikace logiky. Až budete hotovi, vyberte Ověřit>přidat.
Import ze služby Key Vault
Vyberte Vybrat certifikát trezoru klíčů a zadejte následující hodnoty:
Parametr Popis Předplatné Vyberte předplatné Azure přidružené k vašemu trezoru klíčů. Trezor klíčů Vyberte trezor klíčů, který má váš soubor certifikátu privátního klíče (.pfx). Certifikát V trezoru klíčů vyberte certifikát PKSCS12. Všechny certifikáty PKCS12 v trezoru jsou uvedené s kryptografickými otisky, ale ne všechny můžou být v Azure Logic Apps podporované. Až budete hotovi, vyberte Vybrat>ověřit>přidání.
Po přidání certifikátu zkopírujte ve sloupci Kryptografický otisk hodnotu kryptografického otisku certifikátu.
V nabídce prostředků aplikace logiky v části Nastavení vyberte Konfigurace.
Na kartě Nastavení aplikace vyberte Nové nastavení aplikace. Přidejte nové nastavení aplikace s názvem WEBSITE_LOAD_CERTIFICATES a zadejte hodnotu kryptografického otisku certifikátu, kterou jste předtím zkopírovali.
Další informace najdete v tématu Úprava nastavení hostitele a aplikace pro standardní aplikace logiky v Azure Logic Apps s jedním tenantem.
Pokud se přidaný certifikát nezobrazí v seznamu certifikátů privátních klíčů, vyberte na panelu nástrojů možnost Aktualizovat.
Při vytváření připojení pomocí integrovaného konektoru MQ vyberte v poli Informace o připojení možnost Použít protokol TLS.
Do vlastnosti Kryptografický otisk klientského certifikátu zadejte dříve zkopírovanou hodnotu kryptografického otisku pro certifikát privátního klíče, který umožňuje dvoucestné ověřování klienta serveru. Pokud nezadáte hodnotu kryptografického otisku, konektor použije ověřování pouze serveru (jednosměrné).
Poradce při potížích
Selhání při procházení nebo příjmu akcí
Pokud spustíte akci procházení nebo přijetí pro prázdnou frontu, akce selže s následujícími výstupy záhlaví:
Problémy s připojením a ověřováním
Pokud váš pracovní postup používá spravovaný konektor MQ pro připojení k místnímu serveru MQ, může se zobrazit následující chyba:
"MQ: Could not Connect the Queue Manager '<queue-manager-name>': The Server was expecting an SSL connection."
Server MQ musí poskytnout certifikát vydaný důvěryhodnou certifikační autoritou.
Server MQ vyžaduje, abyste definovali specifikaci šifry pro použití s připojeními TLS. Pro účely zabezpečení a zahrnutí nejlepších sad zabezpečení však operační systém Windows odešle sadu podporovaných specifikací šifry.
Operační systém, na kterém běží server MQ, zvolí sady, které se mají použít. Aby se konfigurace shodovaly, musíte změnit nastavení serveru MQ tak, aby specifikace šifry odpovídala možnosti zvolené ve vyjednávání protokolu TLS.
Při pokusu o připojení server MQ zaznamená zprávu o události, že pokus o připojení selhal, protože server MQ zvolil nesprávnou specifikaci šifry. Zpráva události obsahuje specifikaci šifry, kterou server MQ vybral ze seznamu. V konfiguraci kanálu připojení k serveru aktualizujte specifikaci šifry tak, aby odpovídala specifikaci šifry ve zprávě události.