Installation & Konfiguration
Inhaltsverzeichnis
Systemvoraussetzungen
- ASP.NET Core 8.0 Runtime (v8.0.0) - Windows Hosting Bundle
- Unterstütztes Datenbank-System, siehe hier
Installation
TODO
Update
TODO
Konfiguration
CMI WebGis Service
Die Konfiguration des CMI Gis Service erfolgt über die Datei appsettings.json
. Es wird eine Beispielkonfiguration gezeigt und anschliessend auf die einzelnen Abschnitte eingegangen.
{
"Tenants": {
"prod": {
"OwinPrivateUri": "https://metatool.cmiag.ch:10003",
"OpenIdConnectConfig": {
"StsUri": "https://sts.cmiag.ch/prod/identity",
"ClientId": "cmi-webgis-service"
}
}
},
"DatabaseProvider": "MSSQL",
"ConnectionStrings": {
"MSSQL": "Server=localhost;Initial Catalog=gisdata;User Id=sa;Password=supersecretpassword;Encrypt=False"
},
"MapDataProvider": "http://overpass-api.de/api/interpreter",
"TempPath": "C:\\temp\\"
}
Mandant
Die Konfiguration der Mandanten kann auf zwei Arten erfolgen:
* Mit dem Schlüssel Tenants
, wie im Beispiel sichtbar. Die einzelnen Mandanten werden in Subschlüsseln abgebildet, im Beispiel ist das der Mandant prod
.
* Mit dem Schlüssel TenantConfigurationDirectory
, wo ein Pfad zu einem Ordner angegeben werden kann. Die einzelnen Mandanten werden in einzelnen Dateien abgebildet, z.B. prod.json
. Der Inhalt der Datei entspricht dem Wert des Schlüssels des Mandanten.
Die einzelnen Konfigurationswerte sind:
* OwinPrivateUri
: URI unter der der Owin Private Port des CMI Servers erreicht werden kann
* OpenIdConnectConfig
* StsUri
: URI unter der der STS erreicht werden kann, beinhaltet die Mandantenkennung gemäss Konfiguration STS
* ClientId
: ClientId, die im STS für den Gis Service vergeben wurde
Datenbank
Der CMI Gis Service speichert Informationen für sich und von den Mandanten in einer Datenbank ab.
Die einzelnen Konfigurationswerte sind:
* DatabaseProvider
: Technologie der verwendeten Datenbank, es gibt die Werte MSSQL
und PostgreSQL
.
* ConnectionStrings
: Beinhaltet Connection-Strings. Es wird nur der Schlüssel berücksichtigt, der in DatabaseProvider
konfiguriert wurde und dieser muss zwingend angegeben werden.
MapCut Einstellungen
Der CMI Gis Service bezieht Kartendaten aus der Overpass API von Open-streetmap. Die MapDataProvider
Variable muss auf einen geeigneten Enpunkt dieser API zeigen.
Im Normalfall muss diese nicht geändert werden.
Weiter verwendet der Gis service das node-paket osmtogeojson als Commandline-Tool
Hierfür muss Node.js installiert sein und osmtogeojson per npm install -g osmtogeojson auf dem System eingerichtet sein.
Der konfiguriertet TempPath
wird als zwischenablage für die Konvertierung auf Filebasis genutzt.
STS
Wie der STS konfiguriert wird, ist grundsätzlich der Dokumentation des STS zu entnehmen. Es wird an dieser Stelle aber eine Beispielkonfiguration des Clients gezeigt.
{
"ClientId": "cmi-webgis-service",
"AllowAccessTokensViaBrowser": true,
"AllowOfflineAccess": true,
"RequireClientSecret": false,
"AllowedCorsOrigins": [
"https://localhost:7296",
"http://localhost:7296"
],
"AllowedGrantTypes": [
"authorization_code"
],
"AllowedScopes": [
"openid",
"profile",
"metatool"
],
"RedirectUris": [
"regex:^(.*)"
],
"PostLogoutRedirectUris": [
"regex:^(.*)"
]
}
Diverses
Backup
Da der CMI Gis Service über eine eigene Datenbank verfügt, sollte diese in der Backup-Strategie berücksichtigt werden.