diff --git a/modules/analytics/distribution/src/assembly/bin.xml b/modules/analytics/distribution/src/assembly/bin.xml index 2055b087..6153fc43 100644 --- a/modules/analytics/distribution/src/assembly/bin.xml +++ b/modules/analytics/distribution/src/assembly/bin.xml @@ -833,5 +833,12 @@ true 644 + + src/repository/jaggeryapps/portal/jaggery.conf + + ${pom.artifactId}-${pom.version}/repository/deployment/server/jaggeryapps/portal/ + + 755 + diff --git a/modules/analytics/distribution/src/repository/jaggeryapps/portal/jaggery.conf b/modules/analytics/distribution/src/repository/jaggeryapps/portal/jaggery.conf new file mode 100644 index 00000000..77030553 --- /dev/null +++ b/modules/analytics/distribution/src/repository/jaggeryapps/portal/jaggery.conf @@ -0,0 +1,187 @@ +{ + "initScripts": [ + "js/dashboard-deployer.js" + ], + "welcomeFiles": [ + "routers/tenant.jag" + ], + "errorPages": { + "500": "/controllers/error-pages/error500.html", + "404": "/controllers/error-pages/error404.html", + "401": "/controllers/error-pages/error401.html", + "405": "/controllers/error-pages/error405.html", + "403": "/controllers/error-pages/error403.html", + "400": "/controllers/error-pages/error400.html" + }, + "urlMappings": [ + { + "url": "/login-controller", + "path": "/routers/tenant.jag" + }, + { + "url": "/login", + "path": "/routers/tenant.jag" + }, + { + "url": "/logout", + "path": "/routers/tenant.jag" + }, + { + "url": "/t/*", + "path": "/routers/tenant.jag" + }, + { + "url": "/apis/*", + "path": "/routers/tenant.jag" + }, + { + "url": "/dashboards/*", + "path": "/routers/tenant.jag" + }, + { + "url": "/gadget/*", + "path": "/routers/tenant.jag" + }, + { + "url": "/layout/*", + "path": "/routers/tenant.jag" + }, + { + "url": "/assets/*", + "path": "/routers/tenant.jag" + }, + { + "url": "/create-dashboard", + "path": "/routers/tenant.jag" + }, + { + "url": "/dashboard-settings/*", + "path": "/routers/tenant.jag" + }, + { + "url": "/select-layout", + "path": "/routers/tenant.jag" + }, + { + "url": "/create-gadget", + "path": "/routers/tenant.jag" + }, + { + "url": "/upload-gadget", + "path": "/routers/tenant.jag" + }, + { + "url": "/upload-layout", + "path": "/routers/tenant.jag" + }, + { + "url": "/geojson/world/*", + "path": "/templates/geojson/world.json" + }, + { + "url": "/geojson/europe/*", + "path": "/templates/geojson/europe.json" + }, + { + "url": "/geojson/usa/*", + "path": "/templates/geojson/usa.json" + }, + { + "url": "/geojson/countryInfo/*", + "path": "/templates/geojson/countryInfo.json" + }, + { + "url": "/geojson/usaInfo/*", + "path": "/templates/geojson/usaInfo.json" + }, + { + "url": "/acs", + "path": "/controllers/acs.jag" + }, + { + "url": "/banners/*", + "path": "/routers/tenant.jag" + }, + { + "url": "/gadgets/*", + "path": "/routers/tenant.jag" + }, + { + "url": "/configs/designer.json", + "path": "/controllers/error-pages/error404.html" + } + ], + "listeners": [ + { + "class": "org.owasp.csrfguard.CsrfGuardServletContextListener" + }, + { + "class": "org.owasp.csrfguard.CsrfGuardHttpSessionListener" + } + ], + "servlets": [ + { + "name": "JavaScriptServlet", + "class": "org.owasp.csrfguard.servlet.JavaScriptServlet" + } + ], + "servletMappings": [ + { + "name": "JavaScriptServlet", + "url": "/csrf.js" + } + ], + "contextParams": [ + { + "name": "Owasp.CsrfGuard.Config", + "value": "repository/conf/security/Owasp.CsrfGuard.dashboard.properties" + } + ], + "filters": [ + { + "name": "ContentTypeBasedCachePreventionFilter", + "class": "org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventionFilter", + "params" : [ + {"name" : "patterns", "value" : "text/html\" ,application/json\" ,text/plain"}, + {"name" : "filterAction", "value" : "enforce"}, + {"name" : "httpHeaders", "value" : "Cache-Control: no-store, no-cache, must-revalidate, private"} + ] + }, + { + "name": "HttpHeaderSecurityFilter", + "class": "org.apache.catalina.filters.HttpHeaderSecurityFilter", + "params": [ + { + "name": "hstsEnabled", + "value": "false" + }, + { + "name": "antiClickJackingOption", + "value": "SAMEORIGIN" + } + ] + }, + { + "name": "TenantStoresFilter", + "class": "org.wso2.carbon.dashboard.store.filter.TenantStoreFilter" + } + ], + "filterMappings": [ + { + "name": "HttpHeaderSecurityFilter", + "url": "*" + }, + { + "name": "TenantStoresFilter", + "url": "/store/*" + }, + { + "name": "TenantStoresFilter", + "url": "/temp/*" + }, + { + "name":"ContentTypeBasedCachePreventionFilter", + "url":"*" + } + ] +} diff --git a/modules/core/distribution/src/assembly/bin.xml b/modules/core/distribution/src/assembly/bin.xml index 2b382f33..edbc77f8 100644 --- a/modules/core/distribution/src/assembly/bin.xml +++ b/modules/core/distribution/src/assembly/bin.xml @@ -1312,6 +1312,13 @@ true 644 + + src/repository/jaggeryapps/android-web-agent/jaggery.conf + + ${pom.artifactId}-${pom.version}/repository/deployment/server/jaggeryapps/android-web-agent/ + + 755 + src/repository/jaggeryapps/api-store/jaggery.conf @@ -1347,6 +1354,13 @@ 755 + + src/repository/jaggeryapps/windows-web-agent/jaggery.conf + + ${pom.artifactId}-${pom.version}/repository/deployment/server/jaggeryapps/windows-web-agent/ + + 755 + target/webapp-temp/api-application-registration.war diff --git a/modules/core/distribution/src/repository/conf/security/Owasp.CsrfGuard.Carbon.properties b/modules/core/distribution/src/repository/conf/security/Owasp.CsrfGuard.Carbon.properties index bf300027..171e8094 100644 --- a/modules/core/distribution/src/repository/conf/security/Owasp.CsrfGuard.Carbon.properties +++ b/modules/core/distribution/src/repository/conf/security/Owasp.CsrfGuard.Carbon.properties @@ -465,6 +465,14 @@ org.owasp.csrfguard.unprotected.dcrRestApi=%servletContext%/dynamic-client-web/* org.owasp.csrfguard.unprotected.deviceMgtSSOAcs=%servletContext%/devicemgt/uuf/sso/acs org.owasp.csrfguard.unprotected.deviceMgtAcs=%servletContext%/uuf/sso/acs org.owasp.csrfguard.unprotected.deviceMgtApi=%servletContext%/devicemgt/api/invoker/execute/* +org.owasp.csrfguard.unprotected.storeEventPublisher=%servletContext%/store/apis/eventpublish/* +org.owasp.csrfguard.unprotected.publisherAcs=%servletContext%/publisher/acs +org.owasp.csrfguard.unprotected.storeAcs=%servletContext%/store/acs +org.owasp.csrfguard.unprotected.apiStoreAcs=%servletContext%/api-store/acs +org.owasp.csrfguard.unprotected.portalAcs=%servletContext%/portal/acs +org.owasp.csrfguard.unprotected.socialAcs=%servletContext%/social/acs +org.owasp.csrfguard.unprotected.appStoreDevices=%servletContext%/store/apps/devices/* + #carbon org.owasp.csrfguard.unprotected.Services=%servletContext%/services/* diff --git a/modules/core/distribution/src/repository/jaggeryapps/android-web-agent/jaggery.conf b/modules/core/distribution/src/repository/jaggeryapps/android-web-agent/jaggery.conf new file mode 100644 index 00000000..7c33479a --- /dev/null +++ b/modules/core/distribution/src/repository/jaggeryapps/android-web-agent/jaggery.conf @@ -0,0 +1,58 @@ +{ + "displayName": "UUF Template App", + "logLevel": "warn", + "urlMappings": [ + { + "url": "/uuf/login", + "path": "/lib/modules/auth/login.jag" + }, + { + "url": "/uuf/logout", + "path": "/lib/modules/auth/logout.jag" + }, + { + "url": "/uuf/sso/acs", + "path": "/lib/modules/auth/acs.jag" + }, + { + "url": "/public/*", + "path": "/lib/static-files.jag" + }, + { + "url": "/unit/*", + "path": "/lib/units.jag" + }, + { + "url": "/*", + "path": "/lib/pages.jag" + } + ], + "filters": [ + { + "name": "ContentTypeBasedCachePreventionFilter", + "class": "org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventionFilter", + "params" : [ + {"name" : "patterns", "value" : "text/html\" ,application/json\" ,text/plain"}, + {"name" : "filterAction", "value" : "enforce"}, + {"name" : "httpHeaders", "value" : "Cache-Control: no-store, no-cache, must-revalidate, private"} + ] + }, + { + "name":"HttpHeaderSecurityFilter", + "class":"org.apache.catalina.filters.HttpHeaderSecurityFilter", + "params" : [{"name" : "hstsEnabled", "value" : "false"}] + } + + ], + "filterMappings": [ + { + "name":"HttpHeaderSecurityFilter", + "url":"*" + }, + { + "name":"ContentTypeBasedCachePreventionFilter", + "url":"*" + } + + ] +} diff --git a/modules/core/distribution/src/repository/jaggeryapps/api-store/jaggery.conf b/modules/core/distribution/src/repository/jaggeryapps/api-store/jaggery.conf index cd51e91f..520acab5 100644 --- a/modules/core/distribution/src/repository/jaggeryapps/api-store/jaggery.conf +++ b/modules/core/distribution/src/repository/jaggeryapps/api-store/jaggery.conf @@ -66,7 +66,7 @@ "name": "ContentTypeBasedCachePreventionFilter", "class": "org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventionFilter", "params" : [ - {"name" : "patterns", "value" : "text/html"}, + {"name" : "patterns", "value" : "text/html\" ,application/json\" ,text/plain"}, {"name" : "filterAction", "value" : "enforce"}, {"name" : "httpHeaders", "value" : "Cache-Control: no-store, no-cache, must-revalidate, private"} ] diff --git a/modules/core/distribution/src/repository/jaggeryapps/windows-web-agent/jaggery.conf b/modules/core/distribution/src/repository/jaggeryapps/windows-web-agent/jaggery.conf new file mode 100644 index 00000000..00514b3a --- /dev/null +++ b/modules/core/distribution/src/repository/jaggeryapps/windows-web-agent/jaggery.conf @@ -0,0 +1,125 @@ +{ + "displayName": "EMM Web Agent", + "logLevel": "error", + "initScripts": ["/app/modules/init.js"], + "urlMappings": [ + { + "url": "/enrollment", + "path": "/lib/pages.jag" + }, + { + "url": "/enrollment/windows/login", + "path": "/app/modules/enrollments/windows/agent-controller.jag" + }, + { + "url": "/enrollment/windows/enroll", + "path": "/app/modules/enrollments/windows/agent-enroll.jag" + }, + { + "url": "/enrollment/ios/download-certificate", + "path": "/app/modules/enrollments/ios/certificate.jag" + }, + { + "url": "/enrollment/ios/download-agent", + "path": "/app/modules/enrollments/ios/agent.jag" + }, + { + "url": "/enrollment/ios/login", + "path": "/app/modules/enrollments/ios/agent-controller.jag" + }, + { + "url": "/enrollment/ios/enroll", + "path": "/app/modules/enrollments/ios/agent-enroll.jag" + }, + { + "url": "/enrollment/ios/check", + "path": "/app/modules/enrollments/ios/agent-check.jag" + }, + { + "url": "/api/invoker/*", + "path": "/api/invoker-api.jag" + }, + { + "url": "/uuf/login", + "path": "/lib/modules/auth/login.jag" + }, + { + "url": "/uuf/logout", + "path": "/lib/modules/auth/logout.jag" + }, + { + "url": "/uuf/sso/acs", + "path": "/lib/modules/auth/acs.jag" + }, + { + "url": "/public/*", + "path": "/lib/static-files.jag" + }, + { + "url": "/unit/*", + "path": "/lib/units.jag" + }, + { + "url": "/*", + "path": "/lib/pages.jag" + } + ], + "securityConstraints": [ + { + "securityConstraint": { + "webResourceCollection": { + "name": "WINDOWS-WEB-AGENT", + "urlPatterns": [ + "/*" + ] + }, + "userDataConstraint": { + "transportGuarantee": "CONFIDENTIAL" + } + } + }, + { + "securityConstraint": { + "webResourceCollection": { + "name": "WINDOWS-WEB-AGENT-http", + "urlPatterns": [ + "/public/*", + "/enrollments/windows/*", + "/enrollment/windows/*" + ] + }, + "userDataConstraint": { + "transportGuarantee": "NONE" + } + } + } + ], + "filters": [ + { + "name": "ContentTypeBasedCachePreventionFilter", + "class": "org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventionFilter", + "params" : [ + {"name" : "patterns", "value" : "text/html\" ,application/json\" ,text/plain"}, + {"name" : "filterAction", "value" : "enforce"}, + {"name" : "httpHeaders", "value" : "Cache-Control: no-store, no-cache, must-revalidate, private"} + ] + }, + { + "name":"HttpHeaderSecurityFilter", + "class":"org.apache.catalina.filters.HttpHeaderSecurityFilter", + "params" : [{"name" : "hstsEnabled", "value" : "false"}] + } + + ], + "filterMappings": [ + { + "name":"HttpHeaderSecurityFilter", + "url":"*" + }, + { + "name":"ContentTypeBasedCachePreventionFilter", + "url":"*" + } + + ] +} diff --git a/modules/core/distribution/src/repository/resources/web-apps/web-xml/api#certificate-mgt#v1.0/web.xml b/modules/core/distribution/src/repository/resources/web-apps/web-xml/api#certificate-mgt#v1.0/web.xml index 7a8a130a..8facd4b1 100644 --- a/modules/core/distribution/src/repository/resources/web-apps/web-xml/api#certificate-mgt#v1.0/web.xml +++ b/modules/core/distribution/src/repository/resources/web-apps/web-xml/api#certificate-mgt#v1.0/web.xml @@ -87,7 +87,7 @@ org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventionFilter patterns - "text/html*","application/json*","text/plain*" + text/html" ,application/json" ,text/plain filterAction diff --git a/modules/core/distribution/src/repository/resources/web-apps/web-xml/api#identity#entitlement/web.xml b/modules/core/distribution/src/repository/resources/web-apps/web-xml/api#identity#entitlement/web.xml index 86c22b52..ef693381 100644 --- a/modules/core/distribution/src/repository/resources/web-apps/web-xml/api#identity#entitlement/web.xml +++ b/modules/core/distribution/src/repository/resources/web-apps/web-xml/api#identity#entitlement/web.xml @@ -43,7 +43,7 @@ org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventionFilter patterns - "text/html*","application/json*","text/plain*" + text/html" ,application/json" ,text/plain filterAction diff --git a/modules/core/distribution/src/repository/resources/web-apps/web-xml/api#scep-mgt#v1.0/web.xml b/modules/core/distribution/src/repository/resources/web-apps/web-xml/api#scep-mgt#v1.0/web.xml index 36b8b98e..0dfb469c 100644 --- a/modules/core/distribution/src/repository/resources/web-apps/web-xml/api#scep-mgt#v1.0/web.xml +++ b/modules/core/distribution/src/repository/resources/web-apps/web-xml/api#scep-mgt#v1.0/web.xml @@ -67,7 +67,7 @@ org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventionFilter patterns - "text/html*","application/json*","text/plain*" + text/html" ,application/json" ,text/plain filterAction diff --git a/modules/core/distribution/src/repository/resources/web-apps/web-xml/api-application-registration/web.xml b/modules/core/distribution/src/repository/resources/web-apps/web-xml/api-application-registration/web.xml index c4a51a4a..0e2a3b23 100644 --- a/modules/core/distribution/src/repository/resources/web-apps/web-xml/api-application-registration/web.xml +++ b/modules/core/distribution/src/repository/resources/web-apps/web-xml/api-application-registration/web.xml @@ -73,7 +73,7 @@ org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventionFilter patterns - "text/html*","application/json*","text/plain*" + text/html" ,application/json" ,text/plain filterAction diff --git a/modules/core/distribution/src/repository/resources/web-apps/web-xml/client-registration#v0.11/web.xml b/modules/core/distribution/src/repository/resources/web-apps/web-xml/client-registration#v0.11/web.xml index 0befeb9c..19b51c7a 100644 --- a/modules/core/distribution/src/repository/resources/web-apps/web-xml/client-registration#v0.11/web.xml +++ b/modules/core/distribution/src/repository/resources/web-apps/web-xml/client-registration#v0.11/web.xml @@ -62,7 +62,7 @@ org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventionFilter patterns - "text/html*","application/json*","text/plain*" + text/html" ,application/json" ,text/plain filterAction diff --git a/modules/core/distribution/src/repository/resources/web-apps/web-xml/oauth2/web.xml b/modules/core/distribution/src/repository/resources/web-apps/web-xml/oauth2/web.xml index d7d02a3d..02b4a9e4 100644 --- a/modules/core/distribution/src/repository/resources/web-apps/web-xml/oauth2/web.xml +++ b/modules/core/distribution/src/repository/resources/web-apps/web-xml/oauth2/web.xml @@ -36,7 +36,7 @@ org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventionFilter patterns - "text/html*","application/json*","text/plain*" + text/html" ,application/json" ,text/plain filterAction diff --git a/modules/core/distribution/src/repository/resources/web-apps/web-xml/secured-websocket/web.xml b/modules/core/distribution/src/repository/resources/web-apps/web-xml/secured-websocket/web.xml index 4e114231..ce51b848 100644 --- a/modules/core/distribution/src/repository/resources/web-apps/web-xml/secured-websocket/web.xml +++ b/modules/core/distribution/src/repository/resources/web-apps/web-xml/secured-websocket/web.xml @@ -36,7 +36,7 @@ org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventionFilter patterns - "text/html*","application/json*","text/plain*" + text/html" ,application/json" ,text/plain filterAction diff --git a/modules/core/distribution/src/repository/resources/web-apps/web-xml/shindig/web.xml b/modules/core/distribution/src/repository/resources/web-apps/web-xml/shindig/web.xml index ead0c0d4..857a8334 100644 --- a/modules/core/distribution/src/repository/resources/web-apps/web-xml/shindig/web.xml +++ b/modules/core/distribution/src/repository/resources/web-apps/web-xml/shindig/web.xml @@ -88,7 +88,7 @@ org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventionFilter patterns - "text/html*","application/json*","text/plain*" + text/html" ,application/json" ,text/plain filterAction diff --git a/modules/core/p2-profile-gen/pom.xml b/modules/core/p2-profile-gen/pom.xml index 8856f6a6..e38839e3 100644 --- a/modules/core/p2-profile-gen/pom.xml +++ b/modules/core/p2-profile-gen/pom.xml @@ -699,6 +699,9 @@ org.wso2.carbon.analytics:org.wso2.carbon.analytics.api.client.feature:${carbon.analytics.version} + + org.wso2.carbon.analytics:org.wso2.carbon.analytics.jsservice.feature:${carbon.analytics.version} + @@ -1497,6 +1500,10 @@ org.wso2.carbon.analytics.api.client.feature.group ${carbon.analytics.version} + + org.wso2.carbon.analytics.jsservice.feature.group + ${carbon.analytics.version} + diff --git a/modules/distribution/src/resources/samples/connectedcup/feature/connectedcup-feature/pom.xml b/modules/distribution/src/resources/samples/connectedcup/feature/connectedcup-feature/pom.xml index c5792c9c..9829ece0 100644 --- a/modules/distribution/src/resources/samples/connectedcup/feature/connectedcup-feature/pom.xml +++ b/modules/distribution/src/resources/samples/connectedcup/feature/connectedcup-feature/pom.xml @@ -219,7 +219,7 @@ - org.coffeeking:org.coffeeking.connectedcup.plugin:${wso2.iot.version} + org.coffeeking:org.coffeeking.connectedcup.plugin:${org.coffeeking.version} diff --git a/modules/distribution/src/resources/samples/samples-deployer.xml b/modules/distribution/src/resources/samples/samples-deployer.xml index 5010a1bd..72b03a17 100644 --- a/modules/distribution/src/resources/samples/samples-deployer.xml +++ b/modules/distribution/src/resources/samples/samples-deployer.xml @@ -50,8 +50,8 @@ p2-repo-gen - file:${basedir}/p2-repo - file:${basedir}/p2-repo + file:\${basedir}/p2-repo + file:\${basedir}/p2-repo true true @@ -69,9 +69,9 @@ default - file:${basedir}/p2-repo - file:${basedir}/p2-repo - ${basedir}/../core/repository/components + file:\${basedir}/p2-repo + file:\${basedir}/p2-repo + \${basedir}/../core/repository/components false diff --git a/pom.xml b/pom.xml index 906caba9..d2b3d001 100644 --- a/pom.xml +++ b/pom.xml @@ -1547,7 +1547,7 @@ 5.1.5 - 1.3.0 + 1.3.3-SNAPSHOT 1.3.0 ${product.iot.version} 3.1.0