🔨 Integracija in konfiguracija
Vrste uporabnikov in vloge
Uporabniki
Vrsta |
Opis |
None |
Prijava v sistem ni mogoča |
User |
Uporabniki, katerim je omogočena interaktivna prijava v sistem |
Service |
Storitve, ki komunicirajo z aplikacijo preko HTTP. Interaktivna prijava v sistem ni mogoča. Storitve pošljejo informacijo o prijavi ob vsakem zahtevku v obliki Basic ali Negotiate avtorizacijskega zaglavja |
Application |
Aplikacija VegeLine, ki vzpostavi začetno varno povezavo s strežnikom. |
Vloge
Vloga |
Opis |
None |
Brez kakršnikoli pravic |
View |
Pravice za ogled podatkov |
Modify |
Pravice za spreminjanje podatkov |
Admin |
Pravice za upravljanje sistema preko namizne in nadzorniške aplikacije |
Statična konfiguracija VegeLine
Pred prvim zagonom je potrebno strežniški sistem VegeLine pravilno konfigurirati.
Konfiguracija se nahaja v poti “C:\isuv\system\config\” in sicer v glavni datoteki isuv.config.json.
V naslednjih tabelah so opisani konfiguracijski parametri.
❗ Vse spremenljivke so občutljive na velike in majhne črke! Bodite pozorni pri spreminjanju ali posodabljanju kofiguracije. |
Osnovna konfiguracija
Nastavitev |
Privzeta vrednost |
Tip |
Obvezen |
Zaloga vrednosti |
Opis |
LogLevel |
“INFO” |
string |
✅ |
“TRACE”,“INFO”,“WARN”,“ERROR” |
Nivo beleženja v datoteke .log. V primeru iskanja napak uporabite TRACE, v nasprotnem primeru pa INFO |
LogShowFile |
false |
bool |
✅ |
|
Izpis datoteke izvorne kode, v kateri je prišlo do zapisa v log |
LogShowLine |
true |
bool |
✅ |
|
Izpis vrstice datoteke izvorne kode, v kateri je prišlo do zapisa v log |
LogShowFunction |
true |
bool |
✅ |
|
Izpis funkcije programa v kateri je prišlo do zapisa v log |
DataRoot |
“D:/isuv/data” |
pot |
✅ |
|
Pot na datotečnem sistemu do podatkov, ki jih producira sistem VegeLine |
WorkRoot |
“D:/isuv/work” |
pot |
✅ |
|
Pot na datotečnem sistemu do odlaganja začasnih podatkov, ki se samodejno odstranijo po koncu delovanja programa |
IsuvDatabase |
|
url |
✅ |
|
MSSQL Server Connection string do podatkovne baze, kot ga vidi strežnik VegeLine |
IsuvRemoteDatabase |
|
url |
✅ |
|
MSSQL Server Connection string do podatkovne baze, kot ga vidi namizna aplikacija VegeLine |
DatabaseDriver |
“Driver={ODBC Driver 17 for SQL Server}” |
string |
✅ |
|
ODBC Driver za povezavo do baze MSSQL |
DeploymentTier |
“PROD” |
string |
✅ |
“LOCL”,“DEV”,“TEST”,“PROD” |
Okolje delovanja aplikacije. TEST=Testno okolje, PROD=Produkcijsko okolje |
ProxyUrl |
“https://vegeline.eles.si/services" |
url |
✅ |
|
Proxy naslov strežniških storitev. Potrebno za pravilno generiranje povezav storitev WMS |
ManagementAppBaseEndpoint |
“/” |
string |
✅ |
|
Bazični naslov nadzorniške spletne aplikacije |
ManagementAppUrl |
“https://vegeline.eles.si/management/" |
url |
✅ |
|
Naslov nadzorniške spletne aplikacije |
DocumentationUrl |
“https://vegeline.eles.si/docs/" |
url |
✅ |
|
Naslov spletne strani dokumentacije VegeLine |
WfsXmlNamespace |
“http://sheme.eles.si/vegeline/2022/veg" |
url |
✅ |
|
Imenska pot za veg, ki se uporablja pri storitvah WFS. |
SecurityPackage |
“Negotiate” |
string |
✅ |
“Negotiate”, “Kerberos”, “NTLM” |
Varnostni paket za avtentikacijo uporabnikov |
BasicAuthentication |
true |
bool |
✅ |
|
Uporaba osnovne HTTP avtentikacije |
NegotiateAuthentication |
false |
bool |
✅ |
|
Uporaba avtentikacije Negotiate |
IdentityProviders |
|
array |
✅ |
|
Konfiguracija ponudnikov identitet uporabnikov za sistem VegeLine |
MxConnection |
|
object |
|
|
Konfiguracija dostopa do storitev MXTVEGETACIJA |
EmailNotifier |
|
object |
|
|
Konfiguracija obveščanja uporabnikov v primeru napak |
LidarDataSources |
|
array |
✅ |
|
Konfiguracija podatkovnih virov snemanja lidar |
Ponudniki identitet
Sistem VegeLine podpira različne ponudnike identitet za postavitev sistema v različna okolja. IdentityProviders je spremenljivka tipa polje (array), v katerem so navedeni različni ponudniki identitet.
Vsebina ponudnika identitete se razlikuje glede na vrsto.
Možen je vnos več ponudnikov istega tipa.
V spodnji tabeli so opisane skupne lastnosti vseh ponudnikov.
Nastavitev |
Privzeta vrednost |
Tip |
Obvezen |
Zaloga vrednosti |
Opis |
name |
|
string |
✅ |
|
Ime ponudnika identitete. To ime se prikaže v obeh aplikacijah in mora bit unikatno |
type |
|
string |
✅ |
“Internal”, “ActiveDirectory”, “Windows” |
Vrsta ponudnika identitete |
enabled |
true |
bool |
✅ |
|
Omogoči uporabo ponudnika identitete |
Ponudnik identitete: type=“Internal”
Interni ponudnik identitete, ki omogoča enostavno uporavljanje s statičnimi uporabniki sistema in se jih skonfigurira kar znotraj konfiguracijske datoteke.
V objekt internalIdentityProvider vstavite seznam uporabniških računov accounts, kot prikazuje spodnji primer:
{
"name": "Administratorji",
"type": "Internal",
"enabled": true,
"internalIdentityProvider": {
"accounts": [
{
"uid": "F3306CCB-5924-4073-ADD2-CAF9EBAABEA2",
"loginName": "admin",
"fullName": "Skrbnik VegeLine",
"email": "",
"passwordSha256": "<geslo>",
"userRole": "Admin",
"userType": "User"
}
]
}
}
Nastavitev |
Privzeta vrednost |
Tip |
Obvezen |
Zaloga vrednosti |
Opis |
uid |
|
GUID |
✅ |
|
Unikatni ID v obliki “4e107281-2514-4efa-bc63-89b3fb6919d5” |
loginName |
|
string |
✅ |
|
Uporabniško ime za prijavo |
fullName |
|
string |
✅ |
|
Ime in priimek uporabnika |
email |
|
string |
✅ |
|
E-pošta uporabnika. Za pošiljanje obvestil |
passwordSha256 |
|
string |
✅ |
|
Geslo uporabnika kot ključ SHA-256 |
userRole |
|
string |
✅ |
“None”, “View”, “Modify”, “Admin” |
Nabor pravic uporabnika. Več informacij najdete v Vloge |
userType |
|
string |
✅ |
“None”, “User”, “Service”, “Application” |
Nabor pravic uporabnika. Več informacij najdete v Uporabniki |
🗒️ Nov GUID lahko enostavno zgenerirate v powershell s spodnjim ukazom |
Izpis:
Guid
----
4e107281-2514-4efa-bc63-89b3fb6919d5
🗒️ Interni ponudniki se uporabljajo zgolj za povezovanje s sistemi, ki ne podpirajo kompliciranih avtorizacijskih mehanizmov (na primer: spletne storitve, kot je MXTVEGETACIJA in ostali HTTP API-ji) |
Ponudnik identitete: type=“ActiveDirectory”
Ponudnik identitete ActiveDirectory, ki preko protokola LDAP dostopa do informacij domenskih uporabnikov. , ki omogoča enostavno uporavljanje s statičnimi uporabniki sistema in se jih skonfigurira kar znotraj konfiguracijske datoteke.
V objekt activeDirectoryIdentityProvider skonfigurirate dostop do AD in podate filter za iskanje uporabnikov, ko je prikazano spodaj:
{
"name": "Aktivni imenik",
"type": "ActiveDirectory",
"enabled": true,
"activeDirectoryIdentityProvider": {
"searchBase": "LDAP://SRV-DC3.Eles.si/DC=Eles,DC=si",
"searchFilter": "(memberOf=CN=VEGELINE - Uporabniki,OU=VEGETACIJA,OU=resource,OU=ELES_Skupine,DC=Eles,DC=si)",
"serviceUser": null,
"servicePassword": null
}
}
Nastavitev |
Privzeta vrednost |
Tip |
Obvezen |
Opis |
searchBase |
|
string |
✅ |
Naslov LDAP do aktivnega imenika |
searchFilter |
null |
string |
✅ |
Filter za iskanje uporabnikov. Če je null, potem je dostop omogočem vsem uporabnikom domene. Privzete pravice uporabnikov so “View” |
serviceUser |
null |
string |
✅ |
Uporabniški račun za dostop do AD v kolikor se sistem VegeLine izvaja pod nedomenskim uporabnikom. V primeru izvajanja VegeLine pod domenskim uporabnikom ali SYSTEM pustite to polje null |
servicePassword |
null |
string |
✅ |
Geslo uporabniškega računa za dostop do AD v kolikor se sistem VegeLine izvaja pod nedomenskim uporabnikom. V primeru izvajanja VegeLine pod domenskim uporabnikom ali SYSTEM pustite to polje null |
Povezava z IBM Maximo (MxConnection)
Nastavitve dostopa do MXTVEGETACIJA v namen odpiranja delovnih nalogov in opravil posegov v vegetacijo in omejitev. Primer konfiguracije je prikazan spodaj in je del objekta MxConnection v okolju PROD:
{
"enabled": true,
"server": "https://podpora.eles.si",
"oslcEndpoint": "/maximo/oslc/os/mxtvegetacija",
"oslcDomainsEndpoint": "/maximo/oslc/os/mxtvegetacija/domains",
"username": "<uporabnik>",
"password": "<geslo>",
"useFormBasedAuthentication": true
}
Nastavitev |
Privzeta vrednost |
Tip |
Obvezen |
Opis |
enabled |
false |
bool |
✅ |
Omogoči integracijo z MXTVEGETACIJA |
server |
|
url |
✅ |
Pot do strežnika MX |
oslcEndpoint |
|
string |
✅ |
Pot do vmesnika OSLC mxtvegetacija brez naslova strežnika |
oslcDomainsEndpoint |
|
string |
✅ |
Pot do vmesnika OSLC domen mxtvegetacijadomains brez naslova strežnika |
username |
|
string |
✅ |
Uporabniško ime s pravicami za dostop in vstavljanjem novih DN in opravil preko MXTVEGETACIJA |
password |
|
string |
✅ |
Geslo uporabnika s pravicami za dostop in vstavljanjem novih DN in opravil preko MXTVEGETACIJA |
useFormBasedAuthentication |
|
bool |
✅ |
Omogoči prijavo v IBM Maximo preko naslova namesto glave HTTP (Authenticate). Uporabniško ime in geslo se preneseta v URL preko parametrov j_username in j_password |
Obveščanje v primeru napak (EmailNotifier)
Nastavitve poštnega predala za obveščanje uporabnikov v primeru napak v delovanju sistema VegeLine. Primer konfiguracije je prikazan spodaj in je del objekta EmailNotifier:
{
"enabled": true,
"ssl": false,
"recipients": ["admin"],
"senderMail": "vegeline@eles.si",
"senderUsername": "",
"senderPassword": "",
"serverUrl": "smtp://relay.eles.si:25"
}
Za pošiljanje emailov se uporablja program curl.exe, ki je del operacijskega sistema.
Nastavitev |
Privzeta vrednost |
Tip |
Obvezen |
Opis |
enabled |
true |
bool |
✅ |
Omogoči pošiljanje obvestil |
ssl |
true |
bool |
✅ |
Omogoči SMTPS |
recipients |
|
array |
✅ |
Seznam uporabniških računov, ki prejmejo email |
senderMail |
|
string |
✅ |
Email naslov pošiljatelja |
senderUsername |
|
string |
✅ |
Uporabniški račun epoštnega predala iz katerega se pošilja pošta. Lahko je prazen niz |
senderPassword |
|
string |
✅ |
Geslo uporabnika epoštnega predala iz katerega se pošilja pošta. Lahko je prazen niz |
serverUrl |
|
url |
✅ |
Povezava SMTP do poštnega predala |
Konfiguracija podatkovnih virov lidar (LidarDataSources)
Nastavitve podatkovnih virov snemanja lidar v obliki seznama. Primer konfiguracije najdemo spodaj.
[
{
"name": "Default",
"type": "FileSystem",
"rootPath": "C:\\isuv-dev\\data\\lidar",
"scanRecursively": false,
"readOnly": false,
"enabled": true
}
]
Nastavitev |
Privzeta vrednost |
Tip |
Obvezen |
Opis |
name |
|
string |
✅ |
Ime podatkovnega vira, ki se prikaže zraven posnetkov v aplikacijah. Ime mora bit enolično in se ne sme ponavljati pri ostalih podatkovnih virih. |
type |
FileSystem |
string |
✅ |
Vrsta podatkovnega vira. Trenutno je podprt samo FileSystem. |
rootPath |
|
string |
✅ |
Pot na datotečnem sistemu do imenika podatkov snemanj. Pot je lahko tudi skupna raba. |
scanRecursively |
|
bool |
✅ |
Vključi datoteke snemanj, ki so v podmapah |
readOnly |
|
bool |
✅ |
Označi podatkovni vir kot samo za branje. V tem primeru se spremembe podatkov snemanj vodijo v posebej mapi interno na sistemu, kjer je potrebno zagotoviti dovolj prostora. |
enabled |
|
bool |
✅ |
Omogoči uporabo podatkovnega vira |
Primer celotne konfiguracije za PROD (brez gesel)
{
"LogLevel": "INFO",
"LogShowFile": false,
"LogShowLine": true,
"LogShowFunction": true,
"DataRoot": "D:/isuv/data/",
"WorkRoot": "D:/isuv/work/",
"IsuvDatabase": "",
"IsuvRemoteDatabase": "",
"DatabaseDriver": "Driver={ODBC Driver 17 for SQL Server}",
"DeploymentTier": "PROD",
"ProxyUrl": "https://srv-vegetacija.eles.si/services",
"ManagementAppBaseEndpoint": "/management/",
"ManagementAppUrl": "https://srv-vegetacija.eles.si/management/",
"DocumentationUrl": "https://srv-vegetacija.eles.si/docs/",
"WfsXmlNamespace": "http://sheme.eles.si/vegeline/2022/veg",
"SecurityPackage": "Negotiate",
"BasicAuthentication": true,
"NegotiateAuthentication": true,
"IdentityProviders": [
{
"name": "Administratorji",
"type": "Internal",
"enabled": true,
"internalIdentityProvider": {
"accounts": [
{
"uid": "F3306CCB-5924-4073-ADD2-CAF9EBAABEA2",
"loginName": "admin",
"fullName": "Skrbnik VegeLine",
"email": "",
"passwordSha256": "3275cec913b9389c9e535d5cec369397d2795b2539f2fe9f0af210636fd4fa82",
"userRole": "Admin",
"userType": "User"
}
]
}
},
{
"name": "Aktivni imenik",
"type": "ActiveDirectory",
"enabled": true,
"activeDirectoryIdentityProvider": {
"searchBase": "LDAP://SRV-DC3.Eles.si/DC=Eles,DC=si",
"searchFilter": "(memberOf=CN=VEGELINE - Uporabniki,OU=VEGETACIJA,OU=resource,OU=ELES_Skupine,DC=Eles,DC=si)",
"serviceUser": null,
"servicePassword": null
}
},
{
"name": "Računi zunanjih storitev",
"type": "Internal",
"enabled": true,
"internalIdentityProvider": {
"accounts": [
{
"uid": "2c6c21f0-fcd7-407d-a8dd-92e157d33771",
"loginName": "MXTVEGETACIJA",
"fullName": "Storitve VegeLine za IBM Maximo",
"email": "",
"passwordSha256": "a5f47a3ed19ef3e78b4b81a74fc87f0146baa888b7f463c37df9b5be8d8e46b5",
"userRole": "Modify",
"userType": "Service"
}
]
}
}
],
"MxConnection": {
"enabled": true,
"server": "https://podpora.eles.si",
"oslcEndpoint": "/maximo/oslc/os/mxtvegetacija",
"oslcDomainsEndpoint": "/maximo/oslc/os/mxtvegetacija/domains",
"username": "<uporabnik>",
"password": "<geslo>",
"useFormBasedAuthentication": true
},
"EmailNotifier": {
"enabled": true,
"ssl": false,
"recipients": ["admin"],
"senderMail": "vegeline@eles.si",
"senderUsername": "",
"senderPassword": "",
"serverUrl": "smtp://relay.eles.si:25"
},
"LidarDataSources": [
{
"name": "Interni prostor",
"type": "FileSystem",
"rootPath": "C:\\isuv\\data\\lidar",
"scanRecursively": false,
"readOnly": false,
"enabled": true
},
{
"name": "LIDAR_2021",
"type": "FileSystem",
"rootPath": "\\\\eles.si\\apl\\GMSpodatki\\LIDAR_2021",
"scanRecursively": true,
"readOnly": true,
"enabled": true
},
{
"name": "LIDAR_2020",
"type": "FileSystem",
"rootPath": "\\\\eles.si\\apl\\GMSpodatki\\LIDAR_2020",
"scanRecursively": true,
"readOnly": true,
"enabled": true
},
{
"name": "LIDAR_2018",
"type": "FileSystem",
"rootPath": "\\\\eles.si\\apl\\GMSpodatki\\LIDAR_2018",
"scanRecursively": true,
"readOnly": true,
"enabled": true
},
{
"name": "LIDAR_2017",
"type": "FileSystem",
"rootPath": "\\\\eles.si\\apl\\GMSpodatki\\LIDAR_2017",
"scanRecursively": true,
"readOnly": true,
"enabled": true
},
{
"name": "LIDAR_2016",
"type": "FileSystem",
"rootPath": "\\\\eles.si\\apl\\GMSpodatki\\LIDAR_2016",
"scanRecursively": true,
"readOnly": true,
"enabled": true
},
{
"name": "LIDAR_2013",
"type": "FileSystem",
"rootPath": "\\\\eles.si\\apl\\GMSpodatki\\LIDAR_2013",
"scanRecursively": true,
"readOnly": true,
"enabled": true
}
]
}
TaskScheduler
Za samodejo replikacijo podatkov je potrebno v upravitelja opravil vstavit vnos za aplikacijo. To storimo tako da v upravitelja opravil uvozimo konfiguracijo (xml), ki se nahaja pod “C:\isuv\taskscheduler\VegeLine Replicator.xml”. Rezultat je prikazan na sliki spodaj: