Page History
...
curl -X POST 'http://localhost:8081/eas/fhir/Organization/$getReceivingOrganizationBySORId' \
-H 'Content-Type: application/fhir+json' \
-H 'Accept: application/fhir+json' \
-d '{
"resourceType" : "Parameters",
"id" : "EX-GetReceivingOrganizationBySORId-Request",
"parameter" : [
{ "name" : "sorId", "valueString" : "12345678" },
{ "name" : "messageType", "valueString" : "XDIS92" }
]
}'
Ingress/Egress
Hele servicelandskabet i EHMI, (EHMI-SIK), er tiltænkt at køre med mutual TLS - fremover mTLS.
For at abstrahere håndteringen af dette væk fra selve kerneservicen anvendes dedikerede ingress og egress services til mTLS.
Ingress
Udover at TLS terminere, forwarder den hhv. klientcertifikatet og JWT token mod EAS kerneservicen.
Derved opnåes, at selve kompleksiteten med mTLS er håndteret i ingress laget, mens applikationen selv kan håndtere authentication og validere Proof of Possession af JWT token.
Dette gøres i applikationen ved at sammenholde SHA256 thumbprint af det forwarded klientcertifikat mod cnf claim i JWT token.
ingress-nginx
Lytter på port 8079 og forwarder til 443 internt for nginx.
I udvikling er der oprettet nogle self-signed certifikater for domænenavnet eas.local
Disse er mounted via. docker compose ind i:
- /etc/ssl/server.crt (certifikat)
- /etc/ssl/server.key (privatnøgle)
For at domænenavnet eas.local kan resolves lokalt, skal følgende tilføjes til hostfilen på udviklermaskinen:
127.0.0.1 eas.local
For at nginx kan validere det anvendte klientcertifikat ved mTLS skal den offentlige del af den udstedende certifikatmyndighed mountes ind i følgende mappe i nginx:
- /etc/ssl/ca.pem
NOTE: samme certifikatmyndighed skal være at finde for kerneservicen i EAS - dog pakket ind i en java key store, jks, fil. For konfiguration heraf.... TODO.. - Yderligere information om access-handler NSP Access Handler - Driftvejledning#jtph.properties
Egress
Samme princip gør sig gældende for egress service som ingress. At abstrahere håndtering og kompleksiteten af mTLS væk fra kerneapplikationen og ud i et andet lag.
NOTE: Der skal nok laves 2 egress services - da DNS for reverse proxy nok er forskellig på SDN (keycloak) og EER (Er det på SDN?)
Release
TODO
Tilføjelse af Operation Definitions
...