Dette dokument beskriver installationen af NSP Access Handler 2. Vær opmærksom på at NSP Access Handler erstatter de tidligere Security Handler og HTTP Handler (også kaldet Log Handler), disse skal derfor fjernes fra Wildfly ifm installationen af NSP Access Handler. Vær ligeledes opmærksom på at tidligere versioner af Access Handler ikke kan køre sammen med version 2 og fremad.
NSP Acces Handler er en Wildfly Servlet Extension der intercepter alle requests og foretager et antal opgaver på request og response content.
Der produceres en access log i JSON format som indeholder informationer fra sikkerhedsheaderen mv.
Der produceres en audit log hvis den kaldende komponent anvender NSP Audit API.
Der foretages et CRL tjek af certifikatet i sikkerhedsheaderen. Tjekket er afhængig af at databasen fra CRA er tilgængelig på det valgte miljø. Det anbefales at køre CRA på andet miljø og fordele data via replikering i MySQL.
Leverancen indeholder følgende filer:
| Fil | Indhold |
|---|---|
| module.xml | Wildfly modul definition |
| accesshandler.jar | NSP Access Handler Java Archive |
| handler.properties | Opsætning af buffer størrelse |
| accesslog.properties | Opsætning af Access Log |
| audit.properties | Opsætning af Audit Log |
| cra.properties | Opsætning af CRA forbindelse |
| httpheaders.config | Konfiguration af hvilke HTTP Headers der kommer i Access Log |
| elementtexts.config | Konfiguration af hvilke XML tekst elementer der kommer i Access Log |
| attributevalues.config | Konfiguration af hvilke SAML attributter der kommer i Access Log |
| handler.skip | Liste af URL patterns som skal skippes af handleren |
| crl.skip | Liste af URL patterns som skal skippes af CRL tjekket |
I Driftvejledningen er disse filer yderligere beskrevet.
Følgende 4 Wildfly moduler skal opsættes.
Opret modulet /pack/wildfly8/modules/system/layers/base/dk/sds/nsp/accesshandler/main/ og placer filerne module.xml, accesshandler.jar og alle konfigurationsfilerne (*.properties, *.config, *.skip) fra leverancen deri.
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" name="dk.sds.nsp.accesshandler">
<resources>
<resource-root path="accesshandler.jar" />
<resource-root path="." />
</resources>
<dependencies>
<module name="javax.api"/>
<module name="dk.sds.nsp.audit"/>
<module name="org.bouncycastle" />
<module name="javax.servlet.api" />
<module name="javax.xml.stream.api" />
<module name="org.apache.commons.pool" />
<module name="io.undertow.core" services="import" />
<module name="org.apache.james.mime4j" slot="0.7.2" />
<module name="io.undertow.servlet" services="import" />
<module name="org.glassfish.javax.json" slot="1.0.4"/>
</dependencies>
</module> |
Den ovenstående module.xml er ligeledes indeholdt i leverancen.
Opret modulet /pack/wildfly8/modules/system/layers/base/dk/sds/nsp/audit/main/ og udfyld module.xml med følgende indhold:
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" name="dk.sds.nsp.audit">
<resources>
<resource-root path="nsp-audit-api.jar" />
</resources>
</module> |
Hent NSP Audit API fra Nexus, omdøb filen til nsp-audit-api.jar og placer den i modulet.
Opret modulet /pack/wildfly8/modules/system/layers/base/org/glassfish/javax/json/1.0.4/ og udfyld module.xml med følgende indhold:
<module xmlns="urn:jboss:module:1.3" name="org.glassfish.javax.json" slot="1.0.4">
<properties>
<property name="jboss.api" value="private"/>
</properties>
<dependencies>
</dependencies>
<resources>
<resource-root path="javax.json-1.0.4.jar"/>
</resources>
</module> |
Hent Glassfish JSON fra Nexus og placer filen i modulet.
Opret modulet /pack/wildfly8/modules/system/layers/base/org/apache/james/mime4j/0.7.2/ og udfyld module.xml med følgende indhold:
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.3" name="org.apache.james.mime4j" slot="0.7.2">
<resources>
<resource-root path="apache-mime4j-core-0.7.2.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
<module name="org.apache.commons.logging"/>
</dependencies>
</module> |
Hent Apache James Mime4J fra Nexus og placer filen i modulet.
NSP Access Handler skal aktiveres i filen /pack/wildfly8/standalone/configuration/standalone.xml, ligeledes skal log konfigurationen sættes op deri.
Følgende xml sniplet skal indsættes:
<global-modules>
<module name="dk.sds.nsp.accesshandler" slot="main" services="true" meta-inf="true"/>
</global-modules> |
under noden:
Der opsættes tre nye logfiler og tilsvarende kategorier ifm. NSP Access Handler
<size-rotating-file-handler name="ACCESSHANDLER_APP" autoflush="true">
<file relative-to="jboss.server.log.dir" path="accesshandler.log"/>
<append value="true"/>
<rotate-size value="1m"/>
<max-backup-index value="50"/>
<formatter>
<named-formatter name="PATTERN"/>
</formatter>
</size-rotating-file-handler>
<size-rotating-file-handler name="ACCESSLOG" autoflush="true">
<file relative-to="jboss.server.log.dir" path="access.log"/>
<append value="true"/>
<rotate-size value="1m"/>
<max-backup-index value="50"/>
<formatter>
<pattern-formatter pattern="%s"/>
</formatter>
</size-rotating-file-handler>
<size-rotating-file-handler name="AUDITLOG" autoflush="true">
<file relative-to="jboss.server.log.dir" path="audit.log"/>
<append value="true"/>
<rotate-size value="1m"/>
<max-backup-index value="50"/>
<formatter>
<pattern-formatter pattern="%s"/>
</formatter>
</size-rotating-file-handler> |
<logger category="dk.sds.nsp.accesshandler" use-parent-handlers="false">
<level name="DEBUG" />
<handlers>
<handler name="ACCESSHANDLER_APP"/>
</handlers>
</logger>
<logger category="dk.sds.nsp.access.log" use-parent-handlers="false">
<level name="DEBUG" />
<handlers>
<handler name="ACCESSLOG"/>
</handlers>
</logger>
<logger category="dk.sds.nsp.audit.log" use-parent-handlers="false">
<level name="DEBUG" />
<handlers>
<handler name="AUDITLOG"/>
</handlers>
</logger> |