diff --git a/authz/client/pom.xml b/authz/client/pom.xml index 200790497d..0479ddf57c 100644 --- a/authz/client/pom.xml +++ b/authz/client/pom.xml @@ -17,6 +17,17 @@ KeyCloak Authz: Client API KeyCloak AuthZ: Client API + + + org.keycloak.authorization.client.* + + + org.keycloak.*;version="${project.version}", + org.apache.http.*;version=${apache.httpcomponents.version}, + *;resolution:=optional + + + org.keycloak @@ -50,4 +61,41 @@ + + + + + maven-jar-plugin + + + ${project.build.outputDirectory}/META-INF/MANIFEST.MF + + + + + org.apache.felix + maven-bundle-plugin + true + + + bundle-manifest + process-classes + + manifest + + + + + + . + ${project.name} + ${project.groupId}.${project.artifactId} + ${keycloak.osgi.import} + ${keycloak.osgi.export} + + + + + + \ No newline at end of file diff --git a/distribution/adapters/osgi/features/src/main/resources/features.xml b/distribution/adapters/osgi/features/src/main/resources/features.xml index f2e825a2b9..f3dc3e9d01 100755 --- a/distribution/adapters/osgi/features/src/main/resources/features.xml +++ b/distribution/adapters/osgi/features/src/main/resources/features.xml @@ -32,6 +32,7 @@ mvn:org.jboss.logging/jboss-logging/${jboss.logging.version} mvn:org.keycloak/keycloak-common/${project.version} mvn:org.keycloak/keycloak-core/${project.version} + mvn:org.keycloak/keycloak-authz-client/${project.version} mvn:org.keycloak/keycloak-adapter-spi/${project.version} mvn:org.keycloak/keycloak-adapter-core/${project.version} diff --git a/examples/fuse/README.md b/examples/fuse/README.md index 10232b9f42..edfba47e91 100644 --- a/examples/fuse/README.md +++ b/examples/fuse/README.md @@ -5,12 +5,15 @@ Currently Keycloak supports securing your web applications running inside [JBoss - Jetty8 adapter for both JBoss Fuse 6.2 and Apache Karaf 3, that include [Jetty8](http://eclipse.org/jetty/) server under the covers and Jetty is used for running various kinds of web applications - Jetty9 adapter for both JBoss Fuse 6.3 and Apache Karaf 4, that include [Jetty9](http://eclipse.org/jetty/) server under the covers and Jetty is used for running various kinds of web applications -The Fuse example is slightly modified version of Keycloak base demo applications. The main difference among base demo is that for Fuse demo -are applications running on separate Fuse/Karaf server. Keycloak server is supposed to run separately on Wildfly. +**WARNING:** Running your applications inside standalone Apache Karaf may work, however we are testing just with JBoss Fuse and not with standalone Karaf server. +So if you really want adapter on standalone Karaf server, it's up to you to figure exact steps to have it working. -What is supported for Fuse/Karaf is: -* Security for classic WAR applications deployed on Fuse/Karaf with [pax-war extender](https://ops4j1.jira.com/wiki/display/ops4j/Pax+Web+Extender+-+War). -* Security for servlets deployed on Fuse/Karaf as OSGI services with [pax-whiteboard extender](https://ops4j1.jira.com/wiki/display/ops4j/Pax+Web+Extender+-+Whiteboard). +The Fuse example is slightly modified version of Keycloak base demo applications. The main difference among base demo is that for Fuse demo +are applications running on separate Fuse server. Keycloak server is supposed to run separately on Wildfly. + +What is supported for Fuse is: +* Security for classic WAR applications deployed on Fuse with [pax-war extender](https://ops4j1.jira.com/wiki/display/ops4j/Pax+Web+Extender+-+War). +* Security for servlets deployed on Fuse as OSGI services with [pax-whiteboard extender](https://ops4j1.jira.com/wiki/display/ops4j/Pax+Web+Extender+-+Whiteboard). * Security for [Apache Camel](http://camel.apache.org/) Jetty endpoints running with [camel-jetty](http://camel.apache.org/jetty.html) component. * Security for [Apache CXF](http://cxf.apache.org/) endpoints running on their own separate [Jetty engine](http://cxf.apache.org/docs/jetty-configuration.html). Supports both securing JAX-RS and JAX-WS endpoints. @@ -27,7 +30,7 @@ The customer-app-fuse invokes the endpoint to get data * **cxf-jaxws** [Apache CXF](http://cxf.apache.org/) JAX-WS endpoint running on separate Jetty engine on [http://localhost:8282/PersonServiceCF](http://localhost:8282/PersonServiceCF). The product-app-fuse invokes the endpoint to get data. -Running of demo consists of 2 steps. First you need to run separate Keycloak server and then Fuse/Karaf server with the applications +Running of demo consists of 2 steps. First you need to run separate Keycloak server and then Fuse server with the applications Base steps ---------- @@ -74,25 +77,6 @@ features:addurl mvn:org.keycloak.example.demo/keycloak-fuse-example-features/1.9 features:install keycloak-fuse-6.3-example ``` -Running demo on Apache Karaf 3.0.3 ----------------------------------- - -Demo is using Apache camel and Apache CXF, which are not in standalone Karaf by default. So you will need to install feature repositories for both of them. -Next step is to add feature repository for main set of Keycloak karaf features and for the demo. Once all feature URLs are added, you just need to install `keycloak-fuse-example` feature, -which automatically installs all other needed stuff. - -Once you run Apache Karaf, you need to run these commands from Karaf console (Make sure to replace keycloak versions in the example with actual Keycloak version): - -``` -feature:repo-add mvn:org.apache.camel.karaf/apache-camel/2.15.1/xml/features -feature:repo-add mvn:org.apache.cxf.karaf/apache-cxf/3.0.4/xml/features -feature:repo-add mvn:org.keycloak/keycloak-osgi-features/1.9.4.Final/xml/features -feature:repo-add mvn:org.keycloak.example.demo/keycloak-fuse-example-features/1.9.4.Final/xml/features -feature:install keycloak-fuse-example -``` - -Now you can test example applications similarly like described for "JBoss Fuse 6.2" section. - How to secure your own applications ----------------------------------- diff --git a/examples/fuse/fuse-admin/README.md b/examples/fuse/fuse-admin/README.md index bae96d94d9..050d709250 100644 --- a/examples/fuse/fuse-admin/README.md +++ b/examples/fuse/fuse-admin/README.md @@ -70,15 +70,15 @@ may be still able to access MBeans remotely via HTTP (Hawtio). So make sure to p really protect JMX mbeans. -SSH and JMX on JBoss Fuse 6.2 and Apache Karaf 3.0.3 ----------------------------------------------------- +SSH and JMX on JBoss Fuse 6.2 +----------------------------- For SSH steps are very similar to above for 6.1. In JBoss Fuse 6.2 you may need to install `ssh` feature as it doesn't seem to be installed here by default. ``` features:install ssh ``` -For JMX, the steps are similar like for Fuse 6.1, however there is more fine grained authorization for JMX access in Fuse 6.2 and Karaf 3. +For JMX, the steps are similar like for Fuse 6.1, however there is more fine grained authorization for JMX access in Fuse 6.2. Actually if you login as user `admin`, you have very limited privileges without possibility to do much JMX operations as this user has just `admin` role, which is not allowed to do much in JMX.