Zabezpečenie aplikácie Azure Function má prístup do galérie PowerShell Gallery zahŕňa niekoľko krokov, najmä pri riešení veľkých alebo často aktualizovaných modulov. Takto to môžete zvládnuť:
1. Povoľte spravované závislosti: V predvolenom nastavení si funkcie Azure môžu automaticky sťahovať a spravovať moduly PowerShell uvedené v súbore `požiadavky.psd1`. Je to vhodné, ale môže spôsobiť problémy, ak je galéria PowerShell nedosiahnuteľná alebo ak sú moduly príliš veľké na stiahnutie v období časového limitu [3] [5].
2. Zadajte moduly v `požiadavky.psd1`: Ak sa rozhodnete používať spravované závislosti, uveďte požadované moduly v súbore` požiadavky.psd1`. Napríklad na použitie modulu AZ, v súbore zabaliť riadok `'az' = '13.*'` [9].
3. Predpätie veľké moduly: Pre veľké moduly alebo pri používaní plánu spotreby je lepšie ich predbehnúť do úložiska vašej funkčnej aplikácie. Zahŕňa to lokálne sťahovanie modulu, jeho komprimovanie a jeho odovzdanie do adresára `wwwroot \ modules` vo vašej funkčnej aplikácii [1] [3].
4. Konfigurujte `host.json`: Uistite sa, že„ managedDependency` je nastavený na `false` v` host.json`, ak manuálne nahráte moduly. Tým sa zabráni automatickej aplikácii funkcie v pokuse o sťahovanie modulov [1].
5. UPDATE `Profile.ps1`: Upravte súbor` Profile.ps1` tak, aby zahrnul cestu vlastného modulu do `$ env: psModuLePath`. To zaisťuje, že vaše manuálne nahrané moduly sú zistené spoločnosťou PowerShell [1].
6. Skontrolujte prístup k sieti: Uistite sa, že vaša funkcia má prístup do galérie PowerShell kontrolou jej nastavení siete. Ak obmedzíte prístup verejnosti, uistite sa, že IP adresa vašej funkčnej aplikácie sa môže dostať do galérie [1].
Podľa týchto krokov môžete zabezpečiť, aby vaša aplikácia Azure Function má spoľahlivý prístup do galérie PowerShell a efektívne spravuje veľké alebo kritické moduly.
Citácie:
[1] https://digitalmaterial.ch/blog/azure-function-app-with-large-powershell-modules/
[2] https://practical365.com/how-to-use-internal-powershell-gallery-app/
[3] https://support.cloudradial.com/hc/en-us/articles/23642455028884-installing-powershell-modules-in-in-azure-functions
[4] https://learn.microsoft.com/en-us/azure/azure-functions/functions-app-settings
[5] https://about-powershell.com/blog/azure-functions-fails-wen-powershell-gallery-is-not-tareable-reachable-powershell-worker-Runtime/
[6] https://pnp.github.io/powershell/articles/azurefunctions.html
[7] https://techcommunity.microsoft.com/blog/appsonazureblog/steps-to-manuly-add-powershell-modules--function-app/4163463
[8] https://laurakokkarinen.com/how-to-use-pnp-powershell-on-azure-functions-with-application-permissions/
[9] https://dev.to/rokicool/azure-function-appflex-consumption-powershell-modules-solution-1hfg