Konfiguracja IIS: Różnice pomiędzy wersjami

 
(Nie pokazano 48 wersji utworzonych przez 2 użytkowników)
Linia 1: Linia 1:
Dokument zawiera opis konfiguracji serwera usług internetowych - [https://www.iis.net/ Internet Information Services (IIS)]. Z IIS korzystamy m.in. w celu uruchomienia aplikacji [[:Kategoria:eAdmin|eAdmin]] oraz [[:Kategoria:ePodatki|ePodatki]].
Dokument zawiera opis konfiguracji serwera usług internetowych - [https://www.iis.net/ Internet Information Services (IIS)]. Z IIS korzystamy m.in. w celu uruchomienia aplikacji [[:Kategoria:eAdmin|eAdmin]], [[:Kategoria:eWizja|eWizja]] oraz [[:Kategoria:ePodatki|ePodatki]].


{{Uwaga}}
{{Uwaga}}
Linia 67: Linia 67:
{{Uwaga}} Jeśli nasz certyfikat SSL nie został wystawiony przez zaufanego wystawce niezbędne będzie dodanie w przeglądarce wyjątku aby uruchomić aplikację.
{{Uwaga}} Jeśli nasz certyfikat SSL nie został wystawiony przez zaufanego wystawce niezbędne będzie dodanie w przeglądarce wyjątku aby uruchomić aplikację.


===Szyfrowanie pliku konfiguracyjnego===
[[Plik:Konfiguracja iis ustawienia protokolu ssl.png|ramka|brak|Ustawienia protokołu SSL]]
Aplikacje przechowują dane konfiguracyjne w pliku ''Web.config'' w postaci niezaszyfrowanej. Zalecamy zaszyfrowanie sekcji zawierającej dane wrażliwe. Do szyfrowania używamy narzędzia ASP.NET IIS Registration Tool (Aspnet_regiis.exe).


Narzędzie '''aspnet_regiis.exe''' znajduje się w katalogu ''%windows%\Microsoft.NET\Framework\<wersja_.net_framework>''
==Usługa sieciowa Finn==
===Wymagane biblioteki===
Do działania aplikacji niezbędne jest doinstalowanie bibliotek umożliwiających uruchamianie w systemie Windows aplikacji stworzonych przy pomocy narzędzi programistycznych firmy Microsoft:
*'''.NET Framework w wersji 4.6.2''' lub wyższej ([https://www.microsoft.com/net/download/dotnet-framework-runtime do pobrania ze strony Microsoft]),
*'''Microsoft Visual C++ 2017 Redistributable''' w [https://aka.ms/vs/15/release/vc_redist.x86.exe wersji x86] (wersja x86 i x64 mogą być zainstalowane równolegle).


Aby zaszyfrować wybrane sekcje postępujemy kolejno:
===Usługi WCF===
#Uruchamiamy jako administrator '''Wiersz polecenia''' (''cmd.exe'').
Do poprawnego działania usługi wymagane jest aktywowanie dodatkowej funkcji systemu Windows: ''.NET Framework 4.x > Usługi WCF > Aktywacja HTTP''.
#Przechodzimy do katalogu w którym znajduje się narzędzie ASP.NET IIS Registration Tool służące do szyfrowania.
cd C:\Windows\Microsoft.NET\Framework\v4.0.30319


====Szyfrowanie====
[[Plik:IIS Uslugi WCF Aktywacja HTTP.png|brak|ramka|.NET Framework 4.x > Usługi WCF > Aktywacja HTTP]]
Schemat:
aspnet_regiis -pe "<nazwa_sekcji>" -app "/<folder_aplikacji>" -prov "RsaProtectedConfigurationProvider"


Przykład:
===Dodawanie nowej witryny do IIS===
aspnet_regiis -pe "connectionStrings" -app "/eWizja" -prov "RsaProtectedConfigurationProvider"
#Wypakowujemy pliki usługi sieciowej do wybranej lokalizacji, np. ''C:\inetpub\FinnServiceClient'' (ścieżka domyślna witryn IIS to ''C:\inetpub\<katalog_aplikacji>'').
#Dodajemy nową witrynę w IIS:
##Uruchamiamy [[Konfiguracja IIS#Menedżer internetowych usług informacyjnych (IIS)|Menedżer internetowych usług informacyjnych (IIS)]] > w sekcji ''Połączenia'' (lewa strona) klikamy PPM > wybieramy ''Dodaj witrynę sieci Web''.[[Plik:Konfiguracja IIS Dodawanie witryny.png|brak|ramka|Menedżer internetowych usług informacyjnych > Dodaj witrynę sieci Web]]
##Pole ''Nazwa witryny'' uzupełniamy dowolną nazwą, np. ''FinnServiceClient''. ''Ścieżka fizyczna'' to lokalizacja folderu, do którego wypakowaliśmy pliki usługi sieciowej ''FinnServiceClient''.[[Plik:IIS FinnServiceClient.png|brak|ramka|Dodawanie witryny sieci Web]]
##W sekcji ''Powiązanie'' typ połączenia zmieniamy na ''https'', ''Port'' ustawiamy na 44316, a następnie wybieramy nasz ''Certyfikat SSL''.
##Zatwierdzamy klikając na przycisk ''OK''.
====Powiązania / Porty====
Aby usługa działała musimy prawidłowo ustawić numery portów powiązanych z usługą w IIS.
 
[[Plik:IIS FinnServiceClient porty.png|brak|ramka|Porty zdefiniowane w pliku Web.config]]


Efekt:
We wcześniejszym kroku ustawiliśmy już port ''44316'' dla ''https'', pozostało nam ustawić port ''55852'' dla protokołu ''http''. W tym celu w [[Konfiguracja IIS#Menedżer internetowych usług informacyjnych (IIS)|''Menedżerze internetowych usług informacyjnych'']] wchodzimy w dodaną witrynę. Z prawej strony okna, w sekcji ''Akcje'' klikamy na opcje ''Powiązania''. Dodajemy tam nowe powiązanie, w którym ''Typ'' to ''http'', a ''Port'' to ''55852''.
<syntaxhighlight lang="xml" style="border:3px dashed blue">
<connectionStrings configProtectionProvider="RsaProtectedConfigurationProvider">
<EncryptedData Type="http://www.w3.org/2001/04/xmlenc#Element" xmlns="http://www.w3.org/2001/04/xmlenc#">
<EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#tripledes-cbc" />
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
<EncryptedKey xmlns="http://www.w3.org/2001/04/xmlenc#">
<EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-1_5" />
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
<KeyName>Rsa Key</KeyName>
</KeyInfo>
<CipherData>
<CipherValue>LyUdnmEgyetq9stzQizLkEiFfngcuxRZeNacsU0iHoKHyEvH40CIUiuv4I67DBT/Obf3yX9R6DZv42koMiHKSp7P4d3tE84nUVtAp8sdXgLnCh4ou9cx1Pbrzmbu/TXzHVOq2UsAh74hW0ULCKGjNfYvQiwHRJ1AZ3b5PHXA0uO6nI2vjZWH4t0LF2edd5zjSqtJRNvfmQoBBh7OSd5ZVyjGjJAftONsfah2Ffzepa4pjp1umWWUqLPROXrbujGP4DuLfbLvp1pt5O/y0zAypG3Z5ArCjlcGomLSn74qjLUCB1FcoZW9BQlb8U7jEhBNqg87sagoG1QgcmK4tbFvOg==</CipherValue>
</CipherData>
</EncryptedKey>
</KeyInfo>
<CipherData>
<CipherValue>zuubyHkocmWvRdBiKk5jYhRdnziOmYMIiS55dR/rHa7dRZzdwBOZeKitl59RguJlDlJyuAkuFfHIDZwkEzFHbzZzWRQn+aBogyhsRrfhAskq/cQwLN0zelWeDM8+GLn4Qjpgh8VB6OODBK7L/e/hKYML3stS9xcccAPv3ycMTkx18VFWOWDtUQEWN3iUBnO51l/9EgONlUmKKizlusoCAG9OYuVIlVOHGnOKkaojDGoseCuerF4hEks4z7GeVM6ynbP6AQHn38BUCtA2fYl8irLoWFD+KUwqmzWdmRJuuvhZs5D8Eo8Q9cIuPZO1kxNIq97FdxNErz1jO4m10mioWZdkLWGdNIV2lc39aeCmBt8xVcMTVZQCnBP4h1uhUgEf3arfPqmuliDPsewBpTfo9sGeNKZuiqVJcJwxb8baiSPBomJLZBvQRCMLo4HlqRiY7+Ifd8h0vI6DutN1OsF3V0hBuX+jQQGsYg19K4eschppdjdAaUeXfg==</CipherValue>
</CipherData>
</EncryptedData>
</connectionStrings>
</syntaxhighlight>


====Odszyfrowanie====
[[Plik:IIS FinnServiceClient powiazania.png|brak|ramka|Witryna FinnServiceClient > Powiązania]]
Schemat:
aspnet_regiis -pd "<nazwa_sekcji<" -app "/<folder_aplikacji>"


Przykład:
===Web.config - parametry===
aspnet_regiis -pd "connectionStrings" -app "/eWizja"
Edytując plik ''Web.config'' ustawiamy parametry usługi sieciowej.


Efekt:
====connectionStrings====
<syntaxhighlight lang="xml" style="border:3px dashed blue">
W sekcji ''connectionStrings'' podajemy ścieżkę bazy danych oraz nazwę użytkownika i hasło dostępu. Możemy również aktywować zapisywanie logów.
<syntaxhighlight lang="xml">
<connectionStrings>
<connectionStrings>
<add name="FbAuthConnection" connectionString="User=nazwa_uzytkownika;Password=trudne_haslo;Database=D:\Bazy\is_wizja.gdb;DataSource=localhost;Port=3050;Dialect=3;Charset=NONE;Role=;Connection lifetime=15;Pooling=true;MinPoolSize=0;MaxPoolSize=50;Packet Size=8192;ServerType=0;"
<add name="FbConnection" connectionString="User=SYSDBA;Password=masterkey;Database=D:\Baza_danych\is_pdk.GDB;DataSource=localhost;Port=3050;Dialect=3;Charset=NONE;Role=;Connection lifetime=15;Pooling=true;MinPoolSize=0;MaxPoolSize=50;Packet Size=8192;ServerType=0;" providerName="FirebirdSql.Data.FirebirdClient" />
providerName="FirebirdSql.Data.FirebirdClient" />
<add name="FbSecure" connectionString="true" />
<add name="LogFile" connectionString="C:\inetpub\FinnSoapService\log\Log.txt" />
<add name="Log" connectionString="true" />
</connectionStrings>
</connectionStrings>
</syntaxhighlight>
</syntaxhighlight>
{{Uwaga}} Zapisywanie logów w pliku Log.txt wymaga nadanie uprawnień do zapisu dla folderu ''log'' dla użytkownika ''IIS_WPG''.


==eAdmin==
====Rozmiar przesyłanych plików====
{{Uwaga}} ''eAdmin'' do poprawnego działania wymagane są: '''64-bitowy system operacyjny''', '''.Net Framework''' w wersji 4.6.2 lub wyższej oraz '''MS C++ Redistributable''' (wersja min. 2015).
Sekcja ''bindings'' określa maksymalny rozmiar pliku, który może zostać przesłany.
 
<syntaxhighlight lang="xml">
#Pobieramy ze strony [https://groszek.pl groszek.pl] aktualną wersje programu ''eAdmin''.
<bindings>
#Wypakowujemy pliki aplikacji do wybranej lokalizacji, zalecamy ''C:\inetpub\eAdmin'' (ścieżka domyślna witryn IIS to ''C:\inetpub\<katalog_aplikacji>'').
<basicHttpBinding>
#Do [[Konfiguracja IIS#Dodawanie nowej witryny|wcześniej utworzonej witryny]] dodajemy aplikację.
<binding maxReceivedMessageSize="300485760">
##Uruchamiamy [[Konfiguracja IIS#Menedżer internetowych usług informacyjnych (IIS)|Menedżer internetowych usług informacyjnych (IIS)]] > w sekcji ''Połączenia'' (lewa strona) klikamy PPM na utworzonej wcześniej witrynie > wybieramy ''Dodaj aplikację...''.[[Plik:Konfiguracja IIS Dodawanie aplikacji.png|brak|ramka|Menedżer internetowych usług informacyjnych > Dodaj witrynę sieci Web]]
</binding>
##Pole ''Alias'' uzupełniamy dowolną nazwą, np. eAdmin. ''Ścieżka fizyczna'' to lokalizacja folderu, do którego wypakowaliśmy pliki aplikacji ''eAdmin''.[[Plik:Konfiguracja IIS Dodawanie aplikacji eAdmin.png|brak|ramka|Dodawanie witryny sieci Web]]
</basicHttpBinding>
##Zatwierdzamy klikając na przycisk ''OK''.
<basicHttpsBinding>
#W pliku ''Admin.xml'' podajemy ścieżkę oraz dane dostępowe do bazy danych ([[Wzorcowy plik XML]]).
<binding maxReceivedMessageSize="300485760">
#Możemy edytować również plik ''Aktualizacje.xml'', jednak można to zrobić później z poziomu aplikacji eAdmin - opis na stronie [[eAdmin instrukcja#Aktualizacje]].
</binding>
#Dodajemy uprawnienia modyfikacji dla grupy ''Użytkownicy'' do plików: ''AdminErrors.txt'', ''Aktualizacje.xml'', ''BackupPaths.xml'' oraz folderu ''/Downloads''.[[Plik:Konfiguracja IIS Dodawanie witryny WebAdmin uprawnienia.png|brak|ramka|Uprawnienia modyfikacji dla grupy ''Użytkownicy'']]
</basicHttpsBinding>
 
</bindings>  
Po wykonaniu powyższych czynności aplikacja ''eAdmin'' powinna poprawnie działać pod adresem http://localhost/eadmin. Domyślne dane do logowania do aplikacji eAdmin to:
</syntaxhighlight>
login: admin
pass: admin
Zmienić je możemy poprzez kliknięcie w nazwę konta w prawym górnym rogu aplikacji i wybraniu opcji ''Zmień swój login'' i ''Zmień swoje hasło''.
W zakładce ''Zarządzanie użytkownikami'' możemy dodawać innych administratorów i zarządzać ich uprawnieniami. Uprawnienie ''Admin'' to uprawnienie o najwyższym poziomie, pozwala na korzystanie ze wszystkich funkcji jakie daje aplikacja ''eAdmin''.
 
==ePodatki Usługa Internetowa==
===Dodanie witryny ePodatki w IIS===
#Pobieramy ze strony [https://groszek.pl groszek.pl] aktualną wersję programu ''ePodatkiUI'' (Usługa Internetowa).
#Wypakowujemy pliki aplikacji do wybranej lokalizacji, zalecamy ''C:\inetpub\ePodatkiUI'' (ścieżka domyślna witryn IIS to ''C:\inetpub\<katalog_aplikacji>'').
#Dodajemy nową witrynę w IIS.
##Uruchamiamy [[Konfiguracja IIS#Menedżer internetowych usług informacyjnych (IIS)|Menedżer internetowych usług informacyjnych (IIS)]] > w sekcji ''Połączenia'' (lewa strona) klikamy PPM > wybieramy ''Dodaj witrynę sieci Web''.[[Plik:Konfiguracja IIS Dodawanie witryny.png|brak|ramka|Menedżer internetowych usług informacyjnych > Dodaj witrynę sieci Web]]
##Pole ''Nazwa witryny'' uzupełniamy dowolną nazwą, np. ePodatkiUI. ''Ścieżka fizyczna'' to lokalizacja folderu, do którego wypakowaliśmy pliki aplikacji ''ePodatkiUI''.[[Plik:Konfiguracja IIS Dodawanie witryny ePodatkiUI.png|brak|ramka|Dodawanie witryny sieci Web]]
##Zatwierdzamy klikając na przycisk ''OK''.
 
====Ogranicznie ISAPI i CGI====
 
Klikamy przycisk ''Dodaj'' i dodajemy ścieżkę do pliku wykonywalnego dla naszej witryny.
 
[[File:windows_iis_ograniczenia_uprawnienie_cgi_dll.png|400px]]


{{Uwaga}}
===Status usługi sieciowej===
:''ePodatkiUI'' może być wykonywana przez serwer IIS jako plik ''exe'' (obsługuje wolno żądania) lub jako biblioteka ładowana dynamicznie ''dll'' (obsługuje więcej żądań i szybciej).
Status usługi sieciowej możemy sprawdzić wchodząc na stronę https://localhost:44316/BrokerWebService.svc, jeśli wyświetli się strona jak na obrazku poniżej oznacza to, że usługa działa prawidłowo.
:W celu obsługi jako dll, wybieramy plik ''ServInfoSysISAPI.dll'' z podkatalogu ''isapi''.


====Uprawnienia do katalogu====
[[Plik:FinnWebService Usługa.png|brak|thumb|Działająca usługa FinnServiceClient]]
 
Katalog z aplikacją ePodatkiUI powinien posiadać dodane odpowiednie uprawnienia. Klikamy PPM na katalogu, następnie zakładka ''Zabezpieczenia'', klikamy ''Dodaj'':
* Klikamy ''Typy obiektów'', zaznaczamy ''Konta usług'', i ''OK'',
* Wprowadzamy nazwę  ''IIS_WPG'' (dla innych wersji systemu Windows, nazwa użytkownika może się różnić. Jeśli korzystamy z innej wersji systemu, zalecamy wpisać ''IIS'' i zobaczyć wyniki wyszukiwania. Np. dla Windows 7 nazwa użytkownika będzie: ''IIS_IUSRS'') w pole ''Wprowadź nazwy obiektów do wybrania i dodajemy'', szukamy i dodajemy.
[[File: windows_okno_uprawnienia_katalogu_iis.png|400px]]
* Dodajemy użytkownika ''IIS_WPG'',
* W/w użytkownikowi ustawiamy ''Modyfikacja'' na ''Zezwalaj''.
 
====mapowanie obsługi====
====dodanie dozwolonych rozszerzeń pliku (''.exe'', ''.xml'')====
 
===ePodatkiUI (Usługa Internetowa) - konfiguracja===
Instrukcja wstępnej konfiguracji aplikacji ''ePodatki'' jest dostępna na stronie [[EPodatki konfiguracja]].
 
===ePodatkiRO (Rejestr Osób) - konfiguracja===
Aplikacja ''RejestrOsb.exe'' służy do zarządzania użytkownikami aplikacji ''ePodatki'', jej szerszy opis znajdziemy na stronie [[ePodatki Rejestr Użytkowników]].
 
==eWizja==
#Pobieramy ze strony [https://groszek.pl groszek.pl] aktualną wersje programu ''eWizja''.
#Wypakowujemy pliki aplikacji do wybranej lokalizacji, zalecamy ''C:\inetpub\eWizja'' (ścieżka domyślna witryn IIS to ''C:\inetpub\<katalog_aplikacji>'').
#Do [[Konfiguracja IIS#Dodawanie nowej witryny|wcześniej utworzonej witryny]] dodajemy aplikację.
##Uruchamiamy [[Konfiguracja IIS#Menedżer internetowych usług informacyjnych (IIS)|Menedżer internetowych usług informacyjnych (IIS)]] > w sekcji ''Połączenia'' (lewa strona) klikamy PPM na utworzonej wcześniej witrynie > wybieramy ''Dodaj aplikację...''.[[Plik:Konfiguracja IIS Dodawanie aplikacji.png|brak|ramka|Menedżer internetowych usług informacyjnych > Dodaj witrynę sieci Web]]
##Pole ''Alias'' uzupełniamy dowolną nazwą, np. eWizja. ''Ścieżka fizyczna'' to lokalizacja folderu, do którego wypakowaliśmy pliki aplikacji ''eWizja''.[[Plik:Konfiguracja IIS Dodawanie aplikacji eAdmin.png|brak|ramka|Dodawanie witryny sieci Web]]
##Zatwierdzamy klikając na przycisk ''OK''.
#W pliku ''Web.config'' podajemy ścieżkę oraz dane dostępowe do bazy danych (''Configuration'' > ''connectionStrings''; zmieniamy ''database'' i ''datasource'', ew. Port).


Po wykonaniu powyższych czynności aplikacja eWizja powinna poprawnie działać. Logowanie odbywa się z wykorzystaniem danych logowania z aplikacji Wizja. Administrator powinien poszczególnym operatorom przydzielić dostęp do wybranych komórek organizacyjnych korzystając ze słownika w aplikacji Wizja:
===Konfiguracja po stronie Podatków===
Konfiguracja > Słowniki roczne > Dostęp użytkowników do komórek organizacyjnych
Pozostaje skonfigurować EOB w aplikacji ''Podatki'', opis znajduje się na stronie [[ViDok konfiguracja obiegu dokumentów#Finn]].


[[Kategoria:eAdmin]]
[[Category:ePodatki]]
[[Kategoria:eWizja]]
[[Category:Aneks]]
[[Category:Aneks]]
[[Kategoria:IIS]]
[[Kategoria: Metadane produkty]]