Sjåførportal – Installasjonssveiledning
Revisjonshistorikk
- 22.10.2013 - Første versjon av dokument
- 07.04.2016 - Config flyttet til xml-fil.
- 07.04.2016 - ASP.NET-side distribusjon endret fra msi til zip.
Introduksjon
Dette er en installasjonsveiledning for Sjåførportalen og Tempus Applikasjonsserver. Disse er frittstående tjenester utenfor DGTempus, og krever derfor eget oppsett og konfigurasjon.
Alle eksemplene og skjermbildene er fra Windows 2008 R2.
Definisjoner og forkortelser
Sjåførportal | Webside hvor sjåførene kan logge på og se på kjøreoppdragene sine, og melde inn f.eks. km-stand, forbrukt tid og endringer ihht. planlagt kjøring. |
Applikasjonsserver | En tjeneste som publiserer nødvendige deler av Tempus-databasen for sjåførportalen. |
Installasjon av applikasjonsserver
Applikasjonsserveren publiserer utvalgte deler av Tempus-databasen som en webservice. Denne brukes foreløpig kun av sjåførportalen, så det er bare det som er relevant for publisering av aktiviteter til sjåfører som gjøres tilgjengelig. Tilgangen styres via en rolle i databasen kalt «appserver».
Tabellene og feltene som selve kjøreoppdraget inneholder og som sjåføren kan lagre eventuelle avvik og tilbakemeldinger til, er faste. Kjøreordren som kjørekontoret kan skrive ut er det mulig å tilpasse til den enkelte kundes behov. Alle tabeller og felter som kjøreordren i papirformat kan inneholde er derfor ikke tilgjengelig i denne rollen. Rapportgeneratoren kan eventuelt bruke ini-filen fra Tempus for å få nødvendig databasetilgang.
Installasjon
Start installasjonsfilen TempusAppServer-(versjonsnr).msi. Installasjonen har ingen alternativer eller valg, den installeres automatisk til %ProgramFiles(x86)%\DataGrafikk\TempusAppServer
Konfigurasjon
Som standard vil applikasjonsserveren ligge her:
C:\Program Files (x86)\DataGrafikk\TempusAppServer\
I katalogen applikasjonsserveren er installert i ligger det tre konfigurasjonsfiler.
Databaseinfo - TempusAppServer.daConnections
Denne filen inneholder databasetilkoblingsinfo. Filen ser slik ut:
<Connections>
<PoolTransactionBehaviour>Fail</PoolTransactionBehaviour>
<Definitions>
<Definition>
<Description />
<ConnectionString>MSSQL.NET?Server=;Database=;User ID=;Password=;</ConnectionString>
<ConnectionType>MSSQL</ConnectionType>
<Default>True</Default>
<Name>Tempus ADO Connection</Name>
</Definition>
</Definitions>
<CanRaiseEventsInternal>True</CanRaiseEventsInternal>
</Connections>
Her fyller man ut ConnectionString. Eksempel:
<ConnectionString>MSSQL.NET?Server=databaseserver.domene.local;Database=TempusDB;User ID=TempusDBBruker;Password=Passord;</ConnectionString>
Databasebrukeren trenger kun tilgang til rollen "appserver" i Tempus-databasen.
Server | Servernavn (evt. fqdn/ip) til databaseserveren, etterfulgt av \Instance hvis det ikke er default instans (f.eks. DBServer\SQLExpress). |
Database | Databasenavn til Tempus |
User ID | Databasebruker i Tempus-databasen. Denne trenger kun tilgang til appserver-rollen. |
Password | Passord til databasebrukeren |
Andre innstillinger - DataGrafikk.TempusAppServer.exe.config
Her settes alle andre applikasjonsserver-spesifikke innstillinger. Filen inneholder følgende:
<?xml version="1.0"?>
<configuration>
<configSections>
....
</configSections>
<ServerConfiguration>
<ServerChannel type="http" port="8099" />
<ServerMessages>
<ServerMessage type="bin" />
</ServerMessages>
<SessionManager type="Memory" timeout="5184000" />
<SslOptions
useTLS="true"
certificateThumbprint="<fingerprint til sertifikat>"
generateCertificate="false"
/>
</ServerConfiguration>
<tempusAppServer
smtpHostname="mail.server.local"
smtpPort="25"
smtpUsername="smtp brukernavn"
smtpPassword="smtp passord"
busDriverWebUrl="https://adresse.til.portalen/sted"
/>
....
</configuration>
Her fyller man inn domenenavn til databaseserver og mailserver, brukernavn, passord etc. Sertifikat kan enten være automatisk generert, ved å sette generateCertificate=true", eller ved å spesifisere certificateThumbprint. Man kan finne thumbprint ved å kjøre følgende PowerShell-kommando:
Get-ChildItem -Path Cert:\LocalMachine\My
Eksempel:
PS C:\> Get-ChildItem -Path Cert:\LocalMachine\My
Directory: Microsoft.PowerShell.Security\Certificate::LocalMachine\My
Thumbprint Subject
---------- -------
000102030405060708090A0B0C0D0E0F10111213 CN=common.name
PS C:\>
I dette tilfellet vil man sette
<tempusAppServer
port="Port"
certificateName="CN=common.name"
...
>
Tilkoblingsinnstillinger for innkommende trafikk
navn | beskrivelse |
---|---|
Certificate | HTTPS-sertifikat for kryptering av trafikk mellom sjåførportal og applikasjonsserver |
Port | TCP-porten som sjåførportalen lytter på (std. 8099) |
SMTP-info for eventuell utsendelse av e-post
navn | beskrivelse |
---|---|
smtpHostname | Adresse til e-postserver |
smtpPort | Port som SMTP-serveren lytter på (std. 25) |
smtpUsername | Brukernavn for å logge på e-postkonto |
smtpPassword | Passord for å logge på e-postkonto |
Diverse innstillinger
navn | beskrivelse |
---|---|
busDriverWebUrl | URL til sjåførportalen hvor brukerne kan logger på. Brukes i epost som sendes ut når man resetter passord |
sessionTimeoutDays | Antall dager en brukers sesjon varer. Når denne er passert må brukeren logge inn på nytt. |
Merk at sessiondata lagres i minne, så etter en restart av applikasjonsserveren må brukerne alltid logge inn på nytt.
Rapportgenerator - dgdb.ini
I de fleste tilfeller vil rapportgeneratoren som bl.a. lager nedlastbare pdf-versjoner av kjøreordre trenge utvidet tilgang databasen i forhold til applikasjonsserveren. Rapportgeneratoren kan lese egne tilkoblingsinnstillinger fra filen dgdb.ini. Denne er identisk med Tempus sin dgdb.ini-fil, så man kopierer i tilfelle denne filen fra Tempus.
Starte applikasjonsserveren
Start servicen "TempusAppServer service". Sjekk også at den er satt opp til å starte automatisk, og evt. til å restarte hvis den feiler:
Installasjon av Sjåførportalen
Sjåførportalen er en ASP.NET webside som lar sjåfører se på og returnere kjøreordre. Denne må installeres på en IIS webserver. Den krever at .NET Framework 3.5 er installert.
Installasjon
Sjåførportalen installeres under en eksisterende site i IIS. Hvis ønsket site ikke eksisterer, må denne opprettes i IIS. Sertifikater, domenenavn etc. spesifiseres i IIS, ikke i Sjåførportalen.
Selve sjåførportalen distribueres som en zip-fil. Denne pakkes ut og legges i en katalog på webserveren. Opprett en Application i IIS for denne katalogen, og sett Application Pool til ASP.NET v4.0
Konfigurasjon
Sjåførportalen må settes opp til å peke til applikasjonsserveren. Dette gjøres i Web.config-filen. Denne ligger i katalogen man pakket ut sjåførportalen i.
Finn appSettings-seksjonen, og sett ServiceUrl til dns-navnet som applikasjonsserveren kjører på:
<appSettings>
<add key="ServiceUrl" value="https://appserver.domene:8099/bin" />
<add key="Theme" value="Default" />
</appSettings>
Starte sjåførportalen
Sjåførportalen skal nå være klar til bruk. Den vil være tilgjengelig under domenenavnet til tilhørende site i IIS. Brukertilgang styres fra Tempus, og er beskrevet i et eget dokument.