Jaké jsou vlastně postupy pro nasazování aplikací ve firmách, či korporacích? Jak se takové aplikace obvykle nastavují, nebo jaké možnosti nastavení správci uvítají?
Dnes jsem vysvětloval autorům skvělé aplikace Datovky od CZ.NIC jak to chodí v korporacích co se týče deploymentu jednotlivých aplikací. Jedná se o relativně rozsáhlé téma a v případě Datovky bylo třeba řešit celkem netradiční věci.
Jaké vlastnosti a funkce by měla mít, aby byla ideální pro hromadnou distribuci ve firemních sítích?
- Informace o produktu a verzi v souborech aplikace
- Digitální podpis souborů aplikace
- Podpora automatické bezobslužné instalace aplikace
- Podpora hromadné vynucené konfigurace nastavení aplikace
Informace o produktu a verzi v souborech aplikace
Aplikační soubory musí mít vyplněny informace o produktu a verzi. Všimněte si jak vypadá popiska u aplikace Datovka a jak u mé aplikace Programs and Updates Desktop. Jednoznačně lze určit autora aplikace a případně ověřit licenční podmínky. Pokud někdo soubor datovka.exe přejmenuje, můžete soubor detekovat jen s pomocí kontrolního součtu, což je poněkud nepraktické a vyžaduje to obvykle specializované nástroje.
Z těchto praktických důvodů by měly být vyplněna alespoň pole Popis souboru a verze souboru.
Digitální podpis souborů aplikace
Aplikační soubory by měly být digitálně podepsány uznávanou certifikační autoritou (z pohledu Windows). Proč? Minimálně ze základního bezpečnostního pohledu:
autor aplikace se ke své práci hlásí, pokud je digitální podpis v pořádku, aplikace není zavirovaná, nebo nějak pokoutně změněna, či poškozena. Pro firmy s větším počtem počítačů už má také smysl implementovat funkci AppLocker, která významně zvýší bezpečnost celé firemní sítě, tedy pokud budou všechny binární soubory digitálně podepsány.
Podpora automatické bezobslužné instalace aplikace
Pro hromadnou distribuci aplikace potřebují správci, aby aplikace podporovala hromadnou distribuci (instalaci). Pokud to aplikace neumí, musí si vytvořit distribuční balíček správce sám, což je u rozsáhlejších softwarových produktů složitější, v některých případech i takřka nemožné bez podpory autora software.
Proto by měla aplikace být dodána v podobě instalačního balíčku MSI. Případně jako nouzové řešení je, aby instalátor podporovat automatickou bezobslužnou instalaci, což typicky zvládne instalátor Inno Setup, alternativně i NSIS.
Podpora hromadné vynucené konfigurace nastavení aplikace
Aplikace by měla podporovat centrální konfiguraci skrze Group Policy, případně skrze nastavení Windows registry, nebo s pomocí konfiguračního souboru, který vynucuje některá nastavení uživatelům.
Někoho napadne, že toto již aplikace přece umí, ano umí, ale z pohledu nastavení pro jednotlivé uživatele. Pro správce je nutné mít možnost definovat určitá nastavení, která mají vyšší prioritu než uživatelská nastavení a dá jim přednost.
Typické je toto pro zákaz upozornění na novou verzi aplikace. Je to typická funkce, kterou všichni správci zakazují. V podnikové síti totiž uživatelé nemají práva správce a tak jakékoli upozornění na novou verzi pak skončí selháním spuštění aktualizace. Jsou samozřejmě vyjímky, kde autoři aplikace počítají a umožňují aktualizaci aplikace uživatelům s omezenými právy, což však v korporacích kde je vše sladěno není žádoucí, takže i proto je třeba tyto upozornění zakázat 🙂
Pro představu jak lze vynutit chování bez ohledu na nastavení uživatele může sloužit aplikace Greenshot. Vynucené nastavení aplikace lze vyvolat konfiguračním souborem greenshot-fixed.ini. Stejný princip je umožněn také u aplikace KeePass.