MacOS - Podpisywanie na stronie

Podziękowanie

Stworzenie poniższej instrukcji nie było by możliwe, gdyby nie skrypty udostępnione przez foxlet, pozwiliły mi one na przygotowanie systemu testowego z MacOS.

Środowisko

Wersja systemu

Testowałem uruchomienie na systemie Mojave (10.14.4).

Java

Podpisywanie dokumentów wykonywane jest przez komponent uruchamiany w Javie w wersji 8. Java dostępna na stronach firmy Oracle ma licencję zezwalającą na wykorzystywanie jej do użytku prywatnego i tworzenia oprogramowania. Z tego powodu zainstalowałem Javę ze strony firmy Azul.

Firefox

Komponent Szafir SDK współpracuje z przeglągarkami Firefox i Chrome, ja testowałem na przeglądarce Firefox pobranej ze strony fundacji Mozilla.

Instalacja komponentu szafir.

Po zainstalowaniu Javy i Firefoxa, uruchamiam Firefoxa i otwieram stronę GIIF. Instalacja zacznie się przy próbie podpisania pierwszego dokumentu, najprostszym dokumentem jaki można przygotować na stronie, jest żądanie rejestracji o rejestracji certyfikatu. Nie będę wysyłał tego żądania, ale muszę podać numer mający poprawną sumę kontrolną numeru NIP, użyję numeru 0123456789.

Instalacja rozszerzenia

Po kliknięciu „Podpisz i wyślij” pojawi się dialog instalacji rozszerzenia.

Następnie Firefox będzie upewniał się, że na pewno chcemy zainstalować to rozszerzenie.

I w końcu pokaże się informacja o dodaniu rozszerzenia.

Instalacja SzafirHost

Wracamy na stronę GIIF i ponawiamy żądanie dodania certyfikatu.

Tym razem pojawi się dialog proponujący instalację programu SzafirHost.

Tutaj wybieramy „Pobierz Szafir Host dla Linux/OSX” i zapisujemy do folderu Downloads.

Niestety przy próbie instalacji pobranego pliku czeka nas przykra niespodzianka, system nie dopuszcza instalacji niepodpisanych programów.

Obejście problemu niepodpisanego instalatora

Na szczęście poniższy problem możemy obejść, w tym celu uruchamiamy terminal.

I wydajemy kilka komend.

Komenty do kolejno:

1
java -version

Sprawdza, którą wersję Javy mamy zainstalowaną. Jeżeli jest to wersja 1.8.0_xxx to możemy przejść dalej w przeciwnym wypadku trzeba zainstalować Javę.

1
cd

Zmienia katalog roboczy na katalog domowy użytkownika.

1
ls

Wyśwetla pliki i katalogi użytkownika, jeden z nich powinien mieć nazwę Downloads. Jeśli nie to poszukaj katalogu o zbliżonej nazwie (może Pobrane).

1
cd Downloads

Zmienia katalog roboczy na katalog Downloads.

1
ls *.jar

Wyświetla wszystkie pliki o nazwie kończącej się na .jar w katalogu roboczym (Downloads). Wśród nich powinien znajdować się szafirhost-install.jar

1
shasum szafirhost-install.jar

Oblicza sumę kontrolną pliku szafirhost-install.jar, dla wersji 1.0.7 aktualnej w chwili przygotowania tego dokumentu było to: 633ef3819285f85beb0068bca1adc4de5f7d96c1. Jeśli suma kontrolna jest inna, to skontaktuj się z GIIFem aby upewnić się, czy zmiana jest celowa, czy też padłeś ofiarą wirusa.

1
java -jar szafirhost-install.jar

Uruchamia instalator szafirhost-install.jar.

Po uruchomieniu na konsoli pojawi się kilka mało istotnych wyjątków, ale na ekranie powinien pojawić się poniższy dialog.

Instalator SzafirHost

Po przeklikaniu się przez EULA (End User License Agreement) dochodzimy do wyboru katalogu docelowe, który pozostawiamy bez zmian.

Pozostawiamy katalog /Applications/SzafirHost i przechodzimy dalej. Następnie okienko potwierdzenia katalogu docelowego.

Jeszcze wybór składników instalacji w którym nic nie zmieniamy.

Teraz właściwa instalacja.

I zakończenie instlacji.

Uruchomienie podpisywania

Wracamy na stronę GIIF i ponawiamy żądanie dodania certyfikatu.

Tym razem powinno pojawić się okno pobierania komponentów SzafirSDK.

Komponenty zostaną pobrane do katalogu tymczasowego. Następnie pojawi się okienko podpisu.

Po wybraniu „Sign” lub „Podpisz” pokaże się pytanie o PIN.

Po podaniu PIN pojawi się potwierdzenie prawidłowego podpisania.

Kliknięcie na „Finish” lub „Zakończ” zwraca podpisany dokument do przeglądarki, a ta wysyła dokument to GIIFa.

Powyższy błąd jest oczekiwany, NIP użyty do testów jest fikcyjny, a w systemie produkcyjnym nie ma instytucji o takim NIPie.