Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

NSP Access Handler opbygger en ensartet Json Access Log for hvert eneste kald til platformen, med mindre der er tale om et Http Get kald uden nogen Http Body (f.eks. ved kald af status sider eller hentning af wsdl & xsd filer). Access Loggen indeholder detaljer fra Http Headers samt Soap Headers, men det er muligt at konfigurere et stort antal andre Xml elementer til at komme med i loggen, hvis/når det er relevant:.

Eksempler på indeholdet af en Access Log Entry kan være

  • HTTP Header. F.eks. den URL som servicen er kaldt på eller den SOAP Action der angiver hvilken operation der skal udføres.
  • SAML attributter. F.eks CVR nummeret på en organisation eller autorisationskoden for en medarbejder
  • XML elementer med tekstindhold. F.eks. Hvilken STS der har udsted en billet eller hvilket Audience en borgerbillet har og derved hvad den må bruges til.

...

Opretter en ny NSP Audit Log Entry og registrerer denne i den aktive tråds Nsp Audit Provider, således at kald fra komponenten til Audit API'ets metoder tilføjer auditdata heri. Når komponenten har udført sin operation tilføjes NSP Access Log Entry også til den ny NSP Audit Log Entry og det hele logges som et JSON objekt via Log4J.

Access Log Handler

...

Code Block
languagejs
titleEksempel på en Audit Log Entry
{
    "time": "2024-06-13T12:36:36.974Z",
    "category": "dk.sds.nsp.audit.log",
    "audit": {
        "timestamp": "2024-06-13T14:36:36.76+02:00",
        "components": [
            {
                "component": "SDM",
                "contexts": [
                    {
                        "context": "SKRS Replicate",
                        "information": [
                            {
                                "key": "register",
                                "type": "SPI",
                                "value": "sikrede"
                            },
                            {
                                "key": "datatype",
                                "type": "SPI",
                                "value": "sikrede"
                            },
                            {
                                "key": "version",
                                "type": "SPI",
                                "value": 1
                            },
                            {
                                "key": "registerVersion",
                                "type": "SPI",
                                "value": 1
                            },
                            {
                                "key": "max records",
                                "type": "SPI",
                                "value": 1000
                            },
                            {
                                "key": "offset",
                                "type": "SPI",
                                "value": "14960482270000021005"
                            },
                            {
                                "key": "returned elements",
                                "type": "SPI",
                                "value": 1000
                            },
                            {
                                "key": "returned first element",
                                "type": "SPI",
                                "value": "14960482270000021006"
                            },
                            {
                                "key": "returned last element",
                                "type": "SPI",
                                "value": "14960482270000022005"
                            }
                        ]
                    }
                ]
            }
        ]
    }
}


Access Log Handler

Opretter en ny NSP Access Log Entry, som lægges på Undertow's Exchange objekt ,således at de andre handlers kan tilføje information dertil. Når alle handlers er færdig logges informationerne som et JSON objekt via en konfigurerbar Log4J kategori.

Code Block
languagejs
titleEksempel på en Access Log Entry
{
    "code": 200,
    "duration": 66,
    "httpHeaders": {
        "Content-Type": "text/xml",
        "SSLSessionID": "",
        "X-Forwarded-For": "185.43.140.254, 185.43.140.254",
        "X-NSI-LB-UID": "171828185924606mBmis0yKPZEG+VxLDoW9mw=="
    },
    "httpHost": "test2.ekstern-test.nspop.dk",
    "idCardAttributes": {
        "medcom:CareProviderID": "78834412",
        "medcom:CareProviderName": "Systematic A/S",
        "medcom:ITSystemName": "Cura",
        "sosi:AuthenticationLevel": "3",
        "sosi:IDCardID": "M9/+UQ5CkOS3f8IiKr1Iig==",
        "sosi:IDCardType": "system",
        "sosi:IDCardVersion": "1.0.1"
    },
    "method": "POST",
    "path": "/stamdata-batch-copy-ws/service/StamdataReplication",
    "query": "",
    "port": 8443,
    "protocol": "http",
    "reqSize": 6855,
    "resSize": 112965,
    "soapHeaders": {
        "Issuer": "TEST2-NSP-STS",
        "MessageID": "AAABkBGUdep1GweYcY9OAVNPU0k=",
        "NameID": "SubjectDN={C=DK, OID.2.5.4.97=NTRDK-78834412, O=Systematic Care Test, SERIALNUMBER=UI:DK-O:G:2ad05894-dc65-4a9b-a47d-f11545c0d7c7, CN=Columnacuratest (funktionscertifikat)},IssuerDN={C=DK, O=Den Danske Stat, OU=Test - cti, CN=Den Danske Stat OCES udstedende-CA 1},CertSerial={514258879967773476201292624786303860058590338398}"
    },
    "threadId": "default task-55",
    "time": "2024-06-13T14:31:00.626+02:00",
    "stats": {
        "handlerDuration": 4,
        "RequestContentDuration": 0,
        "ResponseContentDuration": 0,
        "SecurityProtocolRequestDuration": 1,
        "SecurityProtocolResponseDuration": 0,
        "bufferAllocated": false,
        "usedBuffers": 1,
        "activeBuffersInPool": 1,
        "idleBuffersInPool": 380
    }
}

HTTP Request Length Handler

...