Opisywany w tym artykule sposób konfiguracji danej funkcjonalności wymaga szerokiej wiedzy z zakresu administracji serwerami opartymi o system Windows Server. Jeśli opisane tutaj czynności nie są zrozumiałe lub napotkany został problem podczas konfiguracji, prosimy o zwrócenie się do działu wdrożeń w celu przeprowadzenia profesjonalnej i poprawnej konfiguracji.
Przed przystąpieniem do konfiguracji należy upewnić się, że spełnione zostały wszystkie wymagania. Aby automatyczne logowanie działało poprawnie:
Użytkownicy muszą logować się do systemu eDokumenty dzięki autoryzacji domenowej, czyli Active Directory.
Użytkownicy logują się do swoich stacji roboczych wykorzystując domenę.
Na kontrolerze domeny musi być uruchomiony serwer IIS, port jest dowolny.
Kontroler domeny oraz serwer eDokumentów muszą mieć dostęp do siebie nawzajem.
Z katalogu /var/tpl (Panel sterowania > Szablony systemowe) należy skopiować plik sso.aspx.tpl do katalogu na serwerze IIS, zmieniając mu nazwę na sso.aspx lub inną (nazwa sso.aspx zostanie używa w dalsze części instrukcji). Plik ten musi być dostępny z zewnątrz poprzez protokół HTTP lub HTTPS.
Następnie należy wyłączyć anonimowy dostęp do pliku sso.aspx i wymusić autoryzację NTLM podczas dostępu do niego.
http://technet.microsoft.com/pl-pl/library/cc754628%28v=ws.10%29.aspx
W pliku config.inc należy ustawić pewne stałe.
EXT_ACTIONS_ENGINE_URL - Adres główny systemu eDokumenty z kończącym slashem, np. http://mojafirma.biznes.biz/edokumenty/
SSO_REMOTE_SERVICE - Pełny adres do pliku sso.aspx, np. http://domena.firma/sso.aspx
SSO_SALT - Losowy ciąg znaków który dodatkowo zabezpieczy system logowania, np. abcd1234
SSO_LOGIN_ENABLED - Na tym etapie konfiguracji należy zostawić wartość FALSE aby nie zaburzyć działania systemu.
EDOK_API_LOGIN - Login, który umożliwi zalogowanie do API, dowolny.
EDOK_API_PASSWORD - Hasło do API, dowolne.
Należy otworzyć plik sso.aspx w edytorze tekstu w trybie UTF-8 bez BOM - np. w darmowym Notepad++.
Następnie znajdujemy deklarację zmiennych api_user, api_pass, api_host, entity oraz salt i ustawiamy je na poprawne wartości. Opis zmiennych:
api_host - Pełny adres do pliku eDokumentyApi.php, np. http://serwer/edokumenty/eDokumentyApi.php
api_user - użytkownik API, taki sam jak w config.inc
api_pass - Suma md5 hasła EDOK_API_PASSWORD generowanego przy pomocy md5 oraz solenie jej i ponowne liczenie sumy. Pseudokod generujący sumę:
md5(md5('HASLO').'_SOAP_eDok_api');
entity - Symbol jednostki organizacyjnej, np. beta
salt - Wartość soli, czyli wartość SSO_SALT z config.inc
Aby uruchomić logowanie automatyczne należy w pliku config.inc systemu eDokumenty zmienić wartość stałej SSO_LOGIN_ENABLED na TRUE.
Aby wyłączyć - wystarczy ustawić na FALSE.
Uwaga: zmiany są natychmiastowe.
Należy otworzyć stronę about:config, w wyszukiwarce wpisać ntlm-auth.trust, następnie podwójnie kliknąć na network.automatic-ntlm-auth.trusted-uris i po przecinku wpisać adres zarówno systemu eDokumenty jak i serwera IIS. Przykład: http://moja.firma.biz/,http://kontroler.firma/
W systemie Windows należy otworzyć komponent Opcje internetowe, przejść na zakładkę Zabezpieczenia, kliknąć przycisk Poziom niestandardowy i na dole listy, w sekcji Uwierzytelnianie użytkownika wybrać opcję Zaloguj automatycznie z bieżącą nazwą użytkownika i hasłem i zaakceptować przyciskiem OK. Następnie kliknąć na Zaufane witryny w górnej części okna, następnie na przycisk Witryny, a następnie dodać do listy adres serwera eDokumenty jak i serwera IIS.