Konfigurace (KS webAPI): Porovnání verzí
| (Není zobrazeno 9 mezilehlých verzí od 3 dalších uživatelů.) | |||
| Řádek 1: | Řádek 1: | ||
'' | Základní konfigurace webové služby ''KS webAPI'' se provádí v konfiguračním souboru ''ASServer.exe.config'', který je součástí Windows služby [[KS aplikační server]] (AS). V tomto souboru se nastavuje transportní protokol (HTTP/HTTPS), komunikační protokol (SOAP/REST), adresa webové služby (Endpoint), certifikát pro zabezpečení komunikace, atd. Toto nastavení je potřeba pro zpřístupnění webové služby klientské aplikaci. | ||
Nastavení uživatelských účtů a oprávnění k přenášeným údajům se nastavuje v aplikaci [[AS Seance Manager]] (ASSM). | |||
== Konfigurační soubor == | == Konfigurační soubor == | ||
Konfigurace se provádí v konfiguračním souboru [[KS aplikační server]] | Konfigurace se provádí v konfiguračním souboru Windows služby [[KS aplikační server]]. | ||
* '''''ASServer.exe.config''''' - soubor je uložen v adresáři ''ASServer'', v umístění instance [[KS aplikační server]], které bylo vybráno pro instalaci [[KS aplikační server]]. | * '''''ASServer.exe.config''''' - soubor je uložen v adresáři ''ASServer'', v umístění instance [[KS aplikační server]], které bylo vybráno pro instalaci [[KS aplikační server]]. | ||
V konfiguračním souboru | V konfiguračním souboru je nutné nastavit ''Endpoint'', ''Binding'', ''Behavior'' a ''WebApiType'', případně další nastavení. | ||
== Příklad == | == Příklad == | ||
Níže je uvedena vzorová konfigurace, která využívá zabezpečení s ověřením uživatelského jména na straně klienta a proto je potřeba nastavit certifikát v části '''''<serviceCertificate>''''' | Níže je uvedena vzorová konfigurace, která využívá zabezpečení s ověřením uživatelského jména na straně klienta a proto je potřeba nastavit certifikát v části '''''<serviceCertificate>''''' | ||
Dále je nutné nastavit, jaký typ API se bude používat. To určuje parametr s klíčem ''WebApiType'' a hodnotou "soap,rest", "rest" nebo "soap". | |||
V případě nevyplnění tohoto parametru bude použito pouze SOAP API. | |||
<pre> | |||
<appSettings> | |||
... | |||
<add key="WebApiType" value="rest" /> | |||
... | |||
</appSettings> | |||
</pre> | |||
SOAP a REST lze využívat souběžně. | |||
'''Vzorová konfigurace''' | '''Vzorová konfigurace SOAP''' | ||
<pre> | <pre> | ||
<system.serviceModel> | <system.serviceModel> | ||
| Řádek 60: | Řádek 73: | ||
</pre> | </pre> | ||
== AS Seance Manager - Úloha | |||
'''Vzorová konfigurace REST''' | |||
<pre> | |||
<system.serviceModel> | |||
<services> | |||
<service name="WCFLib.KSWebAPI.RESTApi.KSWebAPIRest" behaviorConfiguration="KSWebAPIBehaviorRest"> | |||
<endpoint address="Rest" behaviorConfiguration="webBehavior" binding="webHttpBinding" bindingConfiguration="KSWebAPIBindingRest" contract="WCFLib.KSWebAPI.RESTApi.IKSWebAPIRest"/> | |||
<host> | |||
<baseAddresses> | |||
<add baseAddress="https://localhost:9002/KSAsServer/WebService/WebAPI"/> | |||
</baseAddresses> | |||
</host> | |||
</service> | |||
</services> | |||
<bindings> | |||
<webHttpBinding> | |||
<binding name="KSWebAPIBindingRest" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647" sendTimeout="00:10:00" receiveTimeout="00:10:00" crossDomainScriptAccessEnabled="false"> | |||
<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647"/> | |||
<security mode="Transport"> | |||
</security> | |||
</binding> | |||
</webHttpBinding> | |||
</bindings> | |||
<behaviors> | |||
<serviceBehaviors> | |||
<behavior name="KSWebAPIBehaviorRest"> | |||
<serviceMetadata httpGetEnabled="false" httpsGetEnabled="true"/> | |||
<serviceDebug includeExceptionDetailInFaults="true"/> | |||
<serviceCredentials> | |||
<serviceCertificate findValue="7fdc925e54075d60a48939f24c1eec7d7052d3b0" storeLocation="LocalMachine" storeName="My" x509FindType="FindByThumbprint" /> | |||
</serviceCredentials> | |||
</behavior> | |||
</serviceBehaviors> | |||
<endpointBehaviors> | |||
<behavior name="webBehavior"> | |||
<webHttp defaultOutgoingResponseFormat="Json"/> | |||
</behavior> | |||
</endpointBehaviors> | |||
</behaviors> | |||
<standardEndpoints> | |||
<webScriptEndpoint> | |||
<standardEndpoint crossDomainScriptAccessEnabled="true"> | |||
</standardEndpoint> | |||
</webScriptEndpoint> | |||
</standardEndpoints> | |||
<serviceHostingEnvironment aspNetCompatibilityEnabled="true"/> | |||
</system.serviceModel> | |||
</pre> | |||
== AS Seance Manager - Úloha č. 73 == | |||
[[AS Seance Manager]] (dále ASSM) je aplikace, která byla nainstalována společně s AS a slouží ke správě AS (spouštění instancí AS, konfigurace úloh, kontrola stavu úloh, atd.). ASSM je umístěn v adresáři, který byl vybrán pro instalaci AS - '''''...\KS-AS\ASSeanceManager\ASSeanceManager.exe'''''. | [[AS Seance Manager]] (dále ASSM) je aplikace, která byla nainstalována společně s AS a slouží ke správě AS (spouštění instancí AS, konfigurace úloh, kontrola stavu úloh, atd.). ASSM je umístěn v adresáři, který byl vybrán pro instalaci AS - '''''...\KS-AS\ASSeanceManager\ASSeanceManager.exe'''''. | ||
| Řádek 71: | Řádek 133: | ||
===Správa uživatelů=== | ===Správa uživatelů=== | ||
V [[AS Seance Manager]] se provádí nastavení uživatelských účtů pro autentizaci. V sekci ''''Nastavení webové služby'''' se po stisku tlačítka ''Správa uživatelů'' otevře příslušné okno . | V [[AS Seance Manager]] se provádí nastavení uživatelských účtů pro autentizaci. V sekci ''''Nastavení webové služby'''' se po stisku tlačítka ''Správa uživatelů'' otevře příslušné okno. | ||
[[Image: KSwebAPI-Konektor Advanto-SpravaUzivatelu.png]] | |||
[[Image: KSwebAPI-Konektor Advanto-SpravaUzivatelu.png|400px]] | |||
<!-- [[Soubor:Sprava-uzivatelu-KS-WEBAPI.jpg|350px]] --> | <!-- [[Soubor:Sprava-uzivatelu-KS-WEBAPI.jpg|350px]] --> | ||
Aktuální verze z 18. 6. 2026, 09:01
Základní konfigurace webové služby KS webAPI se provádí v konfiguračním souboru ASServer.exe.config, který je součástí Windows služby KS aplikační server (AS). V tomto souboru se nastavuje transportní protokol (HTTP/HTTPS), komunikační protokol (SOAP/REST), adresa webové služby (Endpoint), certifikát pro zabezpečení komunikace, atd. Toto nastavení je potřeba pro zpřístupnění webové služby klientské aplikaci.
Nastavení uživatelských účtů a oprávnění k přenášeným údajům se nastavuje v aplikaci AS Seance Manager (ASSM).
Konfigurační soubor
Konfigurace se provádí v konfiguračním souboru Windows služby KS aplikační server.
- ASServer.exe.config - soubor je uložen v adresáři ASServer, v umístění instance KS aplikační server, které bylo vybráno pro instalaci KS aplikační server.
V konfiguračním souboru je nutné nastavit Endpoint, Binding, Behavior a WebApiType, případně další nastavení.
Příklad
Níže je uvedena vzorová konfigurace, která využívá zabezpečení s ověřením uživatelského jména na straně klienta a proto je potřeba nastavit certifikát v části <serviceCertificate>
Dále je nutné nastavit, jaký typ API se bude používat. To určuje parametr s klíčem WebApiType a hodnotou "soap,rest", "rest" nebo "soap". V případě nevyplnění tohoto parametru bude použito pouze SOAP API.
<appSettings> ... <add key="WebApiType" value="rest" /> ... </appSettings>
SOAP a REST lze využívat souběžně.
Vzorová konfigurace SOAP
<system.serviceModel>
<services>
<service name="KSProgram.AS.WCF.KSWebAPI" behaviorConfiguration="KSWebAPIBehavior">
<host>
<baseAddresses>
<add baseAddress="http://localhost:9001/KSAsServer/WebService/WebAPI"/>
</baseAddresses>
</host>
<endpoint address=""
binding="wsHttpBinding"
bindingConfiguration="KSWebAPIBinding"
contract="KSProgram.AS.WCF.IKSWebAPI" />
</service>
</services>
<bindings>
<wsHttpBinding>
<binding name="KSWebAPIBinding">
<security mode="Message">
<message clientCredentialType="UserName" />
</security>
<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647"
maxArrayLength="2147483647"
maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
</binding>
</wsHttpBinding>
</bindings>
<behaviors>
<serviceBehaviors>
<behavior name="KSWebAPIBehavior">
<serviceMetadata httpGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="true"/>
<serviceCredentials>
<userNameAuthentication userNamePasswordValidationMode="Custom"
customUserNamePasswordValidatorType="KSProgram.AS.WCF.PasswordValidator, WCFLib"/>
<serviceCertificate findValue="WebAPI_cert" storeLocation="LocalMachine"
storeName="My" x509FindType="FindBySubjectName"/>
</serviceCredentials>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
Vzorová konfigurace REST
<system.serviceModel> <services> <service name="WCFLib.KSWebAPI.RESTApi.KSWebAPIRest" behaviorConfiguration="KSWebAPIBehaviorRest"> <endpoint address="Rest" behaviorConfiguration="webBehavior" binding="webHttpBinding" bindingConfiguration="KSWebAPIBindingRest" contract="WCFLib.KSWebAPI.RESTApi.IKSWebAPIRest"/> <host> <baseAddresses> <add baseAddress="https://localhost:9002/KSAsServer/WebService/WebAPI"/> </baseAddresses> </host> </service> </services> <bindings> <webHttpBinding> <binding name="KSWebAPIBindingRest" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647" sendTimeout="00:10:00" receiveTimeout="00:10:00" crossDomainScriptAccessEnabled="false"> <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647"/> <security mode="Transport"> </security> </binding> </webHttpBinding> </bindings> <behaviors> <serviceBehaviors> <behavior name="KSWebAPIBehaviorRest"> <serviceMetadata httpGetEnabled="false" httpsGetEnabled="true"/> <serviceDebug includeExceptionDetailInFaults="true"/> <serviceCredentials> <serviceCertificate findValue="7fdc925e54075d60a48939f24c1eec7d7052d3b0" storeLocation="LocalMachine" storeName="My" x509FindType="FindByThumbprint" /> </serviceCredentials> </behavior> </serviceBehaviors> <endpointBehaviors> <behavior name="webBehavior"> <webHttp defaultOutgoingResponseFormat="Json"/> </behavior> </endpointBehaviors> </behaviors> <standardEndpoints> <webScriptEndpoint> <standardEndpoint crossDomainScriptAccessEnabled="true"> </standardEndpoint> </webScriptEndpoint> </standardEndpoints> <serviceHostingEnvironment aspNetCompatibilityEnabled="true"/> </system.serviceModel>
AS Seance Manager - Úloha č. 73
AS Seance Manager (dále ASSM) je aplikace, která byla nainstalována společně s AS a slouží ke správě AS (spouštění instancí AS, konfigurace úloh, kontrola stavu úloh, atd.). ASSM je umístěn v adresáři, který byl vybrán pro instalaci AS - ...\KS-AS\ASSeanceManager\ASSeanceManager.exe.
V případě KS webAPI je zde typ úlohy
- Webová služba KSwebAPI (Kód = 73) v seznamu Typ úlohy. V části Nastavení webové služby se provádí nastavení uživatelských účtů pro autentizaci.
ASSM (soubor ASSeanceManager.exe) je nutné spouštět jako správce.
Správa uživatelů
V AS Seance Manager se provádí nastavení uživatelských účtů pro autentizaci. V sekci 'Nastavení webové služby' se po stisku tlačítka Správa uživatelů otevře příslušné okno.
Oprávnění na položky
V AS Seance Manager se provádí nastavení oprávnění 'Čtení' a 'Zápis' na položky pro jednotlivé skupiny položek. V sekci 'Nastavení webové služby' se po stisku tlačítka 'Přístupová práva' otevře příslušné okno.