Konfigurering av integrasjonspunkt-local.properties
Denne delen av veiledningen er delt opp slik at du først finner litt generell informasjon før du deretter finner eksempler på integrasjonspunkt-local.properties oppsett spesifikt for den tjenesten du skal ta i bruk.
Anbefalt rekkefølge for installasjon av eFormidling
Vi anbefaler å konfigurere integrasjonspunktet i følgende rekkefølge.
- Minimumskonfigurasjon for å få starte integrasjonspunktet.
- Konfigurere sak-arkivsystem til å prate med integrasjonspunktet (under DPO innstillinger i tabellen under)
- Konfigurere DPO innstillinger (brukernavn og passord) eller DPI.
- Konfigurere DPV/DPF innstillinger
Vi anbefaler dere å konfigurere DPO før DPV/DPF for å unngå å motta post fra svarUt til virksomhetens SvarInn innboks. Ved å konfigurere DPO først vil dere motta post i sak-arkivsystemet. Om ønsket kan en også sette opp DPI først.
Husk å melde fra til servicedesk@digdir.no når dere har konfigurert slik at Digitaliseringsdirektoratet kan åpne opp tilganger. Ellers vil du få 400 Bad request feil.
Integrasjonspunkt-local.properties
Her laster du ned integrasjonspunkt-local.properties-filen Per i dag så benytter vi Java Key Store (JKS). Vi jobber med en virtuell HSM-løsning som alternativ til JKS. Vi har valgt å pensjonere Windows Certificate Store løsningen fordi den ikke støtter alle former for eFormidling. Om du allerede bruker WCS og trenger støtte, ta kontakt med servicedesk@digdir.no.
- Start med å opprette en mappe med navn integrasjonspunkt på for eksempel c:\
- Last så ned integrasjonspunkt-local.properties filen. den kan lastes ned her og lagre i overnevnte mappe
- last ned integrasjonspunkt[versjonsnummer].jar filen. Den finner du her
Når du er ferdig skal strukturen på området se slik ut:
c:/
|-- integrasjonspunkt/
|-- integrasjonspunkt-local.properties
|-- integrasjonspunkt[versjon].jar
i integrasjonspunkt-local.properties-filen må du fjerne bortkommentering for den typen eformidling du skal bruke. keystore.alias er case-sensitivt
NB: Benytt skråstrek (/) eller dobbel omvendt skråstrek (\\) som ressursdeler når dere angir filbaner.
Eksempler på konfigurering finner du lenger nede under hver enkelt tjeneste.
eFormidling - Digital Post til virksomheter
Når en virksomhet sender digital post til virksomheter kan virksomheten sende både til og motta fra andre virksomheter som har et integrasjonspunkt. Sende til virksomheter som ikke har.
Om du ikke bruker eInnsyn må du i tillegg legge inn
difi.move.feature.enableDPE=false
for å skru av eInnsyn. Ellers får du feilmeldinger.
NB! Sørg for å fjerne alle whitespace bak hver linje.
Properties DPF/DPO/DPV
Når du skal ta i bruk DPF/DPO/DPV må du legge inn en rekke properties og fylle ut desse. Se etter DPV/DPO/DPF i tabellen under og legg inn innstillinger som kreves for denne tjenesten. Se under tabellen for unntak.
Properties | Eksempel Java Keystore (JKS) | Beskrivelse |
---|---|---|
server.port | 9093 | Portnummer integrasjonspunktet skal kjøre på (default 9093) |
difi.move.org.number | 123456789 | Organisasjonsnummer til din organisasjon (9 siffer) |
difi.move.org.keystore.alias | alias | alias=navnet på virksomhetssertifikatet som ligger i JKS(case sensitivt) |
difi.move.org.keystore.password | changeit | Passord til java keystore |
difi.move.org.keystore.path | file:c:/integrasjonspunkt/keystore.jks | Path til .jks fil |
Spesifikk for Digital post til virksomheter (DPV) | Digital post til alle virksomheter. | |
---|---|---|
difi.move.feature.enableDPV=true | Skrur på muligheten til å sende meldinger til private virksomhter via AltInn | true |
difi.move.dpv.username | Brukernavn for AltInn tjenesteeier | Mottas på epost til oppgitt kontaktperson |
difi.move.dpv.password | Passord for overnevnte bruker | Mottas på SMS til oppgitt kontaktperson(TIPS. Kopier og lim) |
difi.move.dpv.notificationText=din tekst | valgfri: Overstyr tekst i epost og mobilvarsel. | ikke mulig å skille mellom mobil og epost. |
Spesifikk for Digital post til offentlige virksomheter (DPO) | Digital post til virksomheter som har integrasjonspunktet. | |
difi.move.feature.enableDPO=true | Skrur på muligheten til å sende og motta DPO meldinger vi integrasjonspunktet | true |
difi.move.noarkSystem.endpointURL | URL integrasjonspunktet finner sak-/arkivsystemets BestEdu tjenester | Se eksempel i properties-filen |
difi.move.noarkSystem.type | Sak/-arkivsystem type | ephorte/P360/WebSak/mail |
difi.move.noarkSystem.username* | Brukernavn for autentisering mot sak-/arkivsystem | svc_sakark |
difi.move.noarkSystem.password* | Passord for autentisering mot sak-/arkivsystem | changeit |
difi.move.noarkSystem.domain* | Domene sakarkivsystemet kjører på | |
difi.move.dpo.username | Opprett bruker Her | |
difi.move.dpo.password | Passord du satte når du opprettet Altinn systembruker | |
difi.move.dpo.message-channel | Identifikator for meldingskanal, maks 25 tegn | test123 |
Spesifikk for Digital post til kommuner (DPF) | Digital post til kommuner via FIKS | |
difi.move.fiks.inn.username= | KS FIKS brukernavn for svarInn | (mottaker) |
difi.move.fiks.inn.password= | KS FIKS passord for svarInn | |
difi.move.fiks.ut.username= | KS FIKS brukernavn for svarUt | (avsender) |
difi.move.fiks.ut.password= | KS FIKS passord for svarUt | |
difi.move.mail.smtpHost= | Host navn | |
difi.move.mail.smtpPort= | Portnummer | |
difi.move.mail.receiverAddress= | Mailadresse til postmottaket | |
difi.move.mail.senderAddress= | avsenderadresse (intern e-postadresse) | |
difi.move.fiks.inn.mailOnError=false | Brukes for å skru av mailsending ved feil | |
difi.move.mail.username= | Brukernavn til autentisering mot epostserver | Kan stå blank om autentisering ikke kreves |
difi.move.mail.password= | Passord til autentisering mot epostserver | Kan stå blank om autentisering ikke kreves |
difi.move.feature.enableDPF=true | må være på for å bruke mailinnstillinger | |
difi.move.mail.enableAuth=false | må være på for å bruke mailinnstillinger | |
difi.move.mail.trust=${difi.move.mail.smtpHost} | la stå som dette | |
difi.move.fiks.inn.fallbackSenderOrgNr=000048755 | Alternativt: Workaround for hente inn meldinger fra svarInn utan orgnr i metadata | Sett et vilkårlig nummer (9 siffer). feks 000048755 |
Spesifikt for FIKS IO | ||
difi.move.feature.enableDPFIO= | Toggle for FIKS IO-integrasjon | (true/false) |
difi.move.fiks.io.konto-id= | FIKS IO kontoId | (UUID) |
difi.move.fiks.io.integrasjons-id= | Id til valgt integrasjon | (UUID) |
difi.move.fiks.io.integrasjons-passord= | Passord til valgt integrasjon | |
difi.move.fiks.io.sender-orgnr= | Statisk avsender-orgnr for mottatte meldinger | (orgnr) |
Kun om du skal bruke egen database | Legg inn følgende | |
difi.move.nextmove.useDbPersistence=true | skrur på bruk av database for persistering | NB! Denne må brukes sammen med ekstern database dersom en kjører med Docker |
difi.datasource.url=jdbc:mysql://databaseserver/databasenavn?serverTimezone=UTC | Path til databasen | Om du bruker ?serverTimeZone=UTC trenger du ikke den andre tidssone propertyen |
spring.jpa.properties.hibernate.jdbc.time_zone=Europe/Oslo | Sørger for å bruke rett tidssone | Bruk denne eller legg det på etter datasource url. Se over. |
difi.datasource.username= | Bruker til databasen | |
difi.datasource.password= | Passord til databasen | |
spring.jpa.hibernate.ddl-auto=update | ||
Diverse | Beskrivelse | |
difi.move.nextmove.default-ttl-hours=24 | Levetiden på en forsendelse.** |
* Autentisering mot sakarkivsystem benyttes av P360
** Dette har en default verdi på ca 24 timer, men kan overstyres av virksomheten ved hjelp av denne propertien. Når levetiden er utgått vil avsender få tilbakemelding om meldingen ikke ble levert og må sendes på nytt.
eInnsyn
Properties | Eksempel Java Keystore (JKS) | Beskrivelse |
---|---|---|
server.port | 9093 | Portnummer integrasjonspunktet skal kjøre på (default 9093) |
difi.move.org.number | 123456789 | Organisasjonsnummer til din organisasjon (9 siffer) |
difi.move.org.keystore.alias | alias | alias=navnet på virksomhetssertifikatet som ligger i JKS(case sensitivt) |
difi.move.org.keystore.password | changeit | Passord til java keystore |
difi.move.org.keystore.path | file:c:/integrasjonspunkt/keystore.jks | Path til .jks fil |
eFormidling - Digital post til innbyggere
Properties | Eksempel Java Keystore (JKS) | Beskrivelse |
---|---|---|
server.port | 9093 | Portnummer integrasjonspunktet skal kjøre på (default 9093) |
difi.move.org.number | 123456789 | Organisasjonsnummer til din organisasjon (9 siffer) |
difi.move.org.keystore.alias | alias | alias=navnet på virksomhetssertifikatet som ligger i JKS(case sensitivt) |
difi.move.org.keystore.password | changeit | Passord til java keystore |
difi.move.org.keystore.path | file:c:/integrasjonspunkt/keystore.jks | Path til .jks fil |
Påkrevd DPI properties | Denne må settes for å bruke DPI | |
---|---|---|
difi.move.feature.enableDPI=true | true | Skrur på muligheten til å sende meldinger til innbygger |
difi.move.feature.statusQueueIncludes= | DPI | Gjeld kun dersom en bruker DPI proxyklient (JAVA og .NET) |
Valgfrie DPI properties | Default verdi | Disse kan brukes |
difi.move.dpi.language | NO | |
difi.move.dpi.priority | NORMAL | |
difi.move.dpi.printSettings.shippingType | ECONOMY | |
difi.move.dpi.printSettings.inkType | BLACK_WHITE | |
difi.move.dpi.printSettings.returnType | SHREDDING | |
difi.move.dpi.mpcId | no.difi.move.integrasjonspunkt | Kanal for å lese DPI-kvitteringer |
difi.move.dpi.mpcConcurrency | 1 | Antall kanaler for å lese DPI-kvitteringer |
difi.move.dpi.mpcIdListe | difi.move.dpi.mpcIdListe[0]=id1 | Denne overstyrer kombinasjonen av mpcId + mpcConcurrency dersom den er satt. De kanalene som listes opp her vil bli brukt ved polling av DPI-kvitteringer |
difi.move.dpi.avsenderidentifikatorListe | difi.move.dpi.avsenderidentifikatorListe[0]=ai1 | Ved polling av DPI-kvitteringer brukes denne for å indikere at man kun ønsker kvitteringer med gitt avsenderindikator |
difi.move.dpi.pollWithoutAvsenderidentifikator | true | Om det skal polles etter kvitteringer uten bruk av avsenderindikator |
difi.move.dpi.clientMaxConnectionPoolSize | 10 | Antall tråder som DPI-klienten kan bruke til sending og kvittering |
difi.move.dpi.client-type | xmlsoap | Mulige verdier er: json (Ny DPI), xmlsoap (Gammel DPI) og json+xmlsoap (Ny DPI som også poller etter kvitteringer i gammel løsning). |
difi.move.dpi.receipt-type | json | Mulige verdier er: json (Ny DPI), xmlsoap (Gammel DPI). Denne brukes kun i ny DPI, men den må settes til xmlsoap for de som bruker proxy-klienten mot IP, da denne krever kvitteringer på gammelt format. |
difi.move.dpi.timeout.connect | 5000 | Connection timeout mot hjørne2 i millisekunder |
difi.move.dpi.timeout.read | 60000 | Read timeout mot hjørne2 i millisekunder |
difi.move.dpi.timeout.write | 60000 | Write timeout mot hjørne2 i millisekunder |
difi.move.dpi.certificate.recipe | classpath:/pki/recipe-dpi-norway-production.xml | Oppskriften til validering av virksomhetssertifikater |
difi.move.feature.enableDsfPrintLookup | true | Skru på / av DSF oppslag for DPI. Settes til false for å skru av |
difi.move.nextmove.statusPollingCron | 0 * * * * * | Hvor ofte en sjekker etter meldingsstatus i DPF, DPI og DPV |
difi.move.queue.concurrency | 10 | Antall tråder for ActiveMQ køen |
Valgfrie properties
Integrasjonspunktet har støtte for mange flere properties enn de som er nevnt over. Denne listen er ikke (per 01.10.21) helt utfyllende for alle properties, men vil bli utvidet:
Valgfrie properties | Eksempel verdier | Beskrivelse |
---|---|---|
difi.ssl.enabled | true | Om en bruker SSL/TLS på proxy eller sak-arkivsystem og har eigen sertifikatkjede |
difi.ssl.key-store-type | PKSC12 | |
difi.ssl.key-store | file:ssl.p12 | |
difi.ssl.key-store-password | password | |
difi.ssl.key-alias | ssl | |
ifi.security.enable | true | Basic auth på rest-endepunkt. feks /conversations |
difi.security.user.name | a | |
difi.security.user.password | abc | |
difi.datasource.url | jdbc:postgresql://localhost:5432/ip_db | URL til eigen database |
difi.datasource.username | postgres | |
difi.datasource.password | password1 | |
difi.activemq.broker-url | tcp://localhost:61616 | Overstyre activemq for å benytte egen instans av activemq |
difi.activemq.user | foo | |
difi.activemq.password | bar |
Regel:
Alle innstillinger for gitt type forsendelse(DPO/DPF/DPV) må legges inn, men det finnes noen unntak.
DPF
Du trenger alle innstillinger utenom difi.move.fiks.inn.fallbackSenderOrgNr=
. Denne er for at eFormidling skal kunne videresende post fra SvarInn som kommer fra virksomheter som ikke sender med orgnummer i metadata. Her setter du et helt valgfritt og fiktivt organisasjonsnummer. AppReceipts tilbake til dette orgnummeret blir discardet og dermed ikke sendt.
Ved bruk av denne propertyen så vil all post se ut til å komme fra samme fiktive orgnummer, så her må arkivar lese i meldingen for å se hvem den ekte avsenderen er.
DPO
Av erfaring så er av og til ikke følgende properties brukt. Dette kommer an på sak-arkivsystemet og lokalt oppsett. difi.move.noarkSystem.username
, difi.move.noarkSystem.password=
, difi.move.noarkSystem.domain=
DPV og DPF
Ikke et unntak, men også viktig å merke seg. For å koble sak-arkivsystemet til integrasjonspunktet for DPV- og DPF-forsendelser så må DPO være aktivert. difi.move.feature.enableDPO=true
. Altså for å få feks difi.move.noarkSystem.endpointURL
til å fungere
DPI
difi.move.feature.enableDPI=true
Må settes til true om du skal bruke DPI. Ingen andre DPI-spesifikke properties kreves, men en har mulighet til å overstyre ved å sette de.
NB! En forutsetning for å bruke DPI gjennom eFormidling er at sak/arkiv/fagsystem er integrert mot eFormidling 2.0 grensesnittet. Spør din leverandør om dette. Les mer her.
Hvordan opprette brukere for DPO/DPF/DPV?
For DPI kreves ingen bruker, da benyttes virksomhetssertifikatet.
HashiCorp Vault
Integrasjonspunktet støtter HashiCorp Vault for innlesing av properties og filer. Dokumentasjon på installasjon og oppsett finnes her: https://www.vaultproject.io/
Property | Eksempelverdi | Beskrivelse |
---|---|---|
vault.uri | http://localhost:8200 | Adresse til tjeneste |
vault.token | s.7NP3IvIjdpHqaInbNQD4NpIY | Token for autentisering |
vault.path | secret/move | Sti til Key/Value secrets |
vault.resource-path | secret/resource | Sti til secrets som vil lastes som filer, må være Base64-encoded. Disse kan referes i properties med prefix “vault:” |
Eksempelkonfigurasjon
Følgende eksempel viser hvordan man kan benytte vault til å referere keystore og passord.
Legg til ønskede properties og keystore i vault:
$ vault kv put secret/move difi.move.org.keystore.password=p4ss0rD difi.move.dpo.password=h3mm3L16
$ vault kv put secret/resource keystore="$(base64 keystore.jks)"
Filer må legges under egen ressurs, referert av vault.resource-path, med Base64-encoded verdi.
Keystore kan nå refereres i integrasjonspunkt-local.properties med følgende syntaks:
...
difi.move.org.keystore.alias=fiktivtalias
difi.move.org.keystore.path=vault:keystore
...
Integrasjonspunktet støtter kun token-autentisering. Token kan angis som et JVM-argument:
$ java -Dvault.token=s.7NP3IvIjdpHqaInbNQD4NpIY ... -jar integrasjonspunkt-2.2.5.jar