Każde rozwiązanie informatyczne po wdrożeniu wymaga bardziej lub mniej skomplikowanego utrzymania, w którego zakres mogą wchodzić zadania związane z raportowaniem, inwestygowaniem problemów użytkowników itp. Do tego dochodzą zadania związane z innymi procesami - np. raportowanie dla zespołu sprzedaży - czy zmianami konfiguracji i nastaw systemu.
Zadania tego typu często pozostają w "szarej strefie" - nie są przewidywane na etapie projektowania systemu, a realizowane bywają "od zaplecza" poprzez manualne prace na bazie danych, ręczne podmiany plików na serwerach itp.
Gdzieś pomiędzy takim "partyzanckimi" metodami, a rozbudowanymi i kosztownymi, pełnoprawnymi zapleczami backoffice'owymi leży coś, co może (w mojej ocenie) być ciekawym kompromisem pomiędzy bezpieczeństwem, kosztem wytworzenia, użytecznością i - jako bonus - możliwością przyszłej automatyzacji.
Chodzi mi tutaj dokładnie o CLI - z ang. Command Line Interface, czyli poprostu narzędzia linii komend.
Zalety rozwiązania
Narzędzia takie posiadają niepodważalną zaletę - są zrozumiałem zarówno dla komputera, co umożliwia automatyzację operacji, jak i człowieka.
Dodatkowo są stosunkowo tanie w wytworzeniu dzięki możliwości zastosowania dedykowanych bibliotek np. Spectre.Console.
Poniższa galeria przedstawia przykładowe zastosowanie wspomnianej biblioteki - przystawki administracyjnej do projektu C2W, o którym pisałem w sekcji case-study.
Wady rozwiązania
Niestety, rozwiązanie takie ma też pewne wady.
Główną z nich jest konieczność dostępu użytkownika takiego narzędzia do pulpitu (Windows) lub terminala (Unix) serwera, na którym zainstalowane jest narzędzie lub przepuszczenie ruchu sieciowego do komponentów Systemu, jeśli rozwiązanie miałoby być instalowane na komputerach użytkowników. Komplikuje to niestety kwestie zabezpieczenia systemu oraz zawęża listę potencjalnych grup użytkowników takiego rozwiązania np. do administratorów.
Istnieją narzędzia umożliwiające dostęp z poziomu przeglądarki - przez co ograniczające wyzwania dla bezpieczeństwa - np. Apache Guacamole, jednak odbywa się to kosztem komplikacji całego rozwiązania.