This is an automated email from the ASF dual-hosted git repository.
asf-gitbox-commits pushed a change to branch
graphql-authenticated-role-tenant-checks
in repository https://gitbox.apache.org/repos/asf/unomi.git
omit 61ba340c0 Challenge on every WebSocket 401, compare the Basic scheme
case-insensitively, restore idle timeout (#881)
omit a56fa2ad2 Grant the JAAS success-path unit test the role and system
access it now needs.
omit c62897a46 Check roles and tenant authority after a realm login
omit 4a41fd898 Cover public-operation authorization with integration tests
omit b4dfdaf7d Authorize the executed GraphQL operation, not the first
definition
add ab028177a UNOMI-982: Drop a condition whose optional parameter the
context does not supply (#864)
add aab6c9e5e Keep Jetty client types out of GraphQLWebSocketIT method
signatures (#882)
add 668a15fbf UNOMI-976: Restrict Groovy action upload to system
administrators (#852)
add ce3eff265 UNOMI-978: Gate cross-profile merge and systemProperties
writes on a trusted caller (#854)
add a51bf3c9e Write filtered personalization contents back onto the
request (#876)
add cf52160eb Deny public MVEL eval APIs from the scripting class loader
(#877)
add 60edd20c9 Drop credentialed CORS on the public tracker endpoints (#878)
add be15fd61a Bound diagnostic type tracking and the MVEL expression cache
(#879)
add 11edea0a3 UNOMI-977: Restrict router import/export configuration to
system administrators (#853)
add 4bbad657d Combine the profile scope with client event filters instead
of replacing it (#871)
add 58c7aebb6 Bound regular-expression evaluation in the matchesRegex
operator (#872)
add 5edd1e9b7 Authorize the executed GraphQL operation, not the first
definition (#874)
new f1b248e66 Check roles and tenant authority after a realm login
new 091bad592 Grant the JAAS success-path unit test the role and system
access it now needs.
new 3cf6ced0b Challenge on every WebSocket 401, compare the Basic scheme
case-insensitively, restore idle timeout (#881)
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (61ba340c0)
\
N -- N -- N refs/heads/graphql-authenticated-role-tenant-checks
(3cf6ced0b)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
THREAT_MODEL.md | 5 +-
.../karaf-kar/src/main/feature/feature.xml | 2 +
extensions/groovy-actions/rest/pom.xml | 10 +
.../groovy/actions/rest/GroovyActionsEndPoint.java | 5 +
.../rest/GroovyActionsEndPointRoleTest.java} | 28 +-
.../services/impl/GroovyActionsServiceImpl.java | 23 +-
.../impl/GroovyActionsServiceImplTest.java | 49 ++
...Action.groovy => fieldInitializerAction.groovy} | 22 +-
.../src/main/feature/feature.xml | 2 +
extensions/router/router-rest/pom.xml | 10 +
.../rest/ExportConfigurationServiceEndPoint.java | 3 +
.../rest/ImportConfigurationServiceEndPoint.java | 3 +
.../rest/RouterConfigurationEndPointRoleTest.java | 44 ++
.../ProfileAllEventsConnectionDataFetcher.java | 11 +-
.../test/java/org/apache/unomi/itests/AllITs.java | 4 +
.../test/java/org/apache/unomi/itests/BaseIT.java | 17 +
.../test/java/org/apache/unomi/itests/BasicIT.java | 36 +-
.../unomi/itests/ConditionRegexSafetyIT.java | 110 +++++
.../org/apache/unomi/itests/ContextServletIT.java | 237 ++++++++++
.../apache/unomi/itests/CorePersistenceITs.java | 2 +
.../GroovyActionsEndpointRoleSecurityIT.java | 113 +++++
.../org/apache/unomi/itests/InputValidationIT.java | 28 ++
.../org/apache/unomi/itests/ProfileMergeIT.java | 57 +++
.../unomi/itests/PropertiesUpdateActionIT.java | 101 +++++
.../unomi/itests/RouterEndpointRoleSecurityIT.java | 136 ++++++
.../graphql/GraphQLProfileEventsScopeIT.java | 78 ++++
.../unomi/itests/graphql/GraphQLWebSocketIT.java | 29 +-
.../graphql/security/profile-events-scope.json | 8 +
.../mvel-payload-personalization-mixed.json | 32 ++
..._valid.json => eventcollector_noSessionId.json} | 3 +-
manual/src/main/asciidoc/builtin-event-types.adoc | 11 +-
manual/src/main/asciidoc/configuration.adoc | 29 +-
.../asciidoc/migrations/migrate-3.0-to-3.1.adoc | 3 +-
manual/src/main/asciidoc/recipes.adoc | 6 +-
manual/src/main/asciidoc/samples/login-sample.adoc | 207 ++++++++-
.../main/resources/etc/custom.system.properties | 7 +-
package/src/main/resources/etc/mvel-forbid.json | 2 +-
.../ConditionESQueryBuilderDispatcher.java | 18 +-
.../ConditionOSQueryBuilderDispatcher.java | 18 +-
.../spi/conditions/ConditionContextHelper.java | 28 +-
.../impl/ConditionEvaluatorDispatcherImpl.java | 15 +-
.../spi/conditions/ConditionContextHelperTest.java | 33 +-
.../impl/ConditionEvaluatorDispatcherImplTest.java | 48 ++
.../plugins/baseplugin/actions/IdentityTrust.java | 44 ++
.../actions/MergeProfilesOnPropertyAction.java | 30 ++
.../baseplugin/actions/UpdatePropertiesAction.java | 81 +++-
.../conditions/PropertyConditionEvaluator.java | 98 +++-
.../resources/OSGI-INF/blueprint/blueprint.xml | 1 +
.../actions/ActionIdentityIntrusionTest.java | 271 +++++++++++
.../actions/MergeProfilesOnPropertyActionTest.java | 174 +++++++
.../actions/UpdatePropertiesActionTest.java | 281 ++++++++++++
.../conditions/PropertyConditionEvaluatorTest.java | 41 ++
.../request/actions/SetRemoteHostInfoAction.java | 110 ++++-
.../resources/OSGI-INF/blueprint/blueprint.xml | 3 +
.../resources/org.apache.unomi.plugins.request.cfg | 5 +
.../actions/SetRemoteHostInfoActionTest.java | 86 ++++
.../unomi/rest/endpoints/ClientEndpoint.java | 2 +-
.../unomi/rest/endpoints/ContextJsonEndpoint.java | 3 +-
.../rest/endpoints/EventsCollectorEndpoint.java | 8 +-
.../rest/service/RequestIdentifierValidator.java | 50 ++
.../rest/endpoints/ContextJsonEndpointTest.java | 28 ++
.../rest/endpoints/PublicTrackerCorsTest.java | 52 +++
.../service/RequestIdentifierValidatorTest.java | 57 +++
samples/login-integration/pom.xml | 44 +-
samples/login-integration/setup.sh | 297 ++++++++++++
.../unomi/samples/login/LoginSampleResources.java | 29 +-
.../apache/unomi/samples/login/LoginServlet.java | 399 ++++++++++++++++
.../src/main/resources/static/index.html | 75 +++
.../resources/static/javascript/login-example.js | 58 +++
.../src/main/webapp/WEB-INF/web.xml | 24 -
.../login-integration/src/main/webapp/index.html | 70 ---
.../src/main/webapp/javascript/login-example.js | 139 ------
.../unomi/samples/login/LoginServletTest.java | 502 +++++++++++++++++++++
.../apache/unomi/scripting/ExpressionFilter.java | 15 +-
.../apache/unomi/scripting/MvelScriptExecutor.java | 83 ++--
.../scripting/SecureFilteringClassLoader.java | 130 ++++--
.../internal/ExpressionFilterFactoryImpl.java | 19 +-
.../unomi/scripting/ExpressionFilterTest.java | 46 ++
.../unomi/scripting/MvelScriptExecutorTest.java | 146 +++++-
.../scripting/SecureFilteringClassLoaderTest.java | 118 +++++
.../internal/ExpressionFilterFactoryImplTest.java | 87 ++++
.../services/impl/TypeResolutionServiceImpl.java | 34 +-
.../services/impl/events/EventServiceImpl.java | 5 +-
.../impl/TypeResolutionServiceImplTest.java | 22 +
84 files changed, 4926 insertions(+), 474 deletions(-)
copy
extensions/{json-schema/services/src/main/java/org/apache/unomi/schema/api/ValidationException.java
=>
groovy-actions/rest/src/test/java/org/apache/unomi/groovy/actions/rest/GroovyActionsEndPointRoleTest.java}
(51%)
copy
extensions/groovy-actions/services/src/test/resources/META-INF/cxs/actions/{testSaveAction.groovy
=> fieldInitializerAction.groovy} (64%)
create mode 100644
extensions/router/router-rest/src/test/java/org/apache/unomi/router/rest/RouterConfigurationEndPointRoleTest.java
create mode 100644
itests/src/test/java/org/apache/unomi/itests/ConditionRegexSafetyIT.java
create mode 100644
itests/src/test/java/org/apache/unomi/itests/GroovyActionsEndpointRoleSecurityIT.java
create mode 100644
itests/src/test/java/org/apache/unomi/itests/RouterEndpointRoleSecurityIT.java
create mode 100644
itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLProfileEventsScopeIT.java
create mode 100644
itests/src/test/resources/graphql/security/profile-events-scope.json
create mode 100644
itests/src/test/resources/security/mvel-payload-personalization-mixed.json
copy itests/src/test/resources/validation/{eventcollector_valid.json =>
eventcollector_noSessionId.json} (83%)
create mode 100644
plugins/baseplugin/src/main/java/org/apache/unomi/plugins/baseplugin/actions/IdentityTrust.java
create mode 100644
plugins/baseplugin/src/test/java/org/apache/unomi/plugins/baseplugin/actions/ActionIdentityIntrusionTest.java
create mode 100644
plugins/baseplugin/src/test/java/org/apache/unomi/plugins/baseplugin/actions/MergeProfilesOnPropertyActionTest.java
create mode 100644
plugins/baseplugin/src/test/java/org/apache/unomi/plugins/baseplugin/actions/UpdatePropertiesActionTest.java
create mode 100644
plugins/request/src/test/java/org/apache/unomi/plugins/request/actions/SetRemoteHostInfoActionTest.java
create mode 100644
rest/src/main/java/org/apache/unomi/rest/service/RequestIdentifierValidator.java
create mode 100644
rest/src/test/java/org/apache/unomi/rest/endpoints/PublicTrackerCorsTest.java
create mode 100644
rest/src/test/java/org/apache/unomi/rest/service/RequestIdentifierValidatorTest.java
create mode 100755 samples/login-integration/setup.sh
copy rest/src/main/java/org/apache/unomi/rest/server/RestServerBus.java =>
samples/login-integration/src/main/java/org/apache/unomi/samples/login/LoginSampleResources.java
(59%)
create mode 100644
samples/login-integration/src/main/java/org/apache/unomi/samples/login/LoginServlet.java
create mode 100644
samples/login-integration/src/main/resources/static/index.html
create mode 100644
samples/login-integration/src/main/resources/static/javascript/login-example.js
delete mode 100644 samples/login-integration/src/main/webapp/WEB-INF/web.xml
delete mode 100644 samples/login-integration/src/main/webapp/index.html
delete mode 100644
samples/login-integration/src/main/webapp/javascript/login-example.js
create mode 100644
samples/login-integration/src/test/java/org/apache/unomi/samples/login/LoginServletTest.java
create mode 100644
scripting/src/test/java/org/apache/unomi/scripting/ExpressionFilterTest.java
create mode 100644
scripting/src/test/java/org/apache/unomi/scripting/SecureFilteringClassLoaderTest.java
create mode 100644
scripting/src/test/java/org/apache/unomi/scripting/internal/ExpressionFilterFactoryImplTest.java