2017-07-04 6 views
1

Wir versuchen, ein Projekt von Wildfly 10 zu Wildfly Swarm 2017.6 zu migrieren, und wir haben einen Stolperstein erreicht, der die Sicherheitsdomäne portiert. Unsere Sicherheitsdomäne ist wie folgt konfiguriert:Wildfly Swarm-Sicherheitsdomänenkonfiguration

<security-domain name="sec-id"> 
    <authentication-jaspi> 
    <login-module-stack name="sec-id-module-stack"> 
    <login-module code="com.obbi.domain.security.loginmodule.jwt.JWTLoginModule" flag="sufficient" module="com.obbi.domain.security"> 
    <module-option name="expectedIssuer" value="CN=DI SIT signer"/> 
    <module-option name="expectedAudience" value="Obbi"/> 
    <module-option name="allowedClockSkewInSeconds" value="30"/> 
    <module-option name="validateTokenSignature" value="false"/> 
    <module-option name="maxFutureValidityInMinutes" value="525600"/> 
    <module-option name="keyStoreFilePath" value="C:/wildfly-10.1.0.Final/standalone/configuration/keystore.jks"/> 
    <module-option name="keyStorePassword" value="obbi123"/> 
    <module-option name="validateCertificate" value="false"/> 
    <module-option name="loadSystemPrincipals" value="true"/> 
    <module-option name="loadSystemPrincipalsEndpoint" value="https://test.obbi.co.za:9443/services/v1/obbi-id?page=0&amp;size=1000&amp;username=%s"/> 
    <module-option name="skipAllValidators" value="true"/> 
    </login-module> 
    </login-module-stack> 
    <auth-module code="com.obbi.domain.security.JASPICServerAuthModule" flag="required" login-module-stack-ref="sec-id-module-stack"/> 
    </authentication-jaspi> 
</security-domain> 

Wir haben auch ein Standardmodul auf com.obbi.domain.security konfiguriert. Das Modul ist nur ein Standard-Modul wie folgt:

<module xmlns="urn:jboss:module:1.3" name="com.obbi.domain.security"> 
    <resources> 
    <resource-root path="domain-service-security-jboss-2.0-SNAPSHOT.jar"/> 
    <resource-root path="domain-service-security-client-2.0-SNAPSHOT.jar"/> 
    <resource-root path="jose4j-0.5.0.jar"/> 
    </resources> 
    <dependencies> 
    <module name="org.jboss.as.web"/> 
    <module name="org.jboss.logging"/> 
    <module name="org.picketbox"/> 
    <module name="javax.api"/> 
    <module name="javax.security.auth.message.api"/> 
    <module name="javax.servlet.api"/> 
    </dependencies> 
</module> 

Ich kann keine Wildfly Schwarm Sicherheits Fragment Zuordnungen finden, die für das Teilsystem entsprechen. Darf ich fragen, ob es sie gibt und ob es irgendwelche Unterlagen darüber gibt, ob jemand in diesem Forum helfen kann?

Grüße

Antwort

0

Ich verwende die org.wildfly.swarm.security Fraktion:

<dependency> 
    <groupId>org.wildfly.swarm</groupId> 
    <artifactId>security</artifactId> 
</dependency> 

Dokumentation finden Sie im reference guide finden, Verwendung wie folgt aussieht:

SecurityFraction 
     .defaultSecurityFraction() 
     .securityDomain(new SecurityDomain("remote").classicAuthentication(new ClassicAuthentication() 
       .loginModule(new LoginModule("Remoting") 
         .code("Remoting") 
         .flag(Flag.OPTIONAL) 
         .moduleOption("password-stacking", "useFirstPass")) 
       .loginModule(new LoginModule("RealmDirect") 
         .code("RealmDirect") 
         .flag(Flag.REQUIRED) 
         .moduleOption("password-stacking", "useFirstPass")))); 

Für Ihren Fall dem Aufruf classicAuthentication() sollte durch jaspiAuthentication() ersetzt werden. Das Login-Modul kann wie jedes andere Modul auf Swarm eingesetzt werden.

+0

Dank Robby ich es versuchen –

0

Managed es wie folgt zu konfigurieren:

swarm.fraction(new SecurityFraction() 
     .securityDomain("sec-id", (sd) -> { 
     sd.jaspiAuthentication(jaspi -> { 
     jaspi.authModule("basic", value -> { 
     value.code("com.obbi.domain.security.loginmodule.jwt.JWTLoginModule") 
     .flag(Flag.SUFFICIENT) 
     .module("com.obbi.domain.security") 
     .moduleOption("expectedIssuer", "CN=DI SIT signer") 
     .moduleOption("expectedAudience", "Obbi") 
     .moduleOption("allowedClockSkewInSeconds", "30") 
     .moduleOption("validateTokenSignature", "false") 
     .moduleOption("maxFutureValidityInMinutes", "525600") 
     .moduleOption("keyStoreFilePath", "C:/wildfly-10.1.0.Final/standalone/configuration/keystore.jks") 
     .moduleOption("keyStorePassword", "pass123") 
     .moduleOption("validateCertificate", "false") 
     .moduleOption("loadSystemPrincipals", "true") 
     .moduleOption("loadSystemPrincipalsEndpoint", "https://test.obbi.co.za:9443/services/v1/obbi-id?page=0&amp;size=1000&amp;username=%s") 
     .moduleOption("skipAllValidators", "true"); 
     }); 
     }); 
     }));