mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-11-06 02:52:22 +00:00
improved test frame for user store / access control store merging
This commit is contained in:
1 parent
0dda3fd7a9
commit
fd9a15bb58
15 files changed
+204
-20
No files matched your search
+62
@@ -0,0 +1,62 @@
|
||||
package com.sap.sse.security.storemerging;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.UUID;
|
||||
|
||||
import org.bson.Document;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
import com.mongodb.MongoClientURI;
|
||||
import com.mongodb.client.MongoCollection;
|
||||
import com.mongodb.client.MongoDatabase;
|
||||
import com.sap.sse.common.Util.Pair;
|
||||
import com.sap.sse.mongodb.MongoDBConfiguration;
|
||||
import com.sap.sse.security.interfaces.AccessControlStore;
|
||||
import com.sap.sse.security.interfaces.UserStore;
|
||||
import com.sap.sse.security.shared.UserGroupManagementException;
|
||||
import com.sap.sse.security.shared.UserManagementException;
|
||||
import com.sap.sse.security.storemerging.test.MongoDBFiller;
|
||||
import com.sap.sse.security.userstore.mongodb.impl.CollectionNames;
|
||||
|
||||
public class TestSimpleUserAndPreferenceMerge {
|
||||
private final static String importSourceMongoDbUri = "mongodb://localhost/"+UUID.randomUUID();
|
||||
private final static String defaultCreationGroupNameForSource = "dummy-default-creation-group-for-source";
|
||||
private final static String defaultCreationGroupNameForTarget = "dummy-default-creation-group-for-target";
|
||||
private MongoDBConfiguration cfgForSource;
|
||||
private MongoDatabase targetDb;
|
||||
private MongoDBConfiguration cfgForTarget;
|
||||
|
||||
@Before
|
||||
public void setUp() throws IOException {
|
||||
cfgForTarget = MongoDBConfiguration.getDefaultTestConfiguration();
|
||||
targetDb = cfgForTarget.getService().getDB();
|
||||
fill("target1", targetDb);
|
||||
cfgForSource = new MongoDBConfiguration(new MongoClientURI(importSourceMongoDbUri));
|
||||
fill("source1", cfgForSource.getService().getDB());
|
||||
}
|
||||
|
||||
private void fill(final String variant, final MongoDatabase db) throws IOException {
|
||||
for (final CollectionNames collectionName : new CollectionNames[] { CollectionNames.USERS,
|
||||
CollectionNames.USER_GROUPS, CollectionNames.OWNERSHIPS, CollectionNames.ACCESS_CONTROL_LISTS,
|
||||
CollectionNames.PREFERENCES }) {
|
||||
fill(collectionName, variant, db);
|
||||
}
|
||||
}
|
||||
|
||||
private void fill(final CollectionNames collectionName, final String variant, final MongoDatabase db)
|
||||
throws IOException {
|
||||
final MongoDBFiller filler = new MongoDBFiller();
|
||||
final MongoCollection<Document> collection = db.getCollection(collectionName.name());
|
||||
collection.drop();
|
||||
filler.fill(collection, "/resources/"+collectionName.name()+"_"+variant+".json");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testImportFromSource1ToTarget1() throws UserGroupManagementException, UserManagementException {
|
||||
final SecurityStoreMerger merger = new SecurityStoreMerger(cfgForTarget, defaultCreationGroupNameForTarget);
|
||||
final Pair<UserStore, AccessControlStore> sourceStores = merger.importStores(cfgForSource, defaultCreationGroupNameForSource);
|
||||
final UserStore targetUserStore = merger.getTargetUserStore();
|
||||
final AccessControlStore targetAccessControlStore = merger.getTargetAccessControlStore();
|
||||
}
|
||||
}
|
||||
+10
-1
@@ -1,6 +1,7 @@
|
||||
package com.sap.sse.security.storemerging.test;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
@@ -24,7 +25,7 @@ public class TestMongoDBFiller {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testFiller() throws IOException {
|
||||
public void testUsersFiller() throws IOException {
|
||||
final MongoCollection<Document> testCollection = MongoDBService.INSTANCE.getDB().getCollection(ODD_FILLER_TEST_COLLECTION_NAME);
|
||||
filler.fill(testCollection, "/resources/USERS_target1.json");
|
||||
final Document singleResult = testCollection.find(new Document(FieldNames.User.NAME.name(), "uhl3")).first();
|
||||
@@ -32,4 +33,12 @@ public class TestMongoDBFiller {
|
||||
final Document secondSingleResult = testCollection.find(new Document(FieldNames.User.NAME.name(), "axel")).first();
|
||||
assertEquals("axel.uhl@gmx.de", secondSingleResult.get(FieldNames.User.EMAIL.name()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testAccessControlStoreFiller() throws IOException {
|
||||
final MongoCollection<Document> testCollection = MongoDBService.INSTANCE.getDB().getCollection(ODD_FILLER_TEST_COLLECTION_NAME);
|
||||
filler.fill(testCollection, "/resources/ACCESS_CONTROL_STORE_target1.json");
|
||||
final Document singleResult = testCollection.find(new Document(FieldNames.Ownership.OBJECT_ID.name(), "ROLE_DEFINITION/244cb84c-2b8a-4557-b175-db963072cfbc")).first();
|
||||
assertNotNull(singleResult.get(FieldNames.AccessControlList.PERMISSION_MAP.name()));
|
||||
}
|
||||
}
|
||||
-10
@@ -1,10 +0,0 @@
|
||||
package com.sap.sse.security.storemerging.test;
|
||||
|
||||
import org.junit.Before;
|
||||
|
||||
public class TestSimpleUserAndPreferenceMerge {
|
||||
@Before
|
||||
public void setUp() {
|
||||
|
||||
}
|
||||
}
|
||||
Executable
+7
@@ -0,0 +1,7 @@
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cbc"), "OBJECT_ID" : "ROLE_DEFINITION/244cb84c-2b8a-4557-b175-db963072cfbc", "OBJECT_DISPLAY_NAME" : null, "PERMISSION_MAP" : [ { "PERMISSION_MAP_USER_GROUP_ID" : null, "PERMISSION_MAP_ACTIONS" : [ "READ" ] } ] }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cc1"), "OBJECT_ID" : "ROLE_DEFINITION/91c88a11-c977-4c24-b0a6-15bac0525764", "OBJECT_DISPLAY_NAME" : null, "PERMISSION_MAP" : [ { "PERMISSION_MAP_USER_GROUP_ID" : null, "PERMISSION_MAP_ACTIONS" : [ "READ" ] } ] }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cc6"), "OBJECT_ID" : "ROLE_DEFINITION/ad1d5148-b13d-4464-90c4-7c396e4d4e2e", "OBJECT_DISPLAY_NAME" : null, "PERMISSION_MAP" : [ { "PERMISSION_MAP_USER_GROUP_ID" : null, "PERMISSION_MAP_ACTIONS" : [ "READ" ] } ] }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934ccb"), "OBJECT_ID" : "ROLE_DEFINITION/2e22583b-c9c1-4ee4-8231-e8e320a8a411", "OBJECT_DISPLAY_NAME" : null, "PERMISSION_MAP" : [ { "PERMISSION_MAP_USER_GROUP_ID" : null, "PERMISSION_MAP_ACTIONS" : [ "READ" ] } ] }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cd0"), "OBJECT_ID" : "ROLE_DEFINITION/dc77e3d1-d405-435e-8699-ce7245f6fd7a", "OBJECT_DISPLAY_NAME" : null, "PERMISSION_MAP" : [ { "PERMISSION_MAP_USER_GROUP_ID" : null, "PERMISSION_MAP_ACTIONS" : [ "READ" ] } ] }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cf2"), "OBJECT_ID" : "PERMISSION_ASSOCIATION/<all>\\/USER\\\\/CREATE", "OBJECT_DISPLAY_NAME" : null, "PERMISSION_MAP" : [ { "PERMISSION_MAP_USER_GROUP_ID" : null, "PERMISSION_MAP_ACTIONS" : [ "READ" ] } ] }
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d19"), "OBJECT_ID" : "ROLE_DEFINITION/c42948df-517b-45cb-9fa9-d1e79f18e115", "OBJECT_DISPLAY_NAME" : null, "PERMISSION_MAP" : [ { "PERMISSION_MAP_USER_GROUP_ID" : null, "PERMISSION_MAP_ACTIONS" : [ "READ" ] } ] }
|
||||
Executable
+7
@@ -0,0 +1,7 @@
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cbc"), "OBJECT_ID" : "ROLE_DEFINITION/244cb84c-2b8a-4557-b175-db963072cfbc", "OBJECT_DISPLAY_NAME" : null, "PERMISSION_MAP" : [ { "PERMISSION_MAP_USER_GROUP_ID" : null, "PERMISSION_MAP_ACTIONS" : [ "READ" ] } ] }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cc1"), "OBJECT_ID" : "ROLE_DEFINITION/91c88a11-c977-4c24-b0a6-15bac0525764", "OBJECT_DISPLAY_NAME" : null, "PERMISSION_MAP" : [ { "PERMISSION_MAP_USER_GROUP_ID" : null, "PERMISSION_MAP_ACTIONS" : [ "READ" ] } ] }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cc6"), "OBJECT_ID" : "ROLE_DEFINITION/ad1d5148-b13d-4464-90c4-7c396e4d4e2e", "OBJECT_DISPLAY_NAME" : null, "PERMISSION_MAP" : [ { "PERMISSION_MAP_USER_GROUP_ID" : null, "PERMISSION_MAP_ACTIONS" : [ "READ" ] } ] }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934ccb"), "OBJECT_ID" : "ROLE_DEFINITION/2e22583b-c9c1-4ee4-8231-e8e320a8a411", "OBJECT_DISPLAY_NAME" : null, "PERMISSION_MAP" : [ { "PERMISSION_MAP_USER_GROUP_ID" : null, "PERMISSION_MAP_ACTIONS" : [ "READ" ] } ] }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cd0"), "OBJECT_ID" : "ROLE_DEFINITION/dc77e3d1-d405-435e-8699-ce7245f6fd7a", "OBJECT_DISPLAY_NAME" : null, "PERMISSION_MAP" : [ { "PERMISSION_MAP_USER_GROUP_ID" : null, "PERMISSION_MAP_ACTIONS" : [ "READ" ] } ] }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cf2"), "OBJECT_ID" : "PERMISSION_ASSOCIATION/<all>\\/USER\\\\/CREATE", "OBJECT_DISPLAY_NAME" : null, "PERMISSION_MAP" : [ { "PERMISSION_MAP_USER_GROUP_ID" : null, "PERMISSION_MAP_ACTIONS" : [ "READ" ] } ] }
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d19"), "OBJECT_ID" : "ROLE_DEFINITION/c42948df-517b-45cb-9fa9-d1e79f18e115", "OBJECT_DISPLAY_NAME" : null, "PERMISSION_MAP" : [ { "PERMISSION_MAP_USER_GROUP_ID" : null, "PERMISSION_MAP_ACTIONS" : [ "READ" ] } ] }
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cb4"), "OBJECT_ID" : "USER/<all>", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"SEsB9kahnW2VVTitLEUHuQ=="), "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cb9"), "OBJECT_ID" : "PERMISSION_ASSOCIATION/<all>\\/USER\\\\/CREATE", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"SEsB9kahnW2VVTitLEUHuQ=="), "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cd7"), "OBJECT_ID" : "USER/admin", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : null, "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cda"), "OBJECT_ID" : "USER_GROUP/8b7991cd-7ce8-45d2-95cf-5a3591e00f11", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "admin-tenant" }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cdd"), "OBJECT_ID" : "USER_GROUP/2bd37bdf-bdae-4179-9f19-bdcd42aa7afd", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "unknown server name-server" }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934ce0"), "OBJECT_ID" : "USER_GROUP/550f6033-ab13-49d9-bf4f-a641d8b41323", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "admin-tenant" }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934ce3"), "OBJECT_ID" : "ROLE_DEFINITION/244cb84c-2b8a-4557-b175-db963072cfbc", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "spectator" }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934ce6"), "OBJECT_ID" : "ROLE_DEFINITION/91c88a11-c977-4c24-b0a6-15bac0525764", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "moderator" }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934ce9"), "OBJECT_ID" : "ROLE_DEFINITION/ad1d5148-b13d-4464-90c4-7c396e4d4e2e", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "user" }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cec"), "OBJECT_ID" : "ROLE_DEFINITION/2e22583b-c9c1-4ee4-8231-e8e320a8a411", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "mediaeditor" }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cef"), "OBJECT_ID" : "ROLE_DEFINITION/dc77e3d1-d405-435e-8699-ce7245f6fd7a", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "admin" }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cf7"), "OBJECT_ID" : "SERVER/unknown server name", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "SERVER/unknown server name" }
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d14"), "OBJECT_ID" : "ROLE_DEFINITION/c42948df-517b-45cb-9fa9-d1e79f18e115", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"SEsB9kahnW2VVTitLEUHuQ=="), "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d25"), "OBJECT_ID" : "ROLE_ASSOCIATION/admin\\/ad1d5148-b13d-4464-90c4-7c396e4d4e2e\\/admin\\/null", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : null, "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d2f"), "OBJECT_ID" : "ROLE_ASSOCIATION/admin\\/ad1d5148-b13d-4464-90c4-7c396e4d4e2e\\/null\\/6cc11275-8fbf-4f29-b9a3-6f20ed264b91", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : null, "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d32"), "OBJECT_ID" : "USER_GROUP/6cc11275-8fbf-4f29-b9a3-6f20ed264b91", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : BinData(3,"KU+/j3USwWyRSybtIG+juQ=="), "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d3f"), "OBJECT_ID" : "ROLE_ASSOCIATION/admin\\/dc77e3d1-d405-435e-8699-ce7245f6fd7a\\/null\\/null", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : null, "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d80"), "OBJECT_ID" : "WIND_ESTIMATION_MODELS/unknown server name", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"rU3mZkIKAPCQHdkh9Ai0kQ=="), "OBJECT_DISPLAY_NAME" : "Wind estimation models for server unknown server name" }
|
||||
{ "_id" : ObjectId("5da986f7bcba5dcf9b934dd2"), "OBJECT_ID" : "ROLE_ASSOCIATION/admin\\/ad1d5148-b13d-4464-90c4-7c396e4d4e2e\\/null\\/100fd8b5-2ddf-4b70-8115-d195fc9abf60", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : null, "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986f7bcba5dcf9b934dd5"), "OBJECT_ID" : "USER_GROUP/100fd8b5-2ddf-4b70-8115-d195fc9abf60", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : BinData(3,"cEvfLbXYDxBgv5r8ldEVgQ=="), "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da9873dbcba5dcf9b934e6d"), "OBJECT_ID" : "ROLE_ASSOCIATION/admin\\/ad1d5148-b13d-4464-90c4-7c396e4d4e2e\\/null\\/f3b03b3f-0790-4194-a9b5-85860682bf79", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : null, "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da9873dbcba5dcf9b934e70"), "OBJECT_ID" : "USER_GROUP/f3b03b3f-0790-4194-a9b5-85860682bf79", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : BinData(3,"lEGQBz87sPN5v4IGhoW1qQ=="), "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da98742bcba5dcf9b934eb6"), "OBJECT_ID" : "EVENT/0fd47877-5913-46d3-8a42-6cbeeaa6a0d5", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : BinData(3,"KU3+yAcof3xfzrVBrJg4jg=="), "OBJECT_DISPLAY_NAME" : "<ppp> loggingsession" }
|
||||
{ "_id" : ObjectId("5da98743bcba5dcf9b934ec3"), "OBJECT_ID" : "LEADERBOARD_GROUP/8079995d-4b7d-47bd-b622-d287c0c62933", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : BinData(3,"KU3+yAcof3xfzrVBrJg4jg=="), "OBJECT_DISPLAY_NAME" : "<ppp> loggingsession" }
|
||||
{ "_id" : ObjectId("5da98743bcba5dcf9b934ecd"), "OBJECT_ID" : "REGATTA/<ppp> loggingsession", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : BinData(3,"KU3+yAcof3xfzrVBrJg4jg=="), "OBJECT_DISPLAY_NAME" : "<ppp> loggingsession" }
|
||||
{ "_id" : ObjectId("5da98743bcba5dcf9b934ed5"), "OBJECT_ID" : "LEADERBOARD/<ppp> loggingsession", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : BinData(3,"KU3+yAcof3xfzrVBrJg4jg=="), "OBJECT_DISPLAY_NAME" : "<ppp> loggingsession" }
|
||||
{ "_id" : ObjectId("5da98743bcba5dcf9b934f1e"), "OBJECT_ID" : "ROLE_ASSOCIATION/admin\\/ad1d5148-b13d-4464-90c4-7c396e4d4e2e\\/null\\/7e0dff15-1d47-46f0-858e-0182aba51b05", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : null, "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da98743bcba5dcf9b934f21"), "OBJECT_ID" : "USER_GROUP/7e0dff15-1d47-46f0-858e-0182aba51b05", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : BinData(3,"8EZHHRX/DX4FG6WrggGOhQ=="), "OBJECT_DISPLAY_NAME" : null }
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cb4"), "OBJECT_ID" : "USER/<all>", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"SEsB9kahnW2VVTitLEUHuQ=="), "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cb9"), "OBJECT_ID" : "PERMISSION_ASSOCIATION/<all>\\/USER\\\\/CREATE", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"SEsB9kahnW2VVTitLEUHuQ=="), "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cd7"), "OBJECT_ID" : "USER/admin", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : null, "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cda"), "OBJECT_ID" : "USER_GROUP/8b7991cd-7ce8-45d2-95cf-5a3591e00f11", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "admin-tenant" }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cdd"), "OBJECT_ID" : "USER_GROUP/2bd37bdf-bdae-4179-9f19-bdcd42aa7afd", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "unknown server name-server" }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934ce0"), "OBJECT_ID" : "USER_GROUP/550f6033-ab13-49d9-bf4f-a641d8b41323", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "admin-tenant" }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934ce3"), "OBJECT_ID" : "ROLE_DEFINITION/244cb84c-2b8a-4557-b175-db963072cfbc", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "spectator" }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934ce6"), "OBJECT_ID" : "ROLE_DEFINITION/91c88a11-c977-4c24-b0a6-15bac0525764", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "moderator" }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934ce9"), "OBJECT_ID" : "ROLE_DEFINITION/ad1d5148-b13d-4464-90c4-7c396e4d4e2e", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "user" }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cec"), "OBJECT_ID" : "ROLE_DEFINITION/2e22583b-c9c1-4ee4-8231-e8e320a8a411", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "mediaeditor" }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cef"), "OBJECT_ID" : "ROLE_DEFINITION/dc77e3d1-d405-435e-8699-ce7245f6fd7a", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "admin" }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934cf7"), "OBJECT_ID" : "SERVER/unknown server name", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "OBJECT_DISPLAY_NAME" : "SERVER/unknown server name" }
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d14"), "OBJECT_ID" : "ROLE_DEFINITION/c42948df-517b-45cb-9fa9-d1e79f18e115", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"SEsB9kahnW2VVTitLEUHuQ=="), "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d25"), "OBJECT_ID" : "ROLE_ASSOCIATION/admin\\/ad1d5148-b13d-4464-90c4-7c396e4d4e2e\\/admin\\/null", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : null, "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d2f"), "OBJECT_ID" : "ROLE_ASSOCIATION/admin\\/ad1d5148-b13d-4464-90c4-7c396e4d4e2e\\/null\\/6cc11275-8fbf-4f29-b9a3-6f20ed264b91", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : null, "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d32"), "OBJECT_ID" : "USER_GROUP/6cc11275-8fbf-4f29-b9a3-6f20ed264b91", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : BinData(3,"KU+/j3USwWyRSybtIG+juQ=="), "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d3f"), "OBJECT_ID" : "ROLE_ASSOCIATION/admin\\/dc77e3d1-d405-435e-8699-ce7245f6fd7a\\/null\\/null", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : null, "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d80"), "OBJECT_ID" : "WIND_ESTIMATION_MODELS/unknown server name", "OWNER_USERNAME" : null, "TENANT_OWNER_ID" : BinData(3,"rU3mZkIKAPCQHdkh9Ai0kQ=="), "OBJECT_DISPLAY_NAME" : "Wind estimation models for server unknown server name" }
|
||||
{ "_id" : ObjectId("5da986f7bcba5dcf9b934dd2"), "OBJECT_ID" : "ROLE_ASSOCIATION/admin\\/ad1d5148-b13d-4464-90c4-7c396e4d4e2e\\/null\\/100fd8b5-2ddf-4b70-8115-d195fc9abf60", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : null, "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da986f7bcba5dcf9b934dd5"), "OBJECT_ID" : "USER_GROUP/100fd8b5-2ddf-4b70-8115-d195fc9abf60", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : BinData(3,"cEvfLbXYDxBgv5r8ldEVgQ=="), "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da9873dbcba5dcf9b934e6d"), "OBJECT_ID" : "ROLE_ASSOCIATION/admin\\/ad1d5148-b13d-4464-90c4-7c396e4d4e2e\\/null\\/f3b03b3f-0790-4194-a9b5-85860682bf79", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : null, "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da9873dbcba5dcf9b934e70"), "OBJECT_ID" : "USER_GROUP/f3b03b3f-0790-4194-a9b5-85860682bf79", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : BinData(3,"lEGQBz87sPN5v4IGhoW1qQ=="), "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da98742bcba5dcf9b934eb6"), "OBJECT_ID" : "EVENT/0fd47877-5913-46d3-8a42-6cbeeaa6a0d5", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : BinData(3,"KU3+yAcof3xfzrVBrJg4jg=="), "OBJECT_DISPLAY_NAME" : "<ppp> loggingsession" }
|
||||
{ "_id" : ObjectId("5da98743bcba5dcf9b934ec3"), "OBJECT_ID" : "LEADERBOARD_GROUP/8079995d-4b7d-47bd-b622-d287c0c62933", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : BinData(3,"KU3+yAcof3xfzrVBrJg4jg=="), "OBJECT_DISPLAY_NAME" : "<ppp> loggingsession" }
|
||||
{ "_id" : ObjectId("5da98743bcba5dcf9b934ecd"), "OBJECT_ID" : "REGATTA/<ppp> loggingsession", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : BinData(3,"KU3+yAcof3xfzrVBrJg4jg=="), "OBJECT_DISPLAY_NAME" : "<ppp> loggingsession" }
|
||||
{ "_id" : ObjectId("5da98743bcba5dcf9b934ed5"), "OBJECT_ID" : "LEADERBOARD/<ppp> loggingsession", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : BinData(3,"KU3+yAcof3xfzrVBrJg4jg=="), "OBJECT_DISPLAY_NAME" : "<ppp> loggingsession" }
|
||||
{ "_id" : ObjectId("5da98743bcba5dcf9b934f1e"), "OBJECT_ID" : "ROLE_ASSOCIATION/admin\\/ad1d5148-b13d-4464-90c4-7c396e4d4e2e\\/null\\/7e0dff15-1d47-46f0-858e-0182aba51b05", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : null, "OBJECT_DISPLAY_NAME" : null }
|
||||
{ "_id" : ObjectId("5da98743bcba5dcf9b934f21"), "OBJECT_ID" : "USER_GROUP/7e0dff15-1d47-46f0-858e-0182aba51b05", "OWNER_USERNAME" : "admin", "TENANT_OWNER_ID" : BinData(3,"8EZHHRX/DX4FG6WrggGOhQ=="), "OBJECT_DISPLAY_NAME" : null }
|
||||
+1
@@ -0,0 +1 @@
|
||||
{ "_id" : ObjectId("5da986e1bcba5dcf9b934d8f"), "KEYS_AND_VALUES" : [ ], "USERNAME" : "admin" }
|
||||
+1
@@ -0,0 +1 @@
|
||||
{ "_id" : ObjectId("5da986e1bcba5dcf9b934d8f"), "KEYS_AND_VALUES" : [ ], "USERNAME" : "admin" }
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
{"_id":{"$oid":"5cc705d4de317c784dcfaa1b"},"NAME":"admin","EMAIL":"nobody@sapsailing.com","FULLNAME":null,"COMPANY":null,"LOCALE":"en","EMAIL_VALIDATED":false,"PASSWORD_RESET_SECRET":null,"VALIDATION_SECRET":"sG1bZKmcx+pnUoxZwOu/qcSRfyH5Qz3Ywynx7xMlWqQ=","ACCOUNTS":{"USERNAME_PASSWORD":{"NAME":"admin","SALTED_PW":"jI9O5lgCLijLNi1/a1axMMncnX4RMpuUshSWWBl5LL0=","SALT":{"$binary":"3ENx8+Hk7x9MCet3viw0mA==","$type":"00"}}},"ROLE_IDS":[{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":{"$binary":"6EebpIpumACftfJFNiaNiQ==","$type":"03"},"QUALIFYING_TENANT_NAME":"admin-tenant","QUALIFYING_USERNAME":null},{"ID":{"$binary":"XkMF1NHjd9x6/fZFcs6Zhg==","$type":"03"},"NAME":"admin","QUALIFYING_TENANT_ID":null,"QUALIFYING_TENANT_NAME":null,"QUALIFYING_USERNAME":null},{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":null,"QUALIFYING_TENANT_NAME":null,"QUALIFYING_USERNAME":"admin"}],"PERMISSIONS":[],"DEFAULT_TENANT_IDS":[{"DEFAULT_TENANT_SERVER":"unknown server name","DEFAULT_TENANT_GROUP":{"$binary":"rETsHTQ95gY+uXNud+k2qg==","$type":"03"}}]}
|
||||
{"_id":{"$oid":"5cc705d4de317c784dcfaa42"},"NAME":"\u003call\u003e","EMAIL":null,"FULLNAME":null,"COMPANY":null,"LOCALE":null,"EMAIL_VALIDATED":false,"PASSWORD_RESET_SECRET":null,"VALIDATION_SECRET":null,"ACCOUNTS":{},"ROLE_IDS":[],"PERMISSIONS":["USER:CREATE"],"DEFAULT_TENANT_IDS":[]}
|
||||
{"_id":{"$oid":"5d13ef6fe14e8d1caca94206"},"NAME":"uhl","EMAIL":"axel.uhl@sap.com.","FULLNAME":"Axel Uhl","COMPANY":"SAP SE","LOCALE":null,"EMAIL_VALIDATED":false,"PASSWORD_RESET_SECRET":null,"VALIDATION_SECRET":"UguoFG9fVhwZBDCbAOy+mdvoZxympJm3vXG2X8MMVKg=","ACCOUNTS":{"USERNAME_PASSWORD":{"NAME":"uhl","SALTED_PW":"5rasplWxI4hah5/SHE1fTu8OJcYwbVJYueyhNaNkGAA=","SALT":{"$binary":"pZTmZ4CZIllGjwrF5PUwrw==","$type":"00"}}},"ROLE_IDS":[{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":null,"QUALIFYING_TENANT_NAME":null,"QUALIFYING_USERNAME":"uhl"}],"PERMISSIONS":["MANAGE_DEVICE_CONFIGURATION:*:*","leaderboard:update:*"],"DEFAULT_TENANT_IDS":[{"DEFAULT_TENANT_SERVER":"unknown server name","DEFAULT_TENANT_GROUP":{"$binary":"rETsHTQ95gY+uXNud+k2qg==","$type":"03"}}]}
|
||||
{"_id":{"$oid":"5d1728d4e14e8d1caca9c9f6"},"NAME":"uhl2","EMAIL":"axel.uhl@sap.com","FULLNAME":"Axel Uhl","COMPANY":"","LOCALE":"en","EMAIL_VALIDATED":false,"PASSWORD_RESET_SECRET":null,"VALIDATION_SECRET":null,"ACCOUNTS":{"USERNAME_PASSWORD":{"NAME":"uhl2","SALTED_PW":"3qW7i+lIuLPso7VQRmPvGuVQ99tGDB/X/RiHnWXJXso=","SALT":{"$binary":"TEgyKBFd+cxe4vpV63N1Yg==","$type":"00"}}},"ROLE_IDS":[{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":null,"QUALIFYING_TENANT_NAME":null,"QUALIFYING_USERNAME":"uhl2"},{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":{"$binary":"4U5+98apCi7bjpVjY+Zzgw==","$type":"03"},"QUALIFYING_TENANT_NAME":"uhl2-tenant","QUALIFYING_USERNAME":null}],"PERMISSIONS":[],"DEFAULT_TENANT_IDS":[{"DEFAULT_TENANT_SERVER":"unknown server name","DEFAULT_TENANT_GROUP":{"$binary":"4U5+98apCi7bjpVjY+Zzgw==","$type":"03"}}]}
|
||||
{"_id":{"$oid":"5d1cd5144da9676dd4375a6d"},"NAME":"axel.uhl","EMAIL":"axel.uhl@gmx.de","FULLNAME":"Dr. Axel Uhl","COMPANY":"SAP SE","LOCALE":null,"EMAIL_VALIDATED":true,"PASSWORD_RESET_SECRET":null,"VALIDATION_SECRET":null,"ACCOUNTS":{"USERNAME_PASSWORD":{"NAME":"axel.uhl","SALTED_PW":"V/Np8tG9fV3PVU5tL7vLaGgAQWlWuYX1SpxElnnvT4k=","SALT":{"$binary":"J0o9yTcZd6SZBQhb4MbS5Q==","$type":"00"}}},"ROLE_IDS":[{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":null,"QUALIFYING_TENANT_NAME":null,"QUALIFYING_USERNAME":"axel.uhl"},{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":{"$binary":"N0L9xnOMv7pi1iTGc3kjng==","$type":"03"},"QUALIFYING_TENANT_NAME":"axel.uhl-tenant","QUALIFYING_USERNAME":null}],"PERMISSIONS":[],"DEFAULT_TENANT_IDS":[{"DEFAULT_TENANT_SERVER":"unknown server name","DEFAULT_TENANT_GROUP":{"$binary":"N0L9xnOMv7pi1iTGc3kjng==","$type":"03"}}]}
|
||||
{"_id":{"$oid":"5d1cd5ab4da9676dd4375acc"},"NAME":"axel","EMAIL":"axel.uhl@gmx.de","FULLNAME":"A.U.","COMPANY":"","LOCALE":null,"EMAIL_VALIDATED":true,"PASSWORD_RESET_SECRET":null,"VALIDATION_SECRET":null,"ACCOUNTS":{"USERNAME_PASSWORD":{"NAME":"axel","SALTED_PW":"v0Qwj7gJnm8y3CGEibB38ilacyQ5sZeNE2assN78WMA=","SALT":{"$binary":"v2bmImY9V59f4oBIzTBZ2A==","$type":"00"}}},"ROLE_IDS":[{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":null,"QUALIFYING_TENANT_NAME":null,"QUALIFYING_USERNAME":"axel"},{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":{"$binary":"M0h+luarPKu9cwLl7VMgow==","$type":"03"},"QUALIFYING_TENANT_NAME":"axel-tenant","QUALIFYING_USERNAME":null}],"PERMISSIONS":[],"DEFAULT_TENANT_IDS":[{"DEFAULT_TENANT_SERVER":"unknown server name","DEFAULT_TENANT_GROUP":{"$binary":"rETsHTQ95gY+uXNud+k2qg==","$type":"03"}}]}
|
||||
{"_id":{"$oid":"5d4009a208cb8682ff9323b2"},"NAME":"YCaT","EMAIL":"axel.uhl@sap.com","FULLNAME":"YCaT Admin","COMPANY":"Test","LOCALE":"en","EMAIL_VALIDATED":false,"PASSWORD_RESET_SECRET":null,"VALIDATION_SECRET":null,"ACCOUNTS":{"USERNAME_PASSWORD":{"NAME":"YCaT","SALTED_PW":"LdoXZ3Fh3DbGWK1ptIrcj6El/mfz8d6pPln2QhaeDbY=","SALT":{"$binary":"95aG7gMwbQBAvoNv+vvzCQ==","$type":"00"}}},"ROLE_IDS":[{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":null,"QUALIFYING_TENANT_NAME":null,"QUALIFYING_USERNAME":"YCaT"},{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":{"$binary":"3UJljSIS+HF/ErXi+384tQ==","$type":"03"},"QUALIFYING_TENANT_NAME":"YCaT-tenant","QUALIFYING_USERNAME":null}],"PERMISSIONS":[],"DEFAULT_TENANT_IDS":[{"DEFAULT_TENANT_SERVER":"unknown server name","DEFAULT_TENANT_GROUP":{"$binary":"3UJljSIS+HF/ErXi+384tQ==","$type":"03"}}]}
|
||||
{"_id":{"$oid":"5d4009d208cb8682ff9323f7"},"NAME":"YCaT-member1","EMAIL":"axel.uhl@sap.com","FULLNAME":"Member1","COMPANY":"Test","LOCALE":"en","EMAIL_VALIDATED":false,"PASSWORD_RESET_SECRET":null,"VALIDATION_SECRET":"YBKL7O7Lyy8JGGF/1FypxT1owf1w0YUi0YjKJgHmTy0=","ACCOUNTS":{"USERNAME_PASSWORD":{"NAME":"YCaT-member1","SALTED_PW":"JBasBBUAMi0ux25cDbEEgsnRzSowknl9IHiyFws8DSQ=","SALT":{"$binary":"L0cJJVJjDA55KY7sT0+S3g==","$type":"00"}}},"ROLE_IDS":[{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":{"$binary":"2U356l9Qpux0vdp48SvQmg==","$type":"03"},"QUALIFYING_TENANT_NAME":"YCaT-member1-tenant","QUALIFYING_USERNAME":null},{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":{"$binary":"3UJljSIS+HF/ErXi+384tQ==","$type":"03"},"QUALIFYING_TENANT_NAME":"YCaT-tenant","QUALIFYING_USERNAME":null},{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":null,"QUALIFYING_TENANT_NAME":null,"QUALIFYING_USERNAME":"YCaT-member1"}],"PERMISSIONS":[],"DEFAULT_TENANT_IDS":[{"DEFAULT_TENANT_SERVER":"unknown server name","DEFAULT_TENANT_GROUP":{"$binary":"2U356l9Qpux0vdp48SvQmg==","$type":"03"}}]}
|
||||
{"_id":{"$oid":"5d4009ec08cb8682ff932430"},"NAME":"YCaT-member2","EMAIL":"axel.uhl@sap.com","FULLNAME":"Member2","COMPANY":"Test","LOCALE":"en","EMAIL_VALIDATED":false,"PASSWORD_RESET_SECRET":null,"VALIDATION_SECRET":"bRSk4GLUIdDzOFyQLJmYm+/VynPgisZF7V0gPFoih3g=","ACCOUNTS":{"USERNAME_PASSWORD":{"NAME":"YCaT-member2","SALTED_PW":"DRyn1o5elCs8maUXyVvdyYK3/hmox56Po6wwq3Pm/u0=","SALT":{"$binary":"PicBhfFxcspHMo/vuP4Bnw==","$type":"00"}}},"ROLE_IDS":[{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":{"$binary":"3UJljSIS+HF/ErXi+384tQ==","$type":"03"},"QUALIFYING_TENANT_NAME":"YCaT-tenant","QUALIFYING_USERNAME":null},{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":null,"QUALIFYING_TENANT_NAME":null,"QUALIFYING_USERNAME":"YCaT-member2"},{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":{"$binary":"qUGQhinRsAx4MKAHHEr7gA==","$type":"03"},"QUALIFYING_TENANT_NAME":"YCaT-member2-tenant","QUALIFYING_USERNAME":null}],"PERMISSIONS":[],"DEFAULT_TENANT_IDS":[{"DEFAULT_TENANT_SERVER":"unknown server name","DEFAULT_TENANT_GROUP":{"$binary":"qUGQhinRsAx4MKAHHEr7gA==","$type":"03"}}]}
|
||||
{"_id":{"$oid":"5dc1af0fc0825924ce57c9ee"},"NAME":"uhl3","EMAIL":"axel.uhl@sap.com","FULLNAME":null,"COMPANY":null,"LOCALE":null,"EMAIL_VALIDATED":false,"PASSWORD_RESET_SECRET":null,"VALIDATION_SECRET":null,"ACCOUNTS":{"USERNAME_PASSWORD":{"NAME":"uhl3","SALTED_PW":"aCdc8Fg4bwtsa8l4HZT7qPFFqovDd1DhXpMv0OOxQ4I=","SALT":{"$binary":"xynScLlhqOODM17XhH5ucQ==","$type":"00"}}},"ROLE_IDS":[{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":null,"QUALIFYING_TENANT_NAME":null,"QUALIFYING_USERNAME":"uhl3"},{"ID":{"$binary":"ZEQ9sUhRHa0uTk1uOXzEkA==","$type":"03"},"NAME":"user","QUALIFYING_TENANT_ID":{"$binary":"hkaUvtuvRHho1Mo2bgQwow==","$type":"03"},"QUALIFYING_TENANT_NAME":"uhl3-tenant","QUALIFYING_USERNAME":null}],"PERMISSIONS":[],"DEFAULT_TENANT_IDS":[{"DEFAULT_TENANT_SERVER":"unknown server name","DEFAULT_TENANT_GROUP":{"$binary":"hkaUvtuvRHho1Mo2bgQwow==","$type":"03"}}]}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
{ "_id" : ObjectId("5da642dbbcba5dcf9b8986f7"), "ID" : BinData(3,"2UkTqzNgD1UjE7TYQaZPvw=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5da6f2d7bcba5dcf9b89aeec"), "ID" : BinData(3,"0kXofM2ReYsRD+CRNVrPlQ=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934ca8"), "ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "NAME" : "unknown server name-server", "USERNAMES" : [ ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d0e"), "ID" : BinData(3,"rU3mZkIKAPCQHdkh9Ai0kQ=="), "NAME" : "unknown server name-server", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ { "ROLE_DEFINITION_MAP_ROLE_ID" : BinData(3,"y0V7Ud9IKcQV4Rif59Gpnw=="), "ROLE_DEFINITION_MAP_FOR_ALL" : true } ]}
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d28"), "ID" : BinData(3,"KU+/j3USwWyRSybtIG+juQ=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5da986f7bcba5dcf9b934dc1"), "ID" : BinData(3,"fEoAyL0wNLMctIVFTcjDjA=="), "NAME" : "unknown server name-server", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ { "ROLE_DEFINITION_MAP_ROLE_ID" : BinData(3,"y0V7Ud9IKcQV4Rif59Gpnw=="), "ROLE_DEFINITION_MAP_FOR_ALL" : true } ]}
|
||||
{ "_id" : ObjectId("5da986f7bcba5dcf9b934dca"), "ID" : BinData(3,"cEvfLbXYDxBgv5r8ldEVgQ=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5da9873dbcba5dcf9b934e5d"), "ID" : BinData(3,"KU3+yAcof3xfzrVBrJg4jg=="), "NAME" : "unknown server name-server", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ { "ROLE_DEFINITION_MAP_ROLE_ID" : BinData(3,"y0V7Ud9IKcQV4Rif59Gpnw=="), "ROLE_DEFINITION_MAP_FOR_ALL" : true } ]}
|
||||
{ "_id" : ObjectId("5da9873dbcba5dcf9b934e66"), "ID" : BinData(3,"lEGQBz87sPN5v4IGhoW1qQ=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5da98743bcba5dcf9b934f0e"), "ID" : BinData(3,"SEsB9kahnW2VVTitLEUHuQ=="), "NAME" : "unknown server name-server", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ { "ROLE_DEFINITION_MAP_ROLE_ID" : BinData(3,"y0V7Ud9IKcQV4Rif59Gpnw=="), "ROLE_DEFINITION_MAP_FOR_ALL" : true } ]}
|
||||
{ "_id" : ObjectId("5da98743bcba5dcf9b934f17"), "ID" : BinData(3,"8EZHHRX/DX4FG6WrggGOhQ=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5da9fb89bcba5dcf9b938693"), "ID" : BinData(3,"wk3t8bCm1eG/R26723mhtA=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5dadce46bcba5dcf9b93ee83"), "ID" : BinData(3,"h0wAowdQM9vgY14Qq073qw=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5db37397bcba5dcf9b94c226"), "ID" : BinData(3,"LUvZnBbBI48OvWErhOaUmw=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5dd40e69c0825924ce5b9544"), "ID" : BinData(3,"skegJZFkXU8DtJyTD+gUuw=="), "NAME" : "unknoan server name-server", "USERNAMES" : [ ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
{ "_id" : ObjectId("5da642dbbcba5dcf9b8986f7"), "ID" : BinData(3,"2UkTqzNgD1UjE7TYQaZPvw=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5da6f2d7bcba5dcf9b89aeec"), "ID" : BinData(3,"0kXofM2ReYsRD+CRNVrPlQ=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5da986c7bcba5dcf9b934ca8"), "ID" : BinData(3,"eUGuvd970yv9eqpCzb0Znw=="), "NAME" : "unknown server name-server", "USERNAMES" : [ ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d0e"), "ID" : BinData(3,"rU3mZkIKAPCQHdkh9Ai0kQ=="), "NAME" : "unknown server name-server", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ { "ROLE_DEFINITION_MAP_ROLE_ID" : BinData(3,"y0V7Ud9IKcQV4Rif59Gpnw=="), "ROLE_DEFINITION_MAP_FOR_ALL" : true } ]}
|
||||
{ "_id" : ObjectId("5da986d6bcba5dcf9b934d28"), "ID" : BinData(3,"KU+/j3USwWyRSybtIG+juQ=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5da986f7bcba5dcf9b934dc1"), "ID" : BinData(3,"fEoAyL0wNLMctIVFTcjDjA=="), "NAME" : "unknown server name-server", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ { "ROLE_DEFINITION_MAP_ROLE_ID" : BinData(3,"y0V7Ud9IKcQV4Rif59Gpnw=="), "ROLE_DEFINITION_MAP_FOR_ALL" : true } ]}
|
||||
{ "_id" : ObjectId("5da986f7bcba5dcf9b934dca"), "ID" : BinData(3,"cEvfLbXYDxBgv5r8ldEVgQ=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5da9873dbcba5dcf9b934e5d"), "ID" : BinData(3,"KU3+yAcof3xfzrVBrJg4jg=="), "NAME" : "unknown server name-server", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ { "ROLE_DEFINITION_MAP_ROLE_ID" : BinData(3,"y0V7Ud9IKcQV4Rif59Gpnw=="), "ROLE_DEFINITION_MAP_FOR_ALL" : true } ]}
|
||||
{ "_id" : ObjectId("5da9873dbcba5dcf9b934e66"), "ID" : BinData(3,"lEGQBz87sPN5v4IGhoW1qQ=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5da98743bcba5dcf9b934f0e"), "ID" : BinData(3,"SEsB9kahnW2VVTitLEUHuQ=="), "NAME" : "unknown server name-server", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ { "ROLE_DEFINITION_MAP_ROLE_ID" : BinData(3,"y0V7Ud9IKcQV4Rif59Gpnw=="), "ROLE_DEFINITION_MAP_FOR_ALL" : true } ]}
|
||||
{ "_id" : ObjectId("5da98743bcba5dcf9b934f17"), "ID" : BinData(3,"8EZHHRX/DX4FG6WrggGOhQ=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5da9fb89bcba5dcf9b938693"), "ID" : BinData(3,"wk3t8bCm1eG/R26723mhtA=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5dadce46bcba5dcf9b93ee83"), "ID" : BinData(3,"h0wAowdQM9vgY14Qq073qw=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5db37397bcba5dcf9b94c226"), "ID" : BinData(3,"LUvZnBbBI48OvWErhOaUmw=="), "NAME" : "admin-tenant", "USERNAMES" : [ "admin" ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
{ "_id" : ObjectId("5dd40e69c0825924ce5b9544"), "ID" : BinData(3,"skegJZFkXU8DtJyTD+gUuw=="), "NAME" : "unknoan server name-server", "USERNAMES" : [ ], "ROLE_DEFINITION_MAP" : [ ] }
|
||||
@@ -9,4 +9,5 @@ Bundle-RequiredExecutionEnvironment: JavaSE-1.8
|
||||
Require-Bundle: com.sap.sse.mongodb,
|
||||
org.mongodb.mongo-java-driver,
|
||||
com.sap.sse.security.interface,
|
||||
com.sap.sse.security.userstore.mongodb
|
||||
com.sap.sse.security.userstore.mongodb,
|
||||
com.sap.sse.common
|
||||
@@ -1,13 +1,13 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
|
||||
<listEntry value="/com.sap.sse.security.storemerging/src/com/sap/sse/security/storemerging/Main.java"/>
|
||||
<listEntry value="/com.sap.sse.security.storemerging/src/com/sap/sse/security/storemerging/SecurityStoreMerger.java"/>
|
||||
</listAttribute>
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
|
||||
<listEntry value="1"/>
|
||||
</listAttribute>
|
||||
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_EXCLUDE_TEST_CODE" value="true"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="com.sap.sse.security.storemerging.Main"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="com.sap.sse.security.storemerging.SecurityStoreMerger"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="mongodb://localhost/winddbTest "unknoan server name-server""/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="com.sap.sse.security.storemerging"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Dmongo.uri="mongodb://localhost/winddb" -Ddefault.tenant.name="unknown server name-server""/>
|
||||
|
||||
+16
-6
@@ -3,6 +3,7 @@ package com.sap.sse.security.storemerging;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import com.mongodb.MongoClientURI;
|
||||
import com.sap.sse.common.Util.Pair;
|
||||
import com.sap.sse.mongodb.MongoDBConfiguration;
|
||||
import com.sap.sse.security.interfaces.AccessControlStore;
|
||||
import com.sap.sse.security.interfaces.UserStore;
|
||||
@@ -12,15 +13,15 @@ import com.sap.sse.security.userstore.mongodb.AccessControlStoreImpl;
|
||||
import com.sap.sse.security.userstore.mongodb.PersistenceFactory;
|
||||
import com.sap.sse.security.userstore.mongodb.UserStoreImpl;
|
||||
|
||||
public class Main {
|
||||
private static final Logger logger = Logger.getLogger(Main.class.getName());
|
||||
public class SecurityStoreMerger {
|
||||
private static final Logger logger = Logger.getLogger(SecurityStoreMerger.class.getName());
|
||||
|
||||
private static final String TARGET_DEFAULT_TENANT_NAME_SYSTEM_PROPERTY_NAME = "default.tenant.name";
|
||||
|
||||
private final UserStore targetUserStore;
|
||||
private final AccessControlStore targetAccessControlStore;
|
||||
|
||||
public Main(MongoDBConfiguration cfgForTarget, String targetDefaultCreationGroupName) throws UserGroupManagementException, UserManagementException {
|
||||
public SecurityStoreMerger(MongoDBConfiguration cfgForTarget, String targetDefaultCreationGroupName) throws UserGroupManagementException, UserManagementException {
|
||||
final PersistenceFactory targetPf = PersistenceFactory.create(cfgForTarget.getService());
|
||||
logger.info("Loading target user store from "+cfgForTarget);
|
||||
this.targetUserStore = loadUserStore(targetPf, targetDefaultCreationGroupName);
|
||||
@@ -45,6 +46,14 @@ public class Main {
|
||||
return userStore;
|
||||
}
|
||||
|
||||
public UserStore getTargetUserStore() {
|
||||
return targetUserStore;
|
||||
}
|
||||
|
||||
public AccessControlStore getTargetAccessControlStore() {
|
||||
return targetAccessControlStore;
|
||||
}
|
||||
|
||||
/**
|
||||
* The target MongoDB into which to merge is provided by the system properties {@code mongo.uri} or alternatively
|
||||
* {@code mongo.port}, {@code mongo.host} and {@code mongo.dbName}. See also {@link MongoDBConfiguration}. The
|
||||
@@ -60,21 +69,21 @@ public class Main {
|
||||
* by {@link #TARGET_DEFAULT_TENANT_NAME_SYSTEM_PROPERTY_NAME}.<p>
|
||||
*
|
||||
* Example:<br>
|
||||
* {@code java -Dmongo.uri="mongodb://localhost/winddb" -Ddefault.tenant.name=my-group} {@link Main} {@code "mongodb://localhost:27017/winddb2" my-default-group "mongodb://otherhost:12345/winddb3?replicaSet=rs0" another-group}
|
||||
* {@code java -Dmongo.uri="mongodb://localhost/winddb" -Ddefault.tenant.name=my-group} {@link SecurityStoreMerger} {@code "mongodb://localhost:27017/winddb2" my-default-group "mongodb://otherhost:12345/winddb3?replicaSet=rs0" another-group}
|
||||
*
|
||||
* @param args
|
||||
* pairs of MongoDB URI and default creation group names for the stores from which to import
|
||||
*/
|
||||
public static void main(String[] args) throws UserGroupManagementException, UserManagementException {
|
||||
final MongoDBConfiguration cfgForTarget = MongoDBConfiguration.getDefaultConfiguration();
|
||||
final Main instance = new Main(cfgForTarget, System.getProperty(TARGET_DEFAULT_TENANT_NAME_SYSTEM_PROPERTY_NAME));
|
||||
final SecurityStoreMerger instance = new SecurityStoreMerger(cfgForTarget, System.getProperty(TARGET_DEFAULT_TENANT_NAME_SYSTEM_PROPERTY_NAME));
|
||||
for (int i=0; i<args.length/2; i++) {
|
||||
final MongoDBConfiguration cfgForSource = new MongoDBConfiguration(new MongoClientURI(args[2*i]));
|
||||
instance.importStores(cfgForSource, args[2*i+1]);
|
||||
}
|
||||
}
|
||||
|
||||
private void importStores(MongoDBConfiguration cfgForSource, String defaultCreationGroupNameForSource) throws UserGroupManagementException, UserManagementException {
|
||||
Pair<UserStore, AccessControlStore> importStores(MongoDBConfiguration cfgForSource, String defaultCreationGroupNameForSource) throws UserGroupManagementException, UserManagementException {
|
||||
logger.info("Importing user store and access control store read from "+cfgForSource);
|
||||
final PersistenceFactory sourcePf = PersistenceFactory.create(cfgForSource.getService());
|
||||
final UserStore sourceUserStore = loadUserStore(sourcePf, defaultCreationGroupNameForSource);
|
||||
@@ -83,6 +92,7 @@ public class Main {
|
||||
mergePreferences(sourceUserStore);
|
||||
mergeOwnerships(sourceAccessControlStore);
|
||||
mergeAccessControlLists(sourceAccessControlStore);
|
||||
return new Pair<>(sourceUserStore, sourceAccessControlStore);
|
||||
}
|
||||
|
||||
private void mergeAccessControlLists(AccessControlStore sourceAccessControlStore) {
|
||||
Reference in new issue
Block a user