Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Tu je zrútenie toho, čo to znamená a ako to riešiť:
Čo znamená MQRC_NOT_Authorized (alebo CODE CODE 2035):
Toto je najbežnejšia chyba autorizácie v MQ. Znamená to, že ID používateľa (alebo kontext používateľa, v rámci ktorého je aplikácia spustená) má * nie * má potrebné povolenia na vykonanie akcie, ktorú sa snaží robiť v konkrétnom prostriedku MQ. Pomyslite na to, ako by ste sa snažili získať prístup k súboru v počítači bez požadovaných povolení na čítanie/zápis.
Bežné scenáre a príčiny:
1. Nesprávny kontext ID používateľa:
* beží ako iný používateľ: Aplikácia môže byť spustená pod iným účtom používateľa systému Windows, ako je ten, o ktorom si myslíte, že je. Môže sa to stať, ak ste zmenili účty služieb, naplánované úlohy alebo spúšťajú aplikáciu z príkazového riadka so zvýšenými výsadami (napr. „Spustite ako správca“).
* Nesprávny používateľ pre com+ aplikácie: Ak vaša aplikácia používa služby COM+, je rozhodujúca identita nakonfigurovaná pre aplikáciu COM+. Uistite sa, že používa účet, ktorý má povolenia MQ.
* WebSphere Application Server (WHIS) Problémy: Ak je vaša aplikácia nasadená na aplikačnom serveri WebSphere, uistite sa, že ID používateľa nakonfigurované pre zdroj údajov a mapovanie bezpečnostných rolí aplikácie sú správne povolené v MQ.
2.
* Front Access: Používateľ nemá `+get`,`+put`, `+Browse` alebo iné požadované povolenia na konkrétnom fronte, ku ktorému sa aplikácia snaží získať prístup. `+Connect` a`+Dopyt 'Povolenia sú tiež potrebné.
* Front Manager Access: Užívateľ nemá autoritu `+Connect` so samotným správcom frontov. Toto je základná požiadavka.
* Prístup k kanálu: Ak sa aplikácia pripojí na diaľku, užívateľ nemá autoritu `+Connect` k kanálu Connection Server Connection (SVRConn). Môže tiež potrebovať povolenia na použitie kanála, napríklad `+Altuser` alebo`+setAll` v závislosti od toho, ako sú nakonfigurované záznamy autentifikácie kanálov (CHLAUTH).
* Definícia procesu (proces) Prístup: Ak aplikácia používa spúšťacie monitory, používateľ potrebuje `+Get` autoritu vo fronte iniciácie a príslušný prístup k definícii procesu.
* Prístup k téme: Na publikovanie/predplatenie aplikácií potrebuje užívateľ príslušné povolenia na predplatné a publikovanie na tému alebo reťazec témy.
3.
* blokované kanály: Záznamy CHLAUTH môžu z použitia konkrétnych kanálov explicitne blokovať určité ID používateľa alebo IP adresy. Ak záznam Chlauth bráni používateľovi v pripojení, chyba sa zobrazí ako `mqrc_not_authorized`.
* atribút mcAuser: Atribút „McAuser` na kanáli Server Connection Channel (SVRConn) určuje ID používateľa, ktoré sa použije pri pripojení klienta. Ak je „McAuser“ nastavený nesprávny alebo správne nakonfigurovaný, môže to viesť k problémom s povolením.
4. Problémy s konfiguráciou Object Authority Manager (OAM):
* Nesprávne politiky OAM: OAM je zodpovedný za presadzovanie bezpečnostných politík. Nesprávne politiky môžu neúmyselne odmietnuť prístup k zdrojom MQ.
* členstvo v skupine: Používateľ by mohol byť členom skupiny Windows, ale skupine nebolo udelené potrebné povolenia MQ.
5. Nesprávne postupy kódovania:
* správne neprenosy poverenia: Ak je aplikácia navrhnutá tak, aby odovzdávala užívateľské poverenia do MQ na autorizáciu, uistite sa, že tieto poverenia sa prenášajú správne (napr. Používanie poľa „userID` v MQMD alebo štruktúre` SecurityParameters 'pri pripojení).
* Používanie predvoleného používateľského kontextu nesprávne: Spoliehanie sa na predvolený kontext používateľa môže byť problematické, najmä vo viacúrovňových architektúrach. Explicitné zadanie ID používateľa je často spoľahlivejšie.
Kroky na riešenie problémov:
1. Identifikujte ID používateľa:
* z protokolov aplikácií: Skontrolujte protokoly aplikácie, či neobsahujú všetky správy týkajúce sa pripojenia alebo autorizácie MQ. Chybové hlásenie môže obsahovať použité ID používateľa.
* z protokolov chýb MQ: Preskúmajte protokoly chýb MQ (AMQERR01.LOG) na serveri Front Manager. Tieto denníky poskytujú podrobné informácie o zlyhaní autorizácie vrátane ID používateľa, prístupu k objektu a chýbajúcich povolení.
* z kódu aplikácie: Odmraznite kód aplikácie, aby ste určili, ako sa určuje ID používateľa, a odovzdáva sa na MQ.
* Process Process Explorer (Sysinternals): Použite Prieskumník procesu na identifikáciu kontextu používateľa, v ktorom je aplikácia spustená. Je to užitočné najmä pre služby alebo aplikácie prevádzkované na rôznych účtoch.
2. Oveďte povolenia na objekt MQ:
* pomocou `dspmqaut` (displej MQ autority): Tento príkaz je váš primárny nástroj. Spustite ho a zobrazte povolenia udelené konkrétnemu používateľovi alebo skupine na konkrétnom objekte MQ (Front Manager, Front, Channel atď.).
* Príklad:`DSPMQAUT -M QMGRNAME -T qmgr -p userID` (zobrazuje povolenia pre` userID` v správcovi frontu `qmgrName`)
* Príklad:`DSPMQAUT -M QMGRNAME -T front -n queuename -p userID` (zobrazuje povolenia pre` userID` vo fronte `queuename`)
* Príklad:`DSPMQAUT -M QMGRNAME -T Channel -n ChannelName -p userID` (zobrazuje povolenia pre` userID` na kanáli `channelName`)
* MQ Explorer (GUI): Môžete tiež zobraziť a upravovať povolenia objektov prostredníctvom GUI MQ Explorer (pravým tlačidlom myši na objekt, vyberte možnosť „Vlastnosti“, potom prejdite na kartu „Autority Records“).
3. Preskúmajte záznamy Chlauth:
* pomocou `dspmqchauth` (záznamy o autentifikácii kanála):
* Príklad:`DSPMQCHAUTH -M QMGRNAME -T CHLAUTH -N ChannelName` (zobrazuje všetky záznamy CHLAUTH pre kanál„ ChannelName`)
* MQ Explorer: Môžete tiež prezerať a spravovať záznamy CHLAUTH v GUI MQ Explorer (pravým tlačidlom myši na správcu frontu, vyberte „Vlastnosti“, potom prejdite na kartu „Záznamy autentifikácie kanálov“).
* Skontrolujte pravidlá blokovania: Vyhľadajte záznamy CHLAUTH, ktoré by mohli explicitne blokovať ID používateľa, IP adresu alebo názov klienta.
* overte `atribút McAuser`: Skontrolujte atribút „McAuser` na kanáli SVRConn. Je nastavený správne? Ak používa všeobecné ID používateľa, uistite sa, že ID používateľa má potrebné povolenia.
4. Grant povolenia (pomocou `setMqAut`):
* Po identifikácii chýbajúcich povolení použite príkaz `setMqaut` na udelenie.
* Príklad:`setMQAUT -M qmgrName -T qmgr -n +connect -g" doména \ groupName "` (Grants Connect Connect k správcovi frontu do zadanej skupiny domény)
* Príklad:`setMQAUT -M qmgrName -T front -n queuename -g" doména \ groupName " +get +put +browse` (granty get, put and Prejdite si povolenie do frontu do špecifikovanej skupiny domény)
In
5. Obnoviť bezpečnosť:
* Po vykonaní zmien v povolení objektov alebo záznamov CHLAUTH obnovte zabezpečenie vydaním príkazu:`Obnoviť typ zabezpečenia (CONDAUTH)„ pre zmeny autentifikácie pripojenia. Ak to nefunguje, skúste reštartovať správcu frontov.
6. zjednodušujte a otestujte:
* Test s `amqsputc` a` amqsgetc`: Na overenie základnej pripojenia a autorizácie použite vzorové programy `amqSputc` (na vloženie správy) a` amqsgetc` (na získanie správy). Sú vynikajúce na izoláciu problému. Spustite ich z toho istého servera ako MQ Server spočiatku. Ak to funguje, spustite ich z klientskeho stroja.
* Znížte zložitosť: Začnite s najjednoduchšou možnou konfiguráciou a postupne pridajte zložitosť. Napríklad sa spočiatku pripojte k správcovi frontov bez povoleného Chlauth, potom postupne pridajte a vylepšujte pravidlá Chlauth.
7. Poraďte sa s dokumentáciou a podporou IBM:
* IBM MQ Dokumentácia: Dokumentácia IBM MQ je vaším najlepším zdrojom podrobných informácií o autorizácii, Chlauth a ďalších bezpečnostných funkciách.
* ibm podpora: Ak ste stále uviaznutí, zvážte otvorenie prípadu podpory s IBM. Majú odborníkov, ktorí vám môžu pomôcť diagnostikovať a vyriešiť zložité problémy s povolením.
Kľúčové úvahy:
* skupiny vs. jednotlivých používateľov: Všeobecne je osvedčené postupy udeľovať povolenia skôr skupinám Windows ako jednotlivým používateľom. To uľahčuje správu, najmä vo väčších prostrediach.
* najmenej privilégium: Udeliť iba minimálne potrebné povolenia každému používateľovi alebo skupine.
* audit: Povoľte audit udalostí súvisiacich s bezpečnosťou, ktoré vám pomôžu sledovať zlyhania autorizácie a identifikovať potenciálne bezpečnostné problémy.
Systematickým dodržiavaním týchto krokov na riešenie problémov a starostlivým preskúmaním protokolov chýb a konfigurácie MQ by ste mali byť schopní diagnostikovať a vyriešiť chybu „nie je oprávnenou“ v prostredí IBM MQ. Nezabudnite, že presná identifikácia ID používateľa a dôkladné porozumenie zabezpečenia MQ zabezpečenia sú rozhodujúce pre úspech.