saml sp distro
This commit is contained in:
1 parent
d648ba73de
commit
76e3c6394c
95 files changed
+422
-1607
No files matched your search
-10
@@ -1,10 +0,0 @@
|
||||
<jboss-deployment-structure>
|
||||
<deployment>
|
||||
<!-- You must configure the PicketLink dependency to your deployment. The dependency above is a reference to a static module
|
||||
from JBoss EAP modules directory. -->
|
||||
<dependencies>
|
||||
<module name="org.picketlink"/>
|
||||
</dependencies>
|
||||
</deployment>
|
||||
</jboss-deployment-structure>
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<jboss-web>
|
||||
<!-- You must have a security-domain configured in your JBoss EAP instance. The security-domain is necessary to provide user
|
||||
authentication and roles mappings. In this case,we need a specific JAAS LoginModule that knows how to extract user's information from a SAML Assertion previously
|
||||
issued by the Identity Provider. -->
|
||||
<security-domain>sp</security-domain>
|
||||
|
||||
<!-- Here we just define the context path of the deployment. -->
|
||||
<context-root>sales-post-enc</context-root>
|
||||
|
||||
<!-- You must configure one of the PicketLink Authenticators to get enable SAML-based SSO. Identity Providers and Service Providers
|
||||
have different authenticators. In this case we're configuring an Service Provider, so we authenticator above is required. -->
|
||||
<valve>
|
||||
<class-name>org.picketlink.identity.federation.bindings.tomcat.sp.ServiceProviderAuthenticator</class-name>
|
||||
</valve>
|
||||
</jboss-web>
|
||||
-10
@@ -1,10 +0,0 @@
|
||||
<jboss-deployment-structure>
|
||||
<deployment>
|
||||
<!-- You must configure the PicketLink dependency to your deployment. The dependency above is a reference to a static module
|
||||
from JBoss EAP modules directory. -->
|
||||
<dependencies>
|
||||
<module name="org.picketlink"/>
|
||||
</dependencies>
|
||||
</deployment>
|
||||
</jboss-deployment-structure>
|
||||
|
||||
-1
@@ -1 +0,0 @@
|
||||
org.picketlink.identity.federation.bindings.wildfly.sp.SPServletExtension
|
||||
@@ -1,10 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<jboss-web>
|
||||
<!-- You must have a security-domain configured in your JBoss EAP instance. The security-domain is necessary to provide user
|
||||
authentication and roles mappings. In this case,we need a specific JAAS LoginModule that knows how to extract user's information from a SAML Assertion previously
|
||||
issued by the Identity Provider. -->
|
||||
<security-domain>sp</security-domain>
|
||||
|
||||
<!-- Here we just define the context path of the deployment. -->
|
||||
<context-root>sales-post-enc</context-root>
|
||||
</jboss-web>
|
||||
@@ -1,16 +0,0 @@
|
||||
# Batch script to add and configure the quickstart-domain security domain in the JBoss server
|
||||
|
||||
# Start batching commands
|
||||
batch
|
||||
|
||||
# Add and configure the security domain, then add the PicketLink SAML2LoginModule. Which wil be used to extract user's information from the SAML Assertion and authenticate the user.
|
||||
/subsystem=security/security-domain=sp:add(cache-type=default)
|
||||
/subsystem=security/security-domain=sp/authentication=classic:add
|
||||
/subsystem=security/security-domain=sp/authentication=classic/login-module=org.picketlink.identity.federation.bindings.jboss.auth.SAML2LoginModule:add(code=org.picketlink.identity.federation.bindings.jboss.auth.SAML2LoginModule,flag=required)
|
||||
|
||||
# Run the batch commands
|
||||
run-batch
|
||||
|
||||
# Reload the server configuration
|
||||
:reload
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
# Batch script to add and configure the quickstart-domain security domain in the JBoss server
|
||||
|
||||
# Start batching commands
|
||||
batch
|
||||
|
||||
# Add and configure the security domain, then add the PicketLink SAML2LoginModule. Which wil be used to extract user's information from the SAML Assertion and authenticate the user.
|
||||
/subsystem=security/security-domain=sp:add(cache-type=default)
|
||||
/subsystem=security/security-domain=sp/authentication=classic:add
|
||||
/subsystem=security/security-domain=sp/authentication=classic/login-module=org.picketlink.identity.federation.bindings.wildfly.SAML2LoginModule:add(code=org.picketlink.identity.federation.bindings.wildfly.SAML2LoginModule,flag=required)
|
||||
|
||||
# Run the batch commands
|
||||
run-batch
|
||||
|
||||
# Reload the server configuration
|
||||
:reload
|
||||
|
||||
@@ -2,16 +2,13 @@
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<groupId>org.picketlink.quickstarts</groupId>
|
||||
<artifactId>picketlink-federation-saml-sp-with-encryption</artifactId>
|
||||
<version>2.7.0.Beta2</version>
|
||||
<groupId>org.keycloak.examples</groupId>
|
||||
<artifactId>saml-post-encryption</artifactId>
|
||||
<version>1.6.0.Final-SNAPSHOT</version>
|
||||
|
||||
<packaging>war</packaging>
|
||||
|
||||
<name>PicketLink Quickstart: picketlink-federation-saml-sp-with-encryption</name>
|
||||
<description>PicketLink Quickstart: PicketLink Service Provider With a Basic Configuration using SAML HTTP POST Binding With Encryption Support</description>
|
||||
|
||||
<url>http://www.picketlink.org</url>
|
||||
<name>Keycloak SAML Adapter Example POST Binding and Assertion Encryption</name>
|
||||
|
||||
<licenses>
|
||||
<license>
|
||||
@@ -21,104 +18,25 @@
|
||||
</license>
|
||||
</licenses>
|
||||
|
||||
<properties>
|
||||
<!-- PicketLink dependency versions -->
|
||||
<version.picketlink.javaee.bom>2.7.0.Beta2</version.picketlink.javaee.bom>
|
||||
|
||||
<!-- Default target container. -->
|
||||
<target.container>jboss-eap</target.container>
|
||||
|
||||
<!-- maven-compiler-plugin -->
|
||||
<version.compiler.plugin>3.1</version.compiler.plugin>
|
||||
<!-- maven-deploy-plugin -->
|
||||
<version.deploy.plugin>2.8.1</version.deploy.plugin>
|
||||
<!-- JBoss AS dependency versions -->
|
||||
<version.jboss.maven.plugin>7.4.Final</version.jboss.maven.plugin>
|
||||
<!-- maven-war-plugin -->
|
||||
<version.war.plugin>2.1.1</version.war.plugin>
|
||||
<!-- WildFly dependency versions -->
|
||||
<version.wildfly.maven.plugin>1.0.1.Final</version.wildfly.maven.plugin>
|
||||
|
||||
<maven.compiler.target>1.6</maven.compiler.target>
|
||||
<maven.compiler.source>1.6</maven.compiler.source>
|
||||
</properties>
|
||||
|
||||
<build>
|
||||
<!-- Set the name of the war, used as the context root when the app is deployed -->
|
||||
<finalName>${project.artifactId}</finalName>
|
||||
<resources>
|
||||
<resource>
|
||||
<directory>src/main/resources</directory>
|
||||
</resource>
|
||||
<resource>
|
||||
<directory>../post-basic/src/main/resources</directory>
|
||||
</resource>
|
||||
</resources>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-deploy-plugin</artifactId>
|
||||
<version>${version.deploy.plugin}</version>
|
||||
<configuration>
|
||||
<skip>true</skip>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<artifactId>maven-war-plugin</artifactId>
|
||||
<version>${version.war.plugin}</version>
|
||||
<configuration>
|
||||
<!-- Java EE 6 doesn't require web.xml, Maven needs to catch up! -->
|
||||
<failOnMissingWebXml>false</failOnMissingWebXml>
|
||||
|
||||
<!-- We need to get the configuration resources for the provided target container. -->
|
||||
<classifier>${target.container}</classifier>
|
||||
|
||||
<!-- Instead of duplicating resources for each example application, we just reuse all resources from the
|
||||
base application. -->
|
||||
<webResources>
|
||||
<resource>
|
||||
<directory>src/main/webapp</directory>
|
||||
</resource>
|
||||
<resource>
|
||||
<directory>../post-basic/src/main/webapp</directory>
|
||||
</resource>
|
||||
<resource>
|
||||
<directory>${basedir}/conf/${target.container}</directory>
|
||||
</resource>
|
||||
</webResources>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<!-- JBoss AS plugin to deploy war -->
|
||||
<plugin>
|
||||
<groupId>org.jboss.as.plugins</groupId>
|
||||
<artifactId>jboss-as-maven-plugin</artifactId>
|
||||
<version>${version.jboss.maven.plugin}</version>
|
||||
<configuration>
|
||||
<filename>${project.build.finalName}-${target.container}.${project.packaging}</filename>
|
||||
<skip>false</skip>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.wildfly.plugins</groupId>
|
||||
<artifactId>wildfly-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<skip>false</skip>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
<profiles>
|
||||
<profile>
|
||||
<id>wildfly</id>
|
||||
<properties>
|
||||
<target.container>wildfly</target.container>
|
||||
</properties>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.wildfly.plugins</groupId>
|
||||
<artifactId>wildfly-maven-plugin</artifactId>
|
||||
<version>${version.wildfly.maven.plugin}</version>
|
||||
<configuration>
|
||||
<filename>${project.build.finalName}-${target.container}.${project.packaging}</filename>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
</profiles>
|
||||
|
||||
</project>
|
||||
@@ -1,13 +0,0 @@
|
||||
# Batch script to remove the quickstart-domain security domain from the JBoss server
|
||||
|
||||
# Start batching commands
|
||||
batch
|
||||
|
||||
# Remove the security domain
|
||||
/subsystem=security/security-domain=sp:remove
|
||||
|
||||
# Run the batch commands
|
||||
run-batch
|
||||
|
||||
# Reload the server configuration
|
||||
:reload
|
||||
+45
@@ -0,0 +1,45 @@
|
||||
<keycloak-saml-adapter>
|
||||
<SP entityID="http://localhost:8080/sales-post-enc/"
|
||||
sslPolicy="EXTERNAL"
|
||||
nameIDPolicyFormat="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified"
|
||||
logoutPage="/logout.jsp"
|
||||
forceAuthentication="false">
|
||||
<Keys>
|
||||
<Key signing="true" encryption="true">
|
||||
<KeyStore resource="/WEB-INF/keystore.jks" password="store123">
|
||||
<PrivateKey alias="http://localhost:8080/sales-post-enc/" password="test123"/>
|
||||
<Certificate alias="http://localhost:8080/sales-post-enc/"/>
|
||||
</KeyStore>
|
||||
</Key>
|
||||
</Keys>
|
||||
<PrincipalNameMapping policy="FROM_NAME_ID"/>
|
||||
<RoleMapping>
|
||||
<Attribute name="Role"/>
|
||||
</RoleMapping>
|
||||
<IDP entityID="idp">
|
||||
<SingleSignOnService signRequest="true"
|
||||
validateResponseSignature="true"
|
||||
requestBinding="POST"
|
||||
bindingUrl="http://localhost:8080/auth/realms/saml-demo/protocol/saml"
|
||||
/>
|
||||
|
||||
<SingleLogoutService
|
||||
validateRequestSignature="true"
|
||||
validateResponseSignature="true"
|
||||
signRequest="true"
|
||||
signResponse="true"
|
||||
requestBinding="POST"
|
||||
responseBinding="POST"
|
||||
postBindingUrl="http://localhost:8080/auth/realms/saml-demo/protocol/saml"
|
||||
redirectBindingUrl="http://localhost:8080/auth/realms/saml-demo/protocol/saml"
|
||||
/>
|
||||
<Keys>
|
||||
<Key signing="true" >
|
||||
<KeyStore resource="/WEB-INF/keystore.jks" password="store123">
|
||||
<Certificate alias="saml-demo"/>
|
||||
</KeyStore>
|
||||
</Key>
|
||||
</Keys>
|
||||
</IDP>
|
||||
</SP>
|
||||
</keycloak-saml-adapter>
|
||||
File renamed without changes.
@@ -0,0 +1,50 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
|
||||
version="3.0">
|
||||
|
||||
<module-name>sales-post-enc</module-name>
|
||||
|
||||
<!-- Define a Security Constraint on this Application -->
|
||||
<security-constraint>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>SALES Application</web-resource-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</web-resource-collection>
|
||||
<auth-constraint>
|
||||
<role-name>manager</role-name>
|
||||
</auth-constraint>
|
||||
</security-constraint>
|
||||
|
||||
<!-- Define a security constraint that gives unlimted access to freezone -->
|
||||
<security-constraint>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>freezone</web-resource-name>
|
||||
<url-pattern>/freezone/*</url-pattern>
|
||||
</web-resource-collection>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>images</web-resource-name>
|
||||
<url-pattern>/images/*</url-pattern>
|
||||
</web-resource-collection>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>css</web-resource-name>
|
||||
<url-pattern>/css/*</url-pattern>
|
||||
</web-resource-collection>
|
||||
</security-constraint>
|
||||
|
||||
<!-- Define the Login Configuration for this Application -->
|
||||
<login-config>
|
||||
<auth-method>KEYCLOAK-SAML</auth-method>
|
||||
<realm-name>Tomcat SALES Application</realm-name>
|
||||
<form-login-config>
|
||||
<form-login-page>/jsp/login.jsp</form-login-page>
|
||||
<form-error-page>/jsp/loginerror.jsp</form-error-page>
|
||||
</form-login-config>
|
||||
</login-config>
|
||||
|
||||
<!-- Security roles referenced by this web application -->
|
||||
<security-role>
|
||||
<description>The role that is required to log in to the Manager Application</description>
|
||||
<role-name>manager</role-name>
|
||||
</security-role>
|
||||
</web-app>
|
||||
@@ -0,0 +1,78 @@
|
||||
/*
|
||||
~ JBoss, Home of Professional Open Source.
|
||||
~ Copyright (c) 2011, Red Hat, Inc., and individual contributors
|
||||
~ as indicated by the @author tags. See the copyright.txt file in the
|
||||
~ distribution for a full listing of individual contributors.
|
||||
~
|
||||
~ This is free software; you can redistribute it and/or modify it
|
||||
~ under the terms of the GNU Lesser General Public License as
|
||||
~ published by the Free Software Foundation; either version 2.1 of
|
||||
~ the License, or (at your option) any later version.
|
||||
~
|
||||
~ This software is distributed in the hope that it will be useful,
|
||||
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
~ Lesser General Public License for more details.
|
||||
~
|
||||
~ You should have received a copy of the GNU Lesser General Public
|
||||
~ License along with this software; if not, write to the Free
|
||||
~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
|
||||
~ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
|
||||
*/
|
||||
body {
|
||||
background: url(images/rh_bg.png) repeat-x scroll 0 0 #F3F3F3;
|
||||
color: #555555;
|
||||
font: 12px/1.4 "Lucida Sans Unicode", "Lucida Grande", sans-serif;
|
||||
}
|
||||
|
||||
.loginBox {
|
||||
position:absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
width:30em;
|
||||
height:3em;
|
||||
margin-top: -9em; /*set to a negative number 1/2 of your height*/
|
||||
margin-left: -15em; /*set to a negative number 1/2 of your width*/
|
||||
border: 1px solid #ccc;
|
||||
background-color: #f3f3f3;
|
||||
}
|
||||
|
||||
.wrapper {
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
width: 50em;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
a {
|
||||
text-decoration: none;
|
||||
color: #5e8a9a;
|
||||
}
|
||||
|
||||
h1 {
|
||||
padding-top: 20px;
|
||||
color: #7b1e1e;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
text-decoration: underline;
|
||||
color: #8ec6d9;
|
||||
}
|
||||
|
||||
.content {
|
||||
margin-left: 230px;
|
||||
}
|
||||
|
||||
.dualbrand {
|
||||
padding-top: 20px;
|
||||
}
|
||||
|
||||
.as7 {
|
||||
float: left;
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.note {
|
||||
font-size: 8pt;
|
||||
color: #aaaaaa;
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
<!--
|
||||
~ JBoss, Home of Professional Open Source.
|
||||
~ Copyright (c) 2011, Red Hat, Inc., and individual contributors
|
||||
~ as indicated by the @author tags. See the copyright.txt file in the
|
||||
~ distribution for a full listing of individual contributors.
|
||||
~
|
||||
~ This is free software; you can redistribute it and/or modify it
|
||||
~ under the terms of the GNU Lesser General Public License as
|
||||
~ published by the Free Software Foundation; either version 2.1 of
|
||||
~ the License, or (at your option) any later version.
|
||||
~
|
||||
~ This software is distributed in the hope that it will be useful,
|
||||
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
~ Lesser General Public License for more details.
|
||||
~
|
||||
~ You should have received a copy of the GNU Lesser General Public
|
||||
~ License along with this software; if not, write to the Free
|
||||
~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
|
||||
~ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
|
||||
-->
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title>PicketLink Example Application</title>
|
||||
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
|
||||
<link rel="StyleSheet" href="css/idp.css" type="text/css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<img src="images/picketlink-banner-1180px.png"
|
||||
style="margin-top: -10px; margin-left: -10px; opacity: 0.4; filter: alpha(opacity = 40);" />
|
||||
<div class="loginBox"
|
||||
style="margin-bottom: 80px; border: 1px solid #000000; width: 440px; background-color: #F8F8F8; align: center;">
|
||||
<center>
|
||||
<p>
|
||||
<b>The Service Provider could not process the request.</b>
|
||||
</p>
|
||||
</center>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 1.3 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 50 KiB |
Executable
BIN
Binary file not shown.
|
After Width: | Height: | Size: 81 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 577 B |
@@ -0,0 +1,15 @@
|
||||
<div align="center">
|
||||
<h1>SalesTool</h1>
|
||||
<br/>
|
||||
Welcome to the Sales Tool, <%=request.getUserPrincipal().getName()%>
|
||||
<br/>
|
||||
<a href="?GLO=true">Click to LogOut</a>
|
||||
<br/>
|
||||
<br/>
|
||||
Here is your sales chart:
|
||||
<br/>
|
||||
<img src="piechart.gif"/>
|
||||
|
||||
<br/>
|
||||
|
||||
</div>
|
||||
@@ -0,0 +1,43 @@
|
||||
<!--
|
||||
~ JBoss, Home of Professional Open Source.
|
||||
~ Copyright (c) 2011, Red Hat, Inc., and individual contributors
|
||||
~ as indicated by the @author tags. See the copyright.txt file in the
|
||||
~ distribution for a full listing of individual contributors.
|
||||
~
|
||||
~ This is free software; you can redistribute it and/or modify it
|
||||
~ under the terms of the GNU Lesser General Public License as
|
||||
~ published by the Free Software Foundation; either version 2.1 of
|
||||
~ the License, or (at your option) any later version.
|
||||
~
|
||||
~ This software is distributed in the hope that it will be useful,
|
||||
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
~ Lesser General Public License for more details.
|
||||
~
|
||||
~ You should have received a copy of the GNU Lesser General Public
|
||||
~ License along with this software; if not, write to the Free
|
||||
~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
|
||||
~ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
|
||||
-->
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title>Keycloak SAML Client Adapter Example Application</title>
|
||||
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
|
||||
<link rel="StyleSheet" href="css/idp.css" type="text/css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<img src="images/keycloak_default_banner-1180px.png"
|
||||
style="margin-top: -10px; margin-left: -10px; opacity: 0.4; filter: alpha(opacity = 40);" />
|
||||
<div class="loginBox"
|
||||
style="margin-bottom: 80px; border: 1px solid #000000; width: 440px; background-color: #F8F8F8; align: center;">
|
||||
<center>
|
||||
<p>
|
||||
<b>Logged out. <a href="<%= request.getContextPath() %>">Login</a> again.</b>
|
||||
</p>
|
||||
</center>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 21 KiB |
Reference in new issue
Block a user