CSPACE-1035 nuxeo domain (for each tenant) is created at the startup time if it does not already exist
- added pahma-domain (hearstmuseum.berkeley.edu) to the tenant bindings in addition to the default-domain (movingimages.us) that is currently used. both bindings are similar in this first pass, i.e. both tenants use the same set of services with same service object bindings as well.
- each tenant binding now specifies repository domain(s) used
- each repository domain embodies information about the repository client needed
- tenantrepository uses repository javaclient instead of using nuxeo connector directly
- each service binding now specifies the repository domain used
- account factory on the client side now takes tenant id from new property cspace.tenant that is added to collection-space-client.properties
- removed deadwood from test-xxx.sql scripts
- role and permissions doc handlers now utilize tenant id if provided by the consumer at the time of creation, if not, they continue to use logged in user's tenant id
-
!!ATTENTION!!
-ant create_db from the trunk (to verify nuxeo domain is created)
-ant import from the trunk (no need to checkin import-*.xml files)
-ant undeploy deploy from the trunk
M trunk/services/authorization-mgt/service/src/main/java/org/collectionspace/services/authorization/storage/PermissionDocumentHandler.java
M trunk/services/authorization-mgt/service/src/main/java/org/collectionspace/services/authorization/storage/RoleDocumentHandler.java
M trunk/services/authorization-mgt/import/src/main/java/org/collectionspace/services/authorization/importer/AuthorizationSeed.java
M trunk/services/authorization-mgt/import/src/main/resources/import-data/import-permissions.xml
M trunk/services/authorization-mgt/import/src/main/resources/import-data/import-permissions-roles.xml
M trunk/services/authorization-mgt/import/src/main/resources/import-data/import-roles.xml
M trunk/services/authorization-mgt/import/src/main/resources/log4j.properties
M trunk/services/authorization-mgt/client/src/test/java/org/collectionspace/services/authorization/client/test/RoleServiceTest.java
M trunk/services/authorization-mgt/client/src/test/java/org/collectionspace/services/authorization/client/test/PermissionServiceTest.java
M trunk/services/authorization/pstore/src/main/resources/db/mysql/test_authorization.sql
M trunk/services/authentication/pstore/src/main/resources/db/mysql/test_authentication.sql
M trunk/services/common/src/main/java/org/collectionspace/services/common/repository/RepositoryClient.java
M trunk/services/common/src/main/java/org/collectionspace/services/common/context/AbstractServiceContextImpl.java
M trunk/services/common/src/main/java/org/collectionspace/services/common/ServiceMain.java
M trunk/services/common/src/main/java/org/collectionspace/services/common/config/TenantBindingConfigReaderImpl.java
M trunk/services/common/src/main/java/org/collectionspace/services/common/document/JaxbUtils.java
M trunk/services/common/src/main/java/org/collectionspace/services/nuxeo/client/java/RepositoryJavaClientImpl.java
M trunk/services/common/src/main/java/org/collectionspace/services/nuxeo/client/java/TenantRepository.java
M trunk/services/common/src/main/config/services/service-config.xml
M trunk/services/common/src/main/config/services/tenant-bindings.xml
M trunk/services/common/src/main/resources/tenant.xsd
M trunk/services/common/src/main/resources/service.xsd
M trunk/services/account/pstore/src/main/resources/db/mysql/test_account.sql
M trunk/services/account/client/src/test/java/org/collectionspace/services/account/client/test/AccountRoleServiceTest.java
M trunk/services/account/client/src/test/java/org/collectionspace/services/account/client/test/AccountServiceTest.java
M trunk/services/account/client/src/main/java/org/collectionspace/services/client/AccountFactory.java
M trunk/services/account/client/src/main/java/org/collectionspace/services/client/AccountClient.java
M trunk/services/security/client/src/test/java/org/collectionspace/services/security/client/test/AuthenticationServiceTest.java
M trunk/services/security/client/src/test/java/org/collectionspace/services/security/client/test/AuthorizationServiceTest.java
M trunk/services/client/src/main/java/org/collectionspace/services/client/AbstractServiceClientImpl.java
M trunk/services/client/src/main/java/org/collectionspace/services/client/CollectionSpaceClient.java
M trunk/services/client/src/main/resources/collectionspace-client.properties
D trunk/src/main/resources/db/mysql/service-dump.sql
@Override
public CollectionSpaceProxy getProxy() {
- return this.accountProxy;
+ return this.accountProxy;
}
-
+
/**
* allow to reset proxy as per security needs
*/
* @see org.collectionspace.hello.client.AccountProxy#deleteAccount(java.lang.Long)
*/
@Override
- public ClientResponse<Response> delete(String csid) {
+ public ClientResponse<Response> delete(String csid) {
return accountProxy.delete(csid);
}
+
+
+ public String getTenantId() {
+ return getProperty(AccountClient.TENANT_PROPERTY);
+ }
}
* @param userName
* @param passwd
* @param email
+ * @param tenantId add non-null tenant id else let service take tenant id of
+ * the authenticated user
* @param useScreenName
- * @param addTenant
* @param invalidTenant
* @param useUser
* @param usePassword
* @return
*/
public static AccountsCommon createAccountInstance(String screenName,
- String userName, String passwd, String email,
- boolean useScreenName, boolean addTenant, boolean invalidTenant,
+ String userName, String passwd, String email, String tenantId,
+ boolean useScreenName, boolean invalidTenant,
boolean useUser, boolean usePassword) {
AccountsCommon account = new AccountsCommon();
if (!invalidTenant) {
//tenant is not required to be added during create, service layer
//picks up tenant from security context if needed
- if (addTenant) {
- at.setTenantId("1");
+ if (tenantId != null) {
+ at.setTenantId(tenantId);
atList.add(at);
account.setTenants(atList);
- addTenant = !addTenant;
}
} else {
//use invalid tenant id...called from validation test
AccountClient accClient = new AccountClient();
AccountsCommon account = AccountFactory.createAccountInstance(
- userName, userName, userName, email,
- true, true, false, true, true);
+ userName, userName, userName, email, accClient.getTenantId(),
+ true, false, true, true);
ClientResponse<Response> res = accClient.create(account);
int statusCode = res.getStatus();
if (logger.isDebugEnabled()) {
/** The Constant logger. */
private final String CLASS_NAME = AccountServiceTest.class.getName();
private final Logger logger = LoggerFactory.getLogger(CLASS_NAME);
-
// Instance variables specific to this test.
/** The known resource id. */
private String knownResourceId = null;
-
/** The add tenant. */
static boolean addTenant = true;
*/
@Override
protected CollectionSpaceClient getClientInstance() {
- return new AccountClient();
+ return new AccountClient();
}
-
+
/* (non-Javadoc)
* @see org.collectionspace.services.client.test.BaseServiceTest#getAbstractCommonList(org.jboss.resteasy.client.ClientResponse)
*/
@Override
- protected AbstractCommonList getAbstractCommonList(
- ClientResponse<AbstractCommonList> response) {
- //FIXME: http://issues.collectionspace.org/browse/CSPACE-1697
- throw new UnsupportedOperationException();
+ protected AbstractCommonList getAbstractCommonList(
+ ClientResponse<AbstractCommonList> response) {
+ //FIXME: http://issues.collectionspace.org/browse/CSPACE-1697
+ throw new UnsupportedOperationException();
}
-
- /* (non-Javadoc)
- * @see org.collectionspace.services.client.test.AbstractServiceTestImpl#readPaginatedList(java.lang.String)
- */
- @Test(dataProvider = "testName")
- @Override
+
+ /* (non-Javadoc)
+ * @see org.collectionspace.services.client.test.AbstractServiceTestImpl#readPaginatedList(java.lang.String)
+ */
+ @Test(dataProvider = "testName")
+ @Override
public void readPaginatedList(String testName) throws Exception {
- //FIXME: http://issues.collectionspace.org/browse/CSPACE-1697
- }
-
+ //FIXME: http://issues.collectionspace.org/browse/CSPACE-1697
+ }
+
// ---------------------------------------------------------------
// CRUD tests : CREATE tests
// ---------------------------------------------------------------
// its associated HTTP method name (e.g. POST, DELETE).
setupCreate();
+ AccountClient client = new AccountClient();
// Submit the request to the service and store the response.
AccountsCommon account =
createAccountInstance("barney", "barney", "hithere08", "barney@dinoland.com",
- true, false, true, true);
- AccountClient client = new AccountClient();
+ client.getTenantId(), true, false, true, true);
ClientResponse<Response> res = client.create(account);
int statusCode = res.getStatus();
setupCreate();
// Submit the request to the service and store the response.
+ AccountClient client = new AccountClient();
AccountsCommon account =
createAccountInstance("barney1", "barney", "hithere08", "barney@dinoland.com",
- true, false, true, true);
- AccountClient client = new AccountClient();
+ client.getTenantId(), true, false, true, true);
+
ClientResponse<Response> res = client.create(account);
int statusCode = res.getStatus();
if (logger.isDebugEnabled()) {
setupCreate();
// Submit the request to the service and store the response.
+ AccountClient client = new AccountClient();
AccountsCommon account =
createAccountInstance("babybop", "babybop", "hithere08", "babybop@dinoland.com",
- true, true, true, true);
- AccountClient client = new AccountClient();
+ client.getTenantId(), true, true, true, true);
ClientResponse<Response> res = client.create(account);
int statusCode = res.getStatus();
// Does it exactly match the expected status code?
setupCreate();
// Submit the request to the service and store the response.
+ AccountClient client = new AccountClient();
AccountsCommon account =
createAccountInstance("babybop", "babybop", "hithere08", "babybop@dinoland.com",
- true, false, false, true);
- AccountClient client = new AccountClient();
+ client.getTenantId(), true, false, false, true);
ClientResponse<Response> res = client.create(account);
int statusCode = res.getStatus();
// Does it exactly match the expected status code?
setupCreate();
// Submit the request to the service and store the response.
+ AccountClient client = new AccountClient();
AccountsCommon account =
createAccountInstance("babybop", "babybop", "hithere08", "babybop.dinoland.com",
- true, false, true, true);
- AccountClient client = new AccountClient();
+ client.getTenantId(), true, false, true, true);
ClientResponse<Response> res = client.create(account);
int statusCode = res.getStatus();
// Does it exactly match the expected status code?
setupCreate();
// Submit the request to the service and store the response.
+ AccountClient client = new AccountClient();
AccountsCommon account =
createAccountInstance("babybop", "babybop", "hithere08", "babybop@dinoland.com",
- false, false, true, true);
- AccountClient client = new AccountClient();
+ client.getTenantId(), false, false, true, true);
ClientResponse<Response> res = client.create(account);
int statusCode = res.getStatus();
// Does it exactly match the expected status code?
setupCreate();
// Submit the request to the service and store the response.
+ AccountClient client = new AccountClient();
AccountsCommon account =
createAccountInstance("babybop", "babybop", "shpswd", "babybop@dinoland.com",
- true, false, true, true);
- AccountClient client = new AccountClient();
+ client.getTenantId(), true, false, true, true);
ClientResponse<Response> res = client.create(account);
int statusCode = res.getStatus();
// Does it exactly match the expected status code?
Assert.assertEquals(statusCode, Response.Status.BAD_REQUEST.getStatusCode());
}
- /**
- * Creates the with most invalid.
- *
- * @param testName the test name
- * @throws Exception the exception
- */
- @Test(dataProvider = "testName", dataProviderClass = AbstractServiceTestImpl.class,
+ /**
+ * Creates the with most invalid.
+ *
+ * @param testName the test name
+ * @throws Exception the exception
+ */
+ @Test(dataProvider = "testName", dataProviderClass = AbstractServiceTestImpl.class,
dependsOnMethods = {"create"})
public void createWithMostInvalid(String testName) throws Exception {
setupCreate();
// Submit the request to the service and store the response.
+ AccountClient client = new AccountClient();
AccountsCommon account =
createAccountInstance("babybop", "babybop", "hithere08", "babybop/dinoland.com",
- false, true, false, false);
- AccountClient client = new AccountClient();
+ client.getTenantId(), false, true, false, false);
ClientResponse<Response> res = client.create(account);
int statusCode = res.getStatus();
// Does it exactly match the expected status code?
}
setupCreate();
// Submit the request to the service and store the response.
+ AccountClient client = new AccountClient();
AccountsCommon account1 =
createAccountInstance("curious", "curious", "hithere08", "curious@george.com",
- true, false, true, true);
- AccountClient client = new AccountClient();
+ client.getTenantId(), true, false, true, true);
ClientResponse<Response> res = client.create(account1);
int statusCode = res.getStatus();
Assert.assertTrue(REQUEST_TYPE.isValidStatusCode(statusCode),
AccountsCommon account2 =
createAccountInstance("tom", "tom", "hithere09", "tom@jerry.com",
- true, false, true, true);
+ client.getTenantId(), true, false, true, true);
res = client.create(account2);
statusCode = res.getStatus();
Assert.assertTrue(REQUEST_TYPE.isValidStatusCode(statusCode),
AccountsCommon account3 =
createAccountInstance("mj", "mj", "hithere10", "mj@dinoland.com",
- true, false, true, true);
+ client.getTenantId(), true, false, true, true);
res = client.create(account3);
statusCode = res.getStatus();
Assert.assertTrue(REQUEST_TYPE.isValidStatusCode(statusCode),
*/
@Override
public void createWithEmptyEntityBody(String testName) throws Exception {
- //FIXME: Should this test really be empty? If so, please comment accordingly.
+ //FIXME: Should this test really be empty? If so, please comment accordingly.
}
/* (non-Javadoc)
*/
@Override
public void createWithMalformedXml(String testName) throws Exception {
- //FIXME: Should this test really be empty? If so, please comment accordingly.
+ //FIXME: Should this test really be empty? If so, please comment accordingly.
}
/* (non-Javadoc)
*/
@Override
public void createWithWrongXmlSchema(String testName) throws Exception {
- //FIXME: Should this test really be empty? If so, please comment accordingly.
+ //FIXME: Should this test really be empty? If so, please comment accordingly.
}
// ---------------------------------------------------------------
*/
@Override
public void updateWithEmptyEntityBody(String testName) throws Exception {
- //FIXME: Should this test really be empty? If so, please comment accordingly.
+ //FIXME: Should this test really be empty? If so, please comment accordingly.
}
/* (non-Javadoc)
*/
@Override
public void updateWithMalformedXml(String testName) throws Exception {
- //FIXME: Should this test really be empty? If so, please comment accordingly.
+ //FIXME: Should this test really be empty? If so, please comment accordingly.
}
/* (non-Javadoc)
*/
@Override
public void updateWithWrongXmlSchema(String testName) throws Exception {
- //FIXME: Should this test really be empty? If so, please comment accordingly.
+ //FIXME: Should this test really be empty? If so, please comment accordingly.
}
/* (non-Javadoc)
AccountClient client = new AccountClient();
AccountsCommon account =
createAccountInstance("simba", "simba", "tiger", "simba@lionking.com",
- true, false, true, true);
+ client.getTenantId(), true, false, true, true);
ClientResponse<AccountsCommon> res =
client.update(NON_EXISTENT_ID, account);
int statusCode = res.getStatus();
* @return
*/
AccountsCommon createAccountInstance(String screenName,
- String userName, String passwd, String email,
+ String userName, String passwd, String email, String tenantId,
boolean useScreenName, boolean invalidTenant, boolean useUser, boolean usePassword) {
AccountsCommon account = AccountFactory.createAccountInstance(screenName,
- userName, passwd, email, useScreenName,
- addTenant, invalidTenant, useUser, usePassword);
-
+ userName, passwd, email, tenantId, useScreenName,
+ invalidTenant, useUser, usePassword);
if (logger.isDebugEnabled()) {
logger.debug("to be created, account common");
logger.debug(objectAsXmlString(account,
}
+
/**
* Prints the list.
*
use cspace;
-- Tenants
-INSERT INTO `cspace`.`tenants` (`id`, `name`, `created_at`) VALUES ('1','movingimages.us', '2010-02-17 16:31:48');
+-- movingimages --
+INSERT INTO `cspace`.`tenants` (`id`, `name`, `created_at`) VALUES ('1','movingimages.us', now());
+-- pahma --
+INSERT INTO `cspace`.`tenants` (`id`, `name`, `created_at`) VALUES ('2','hearstmuseum.berkeley.edu', now());
-- Accounts
-INSERT INTO `cspace`.`accounts_common` (`csid`, `email`, `phone`, `mobile`, `userid`, `status`, `screen_name`, `created_at`) VALUES ('eeca40d7-dc77-4cc5-b489-16a53c75525a','test.test@berkeley.edu',NULL,NULL,'test','ACTIVE','test', '2010-02-17 16:31:48');
+-- default test account --
+INSERT INTO `cspace`.`accounts_common` (`csid`, `email`, `phone`, `mobile`, `userid`, `status`, `screen_name`, `created_at`) VALUES ('eeca40d7-dc77-4cc5-b489-16a53c75525a','test.test@berkeley.edu',NULL,NULL,'test','ACTIVE','test', now());
-- Additional account introduced during integration on release 0.6, and currently relied upon by the Application Layer.
-INSERT INTO `cspace`.`accounts_common` (`csid`, `email`, `phone`, `mobile`, `userid`, `status`, `screen_name`, `created_at`) VALUES ('251f98f3-0292-4f3e-aa95-455314050e1b','test@collectionspace.org',NULL,NULL,'test@collectionspace.org','ACTIVE','test@collectionspace.org', '2010-05-03 12:35:00');
+INSERT INTO `cspace`.`accounts_common` (`csid`, `email`, `phone`, `mobile`, `userid`, `status`, `screen_name`, `created_at`) VALUES ('251f98f3-0292-4f3e-aa95-455314050e1b','test@collectionspace.org',NULL,NULL,'test@collectionspace.org','ACTIVE','test@collectionspace.org', now());
+-- PAHMA test account --
+INSERT INTO `cspace`.`accounts_common` (`csid`, `email`, `phone`, `mobile`, `userid`, `status`, `screen_name`, `created_at`) VALUES ('ff2b4440-ed0d-4892-adb4-b6999eba3ae7','test@hearstmuseum.berkeley.edu',NULL,NULL,'test-pahma','ACTIVE','test-pahma', now());
-- Association of accounts with tenants
INSERT INTO `cspace`.`accounts_tenants` (`TENANTS_ACCOUNTSCOMMON_CSID`, `tenant_id`) VALUES ('eeca40d7-dc77-4cc5-b489-16a53c75525a', '1');
-INSERT INTO `cspace`.`accounts_tenants` (`TENANTS_ACCOUNTSCOMMON_CSID`, `tenant_id`) VALUES ('251f98f3-0292-4f3e-aa95-455314050e1b', '1');
\ No newline at end of file
+INSERT INTO `cspace`.`accounts_tenants` (`TENANTS_ACCOUNTSCOMMON_CSID`, `tenant_id`) VALUES ('251f98f3-0292-4f3e-aa95-455314050e1b', '1');
+INSERT INTO `cspace`.`accounts_tenants` (`TENANTS_ACCOUNTSCOMMON_CSID`, `tenant_id`) VALUES ('ff2b4440-ed0d-4892-adb4-b6999eba3ae7', '2');
\ No newline at end of file
--\r
use cspace;\r
\r
-insert into `users` (`username`,`passwd`, `created_at`) VALUES ('test','n4bQgYhMfWWaL+qgxVrQFaO/TxsrC4Is0V1sFbDwCgg=', '2010-02-17 16:31:48');\r
+-- default test user --\r
+insert into `users` (`username`,`passwd`, `created_at`) VALUES ('test','n4bQgYhMfWWaL+qgxVrQFaO/TxsrC4Is0V1sFbDwCgg=', now());\r
-- Additional account introduced during integration on release 0.6, and currently relied upon by the Application Layer.\r
-insert into `users` (`username`,`passwd`, `created_at`) VALUES ('test@collectionspace.org','NyaDNd1pMQRb3N+SYj/4GaZCRLU9DnRtQ4eXNJ1NpXg=', '2010-05-03 12:35:00');\r
+insert into `users` (`username`,`passwd`, `created_at`) VALUES ('test@collectionspace.org','NyaDNd1pMQRb3N+SYj/4GaZCRLU9DnRtQ4eXNJ1NpXg=', now());\r
+-- user for testing pahma deployment --\r
+insert into `users` (`username`,`passwd`, `created_at`) VALUES ('test-pahma','n4bQgYhMfWWaL+qgxVrQFaO/TxsrC4Is0V1sFbDwCgg=', now());\r
/** The known resource id. */
private String knownResourceId = null;
private String knownResource = "accounts-test";
- /** The add tenant. */
- boolean addTenant = true;
/*
* This method is called only by the parent class, AbstractServiceTestImpl
*/
Assert.assertTrue(REQUEST_TYPE.isValidStatusCode(statusCode),
invalidStatusCodeMessage(REQUEST_TYPE, statusCode));
Assert.assertEquals(statusCode, EXPECTED_STATUS_CODE);
- int EXPECTED_ITEMS = 5; //seeded permissions
+ int EXPECTED_ITEMS = 9; //seeded permissions
if (logger.isDebugEnabled()) {
logger.debug(testName + ": received = " + list.getPermissions().size()
+ " expected=" + EXPECTED_ITEMS);
private String verifyResourceId = null;
private String verifyRoleName = "collections_manager_test";
// private List<String> allResourceIdsCreated = new ArrayList<String>();
- /** The add tenant. */
- boolean addTenant = true;
+
/*
* This method is called only by the parent class, AbstractServiceTestImpl
*/
// Submit the request to the service and store the response.
RoleClient client = new RoleClient();
- Role role = createRoleInstance("ROLE_USERS",
+ Role role = createRoleInstance(knownRoleName,
"role users",
true);
ClientResponse<Response> res = client.create(role);
// Submit the request to the service and store the response.
RoleClient client = new RoleClient();
- Role role = createRoleInstance("ROLE_USERS",
+ Role role = createRoleInstance("",
"role for users",
false);
ClientResponse<Response> res = client.create(role);
*/
@Override
@Test(dataProvider = "testName", dataProviderClass = AbstractServiceTestImpl.class,
- dependsOnMethods = {"create"})
+ dependsOnMethods = {"createForUniqueRole"})
public void read(String testName) throws Exception {
if (logger.isDebugEnabled()) {
throws Exception {
for (Permission p : permList.getPermissions()) {
if (logger.isDebugEnabled()) {
- logger.debug("adding permission for res=" + p.getResourceName());
+ logger.debug("adding permission for res=" + p.getResourceName() +
+ " for tenant=" + p.getTenantId());
}
for (PermissionRole pr : permRoleList.getPermissionRoles()) {
if (pr.getPermissions().get(0).getPermissionId().equals(p.getCsid())) {
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>de3657a1-99f8-46b6-b4bb-2e28f9def87f</permissionId>
+ <permissionId>d44f77d4-52cd-4025-b292-c227aa73d6fc</permissionId>
<resourceName>idgenerators</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>de3657a1-99f8-46b6-b4bb-2e28f9def87f</permissionId>
+ <permissionId>d44f77d4-52cd-4025-b292-c227aa73d6fc</permissionId>
<resourceName>idgenerators</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>b6644980-aeef-4d8f-a048-338057f9d973</permissionId>
+ <permissionId>89231998-14d1-440e-a402-38f2f53a1e57</permissionId>
<resourceName>id</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>b6644980-aeef-4d8f-a048-338057f9d973</permissionId>
+ <permissionId>89231998-14d1-440e-a402-38f2f53a1e57</permissionId>
<resourceName>id</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>ddcdcc15-7f5a-49d8-8354-82c2e52d4727</permissionId>
+ <permissionId>ada701c6-649f-481f-afd5-2d192c483b6a</permissionId>
<resourceName>
/idgenerators/*/ids
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>ddcdcc15-7f5a-49d8-8354-82c2e52d4727</permissionId>
+ <permissionId>ada701c6-649f-481f-afd5-2d192c483b6a</permissionId>
<resourceName>
/idgenerators/*/ids
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>b203fb49-56c3-4662-b4bd-4008a6462364</permissionId>
+ <permissionId>ad4921b1-6968-4028-99e1-7edbfed46ead</permissionId>
<resourceName>collectionobjects</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>b203fb49-56c3-4662-b4bd-4008a6462364</permissionId>
+ <permissionId>ad4921b1-6968-4028-99e1-7edbfed46ead</permissionId>
<resourceName>collectionobjects</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>2dde10d0-2ce9-471b-9c66-c67a6e7c511f</permissionId>
+ <permissionId>dbd45393-f610-4a0d-81ed-03475aeacde3</permissionId>
<resourceName>
/collectionobjects/*/authorityrefs/
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>2dde10d0-2ce9-471b-9c66-c67a6e7c511f</permissionId>
+ <permissionId>dbd45393-f610-4a0d-81ed-03475aeacde3</permissionId>
<resourceName>
/collectionobjects/*/authorityrefs/
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>b8323642-cd0a-491f-a952-cf36d2b32134</permissionId>
+ <permissionId>3185e6b7-7248-4bfa-afeb-1e14b206afeb</permissionId>
<resourceName>intakes</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>b8323642-cd0a-491f-a952-cf36d2b32134</permissionId>
+ <permissionId>3185e6b7-7248-4bfa-afeb-1e14b206afeb</permissionId>
<resourceName>intakes</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>3c3e7ff6-7ecd-4643-b662-3fcb54e62abe</permissionId>
+ <permissionId>9f067bc0-0aaf-4499-986e-424b112f6ef2</permissionId>
<resourceName>
/intakes/*/authorityrefs/
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>3c3e7ff6-7ecd-4643-b662-3fcb54e62abe</permissionId>
+ <permissionId>9f067bc0-0aaf-4499-986e-424b112f6ef2</permissionId>
<resourceName>
/intakes/*/authorityrefs/
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>e248b5af-6eb3-4063-8816-6c2b0c55537c</permissionId>
+ <permissionId>021de06c-f386-42ad-b18e-fdd32496d521</permissionId>
<resourceName>loansin</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>e248b5af-6eb3-4063-8816-6c2b0c55537c</permissionId>
+ <permissionId>021de06c-f386-42ad-b18e-fdd32496d521</permissionId>
<resourceName>loansin</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>6529cf6d-34ae-4bab-a6e2-ab19973620fb</permissionId>
+ <permissionId>7339e77d-638e-4d78-a707-e094c9af29b5</permissionId>
<resourceName>
/loansin/*/authorityrefs/
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>6529cf6d-34ae-4bab-a6e2-ab19973620fb</permissionId>
+ <permissionId>7339e77d-638e-4d78-a707-e094c9af29b5</permissionId>
<resourceName>
/loansin/*/authorityrefs/
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>1145d28d-269a-41fd-806f-b0d6511cf273</permissionId>
+ <permissionId>4ce5feca-958e-47e2-a1f5-7a3dbd28bcd9</permissionId>
<resourceName>loansout</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>1145d28d-269a-41fd-806f-b0d6511cf273</permissionId>
+ <permissionId>4ce5feca-958e-47e2-a1f5-7a3dbd28bcd9</permissionId>
<resourceName>loansout</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>8773ed3b-9432-44e8-900e-1bc3908e7911</permissionId>
+ <permissionId>871a9263-bf27-4aee-a287-e489e3421e98</permissionId>
<resourceName>
/loansout/*/authorityrefs/
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>8773ed3b-9432-44e8-900e-1bc3908e7911</permissionId>
+ <permissionId>871a9263-bf27-4aee-a287-e489e3421e98</permissionId>
<resourceName>
/loansout/*/authorityrefs/
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>21786a64-02e0-4359-9c61-47cf821f2362</permissionId>
+ <permissionId>907f0d70-294f-42a3-b433-b084cdd800e5</permissionId>
<resourceName>movements</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>21786a64-02e0-4359-9c61-47cf821f2362</permissionId>
+ <permissionId>907f0d70-294f-42a3-b433-b084cdd800e5</permissionId>
<resourceName>movements</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>d501423e-9425-4c99-bf6f-478a2a9f971e</permissionId>
+ <permissionId>959f2186-4279-4828-9850-f2bf8939324b</permissionId>
<resourceName>
/movements/*/authorityrefs/
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>d501423e-9425-4c99-bf6f-478a2a9f971e</permissionId>
+ <permissionId>959f2186-4279-4828-9850-f2bf8939324b</permissionId>
<resourceName>
/movements/*/authorityrefs/
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>88075c4c-d5ed-420a-a767-1ab662066feb</permissionId>
+ <permissionId>4e9fe80c-1751-4f71-9ba4-9befdf0d6afb</permissionId>
<resourceName>vocabularies</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>88075c4c-d5ed-420a-a767-1ab662066feb</permissionId>
+ <permissionId>4e9fe80c-1751-4f71-9ba4-9befdf0d6afb</permissionId>
<resourceName>vocabularies</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>2444d28d-883f-4566-a378-f03b95d100b9</permissionId>
+ <permissionId>2bf629ea-66c7-4974-802e-852d9ce04a57</permissionId>
<resourceName>vocabularyitems</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>2444d28d-883f-4566-a378-f03b95d100b9</permissionId>
+ <permissionId>2bf629ea-66c7-4974-802e-852d9ce04a57</permissionId>
<resourceName>vocabularyitems</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>80a57584-6438-4df3-95df-bba1d7d9a275</permissionId>
+ <permissionId>00ffa49c-d778-45a0-b504-35bdd4ffc24f</permissionId>
<resourceName>
/vocabularies/*/items/
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>80a57584-6438-4df3-95df-bba1d7d9a275</permissionId>
+ <permissionId>00ffa49c-d778-45a0-b504-35bdd4ffc24f</permissionId>
<resourceName>
/vocabularies/*/items/
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>812a71ed-0dfe-4371-a390-4776ab5519f2</permissionId>
+ <permissionId>8d50e134-45a3-4b27-aee2-c3df1c073008</permissionId>
<resourceName>orgauthorities</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>812a71ed-0dfe-4371-a390-4776ab5519f2</permissionId>
+ <permissionId>8d50e134-45a3-4b27-aee2-c3df1c073008</permissionId>
<resourceName>orgauthorities</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>a9aeff96-179f-4b1d-8e74-25358185fdae</permissionId>
+ <permissionId>b8131f3c-ac19-49ad-8301-3fc588e31dfb</permissionId>
<resourceName>
/orgauthorities/*/items/*/authorityrefs/
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>a9aeff96-179f-4b1d-8e74-25358185fdae</permissionId>
+ <permissionId>b8131f3c-ac19-49ad-8301-3fc588e31dfb</permissionId>
<resourceName>
/orgauthorities/*/items/*/authorityrefs/
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>23897bf4-c727-4737-a70c-dc446519e1d5</permissionId>
+ <permissionId>e35cc564-b021-4ad2-8075-e8f7b53c1ee2</permissionId>
<resourceName>organizations</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>23897bf4-c727-4737-a70c-dc446519e1d5</permissionId>
+ <permissionId>e35cc564-b021-4ad2-8075-e8f7b53c1ee2</permissionId>
<resourceName>organizations</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>64f48448-c5ed-4096-acc8-17daebf2924f</permissionId>
+ <permissionId>4ca834a1-834b-46d1-ab17-8e313c3a9980</permissionId>
<resourceName>
/orgauthorities/*/items/
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>64f48448-c5ed-4096-acc8-17daebf2924f</permissionId>
+ <permissionId>4ca834a1-834b-46d1-ab17-8e313c3a9980</permissionId>
<resourceName>
/orgauthorities/*/items/
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>90bea796-bf38-46a6-8a9e-fc9a1eed157d</permissionId>
+ <permissionId>57b32d7b-db0e-48db-980f-2c4ff1e1476b</permissionId>
<resourceName>
/orgauthorities/*/items/*/refobjs
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>90bea796-bf38-46a6-8a9e-fc9a1eed157d</permissionId>
+ <permissionId>57b32d7b-db0e-48db-980f-2c4ff1e1476b</permissionId>
<resourceName>
/orgauthorities/*/items/*/refobjs
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>e61b8b12-3db0-499a-b074-79afec3f141a</permissionId>
+ <permissionId>04d87e96-d1a1-4891-beca-5be5929dffbe</permissionId>
<resourceName>personauthorities</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>e61b8b12-3db0-499a-b074-79afec3f141a</permissionId>
+ <permissionId>04d87e96-d1a1-4891-beca-5be5929dffbe</permissionId>
<resourceName>personauthorities</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>ce34076c-83b0-409c-b2b8-2d3805af9056</permissionId>
+ <permissionId>1caacc4d-b5a8-464f-b9bf-8638511f7999</permissionId>
<resourceName>
/personauthorities/*/items/
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>ce34076c-83b0-409c-b2b8-2d3805af9056</permissionId>
+ <permissionId>1caacc4d-b5a8-464f-b9bf-8638511f7999</permissionId>
<resourceName>
/personauthorities/*/items/
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>acac0886-627b-43e6-810c-f62c928b99bf</permissionId>
+ <permissionId>52ab1350-8a01-478a-b459-ddc29ac4edbb</permissionId>
<resourceName>
/personauthorities/*/items/*/refobjs
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>acac0886-627b-43e6-810c-f62c928b99bf</permissionId>
+ <permissionId>52ab1350-8a01-478a-b459-ddc29ac4edbb</permissionId>
<resourceName>
/personauthorities/*/items/*/refobjs
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>1aa13e33-4b21-4e6f-b670-2fc13f8fd2b4</permissionId>
+ <permissionId>efbfc241-02a4-4758-b546-2e10e44a88c2</permissionId>
<resourceName>persons</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>1aa13e33-4b21-4e6f-b670-2fc13f8fd2b4</permissionId>
+ <permissionId>efbfc241-02a4-4758-b546-2e10e44a88c2</permissionId>
<resourceName>persons</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>cbb98b91-25ed-4e8b-af4d-48f11e981e19</permissionId>
+ <permissionId>d15b3fd7-ee37-4490-bc4d-2701ffbdedb7</permissionId>
<resourceName>
/personauthorities/*/items/
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>cbb98b91-25ed-4e8b-af4d-48f11e981e19</permissionId>
+ <permissionId>d15b3fd7-ee37-4490-bc4d-2701ffbdedb7</permissionId>
<resourceName>
/personauthorities/*/items/
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>7c9e5c9a-8eb7-4579-ad94-e6d4f90c9ae8</permissionId>
+ <permissionId>9b19311b-b3b4-42a4-9fd1-592998f0ca88</permissionId>
<resourceName>locationauthorities</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>7c9e5c9a-8eb7-4579-ad94-e6d4f90c9ae8</permissionId>
+ <permissionId>9b19311b-b3b4-42a4-9fd1-592998f0ca88</permissionId>
<resourceName>locationauthorities</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>ce653183-2722-46c9-8f19-2e719c9cb06c</permissionId>
+ <permissionId>9b6f3483-3c36-412e-8ed4-19d48597313d</permissionId>
<resourceName>
/locationauthorities/*/items/
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>ce653183-2722-46c9-8f19-2e719c9cb06c</permissionId>
+ <permissionId>9b6f3483-3c36-412e-8ed4-19d48597313d</permissionId>
<resourceName>
/locationauthorities/*/items/
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>59b8de3a-9b1d-4e82-9aa5-0d28dd5a46ac</permissionId>
+ <permissionId>a26945bf-9e2e-41a0-967b-febb4c33aa2e</permissionId>
<resourceName>locations</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>59b8de3a-9b1d-4e82-9aa5-0d28dd5a46ac</permissionId>
+ <permissionId>a26945bf-9e2e-41a0-967b-febb4c33aa2e</permissionId>
<resourceName>locations</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>37e00906-0fa5-4d20-be21-739f66bcac52</permissionId>
+ <permissionId>983bff7f-8ba2-4d6e-98d6-b8de4724249e</permissionId>
<resourceName>acquisitions</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>37e00906-0fa5-4d20-be21-739f66bcac52</permissionId>
+ <permissionId>983bff7f-8ba2-4d6e-98d6-b8de4724249e</permissionId>
<resourceName>acquisitions</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>1ebea466-ab70-4368-8965-aa9305661d50</permissionId>
+ <permissionId>b3418175-6fd0-448f-82c3-d52714b83c17</permissionId>
<resourceName>
/acquisitions/*/authorityrefs/
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>1ebea466-ab70-4368-8965-aa9305661d50</permissionId>
+ <permissionId>b3418175-6fd0-448f-82c3-d52714b83c17</permissionId>
<resourceName>
/acquisitions/*/authorityrefs/
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>c48e8d4a-7972-469f-a2bc-1bca201cd772</permissionId>
+ <permissionId>20b460ef-b528-46a9-8975-8f7e34437696</permissionId>
<resourceName>relations</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>c48e8d4a-7972-469f-a2bc-1bca201cd772</permissionId>
+ <permissionId>20b460ef-b528-46a9-8975-8f7e34437696</permissionId>
<resourceName>relations</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>b2f182cb-61d7-4016-a2e2-075c13afefd0</permissionId>
+ <permissionId>e9c3b077-4384-4349-bb4c-b5e21e2b4aef</permissionId>
<resourceName>
relations/subject/*/type/*/object/*
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>b2f182cb-61d7-4016-a2e2-075c13afefd0</permissionId>
+ <permissionId>e9c3b077-4384-4349-bb4c-b5e21e2b4aef</permissionId>
<resourceName>
relations/subject/*/type/*/object/*
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>6ba014c0-80e1-456f-9c3c-de339391d254</permissionId>
+ <permissionId>f5b2e004-16f3-4b6b-882c-82bf101a864e</permissionId>
<resourceName>accounts</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>6ba014c0-80e1-456f-9c3c-de339391d254</permissionId>
+ <permissionId>f5b2e004-16f3-4b6b-882c-82bf101a864e</permissionId>
<resourceName>accounts</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>ee04f607-8e32-46dd-b5c9-b7657cdd290c</permissionId>
+ <permissionId>b4a69d0e-cedf-4218-91fa-d4e38f125207</permissionId>
<resourceName>dimensions</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>ee04f607-8e32-46dd-b5c9-b7657cdd290c</permissionId>
+ <permissionId>b4a69d0e-cedf-4218-91fa-d4e38f125207</permissionId>
<resourceName>dimensions</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>828327fc-7b3d-4bde-b6d6-e48c74c3f4fd</permissionId>
+ <permissionId>516ec6a0-0f75-48c9-8efe-6c3a409f0a0d</permissionId>
<resourceName>contacts</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>828327fc-7b3d-4bde-b6d6-e48c74c3f4fd</permissionId>
+ <permissionId>516ec6a0-0f75-48c9-8efe-6c3a409f0a0d</permissionId>
<resourceName>contacts</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>2d48d7a3-faba-4e8d-93a3-0863de7d92da</permissionId>
+ <permissionId>a4ec2332-0f57-4cc1-b48c-e500f329a8c2</permissionId>
<resourceName>
/personauthorities/*/items/*/contacts
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>2d48d7a3-faba-4e8d-93a3-0863de7d92da</permissionId>
+ <permissionId>a4ec2332-0f57-4cc1-b48c-e500f329a8c2</permissionId>
<resourceName>
/personauthorities/*/items/*/contacts
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>7d8f835d-d9c0-4508-b279-eef890db247a</permissionId>
+ <permissionId>efcc4e68-5f2f-43cf-aa86-c3df54af8f44</permissionId>
<resourceName>
/orgauthorities/*/items/*/contacts
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>7d8f835d-d9c0-4508-b279-eef890db247a</permissionId>
+ <permissionId>efcc4e68-5f2f-43cf-aa86-c3df54af8f44</permissionId>
<resourceName>
/orgauthorities/*/items/*/contacts
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>ab92d994-29eb-4d64-bd49-b3cafd8f0a5b</permissionId>
+ <permissionId>e01bc5b4-c359-42ba-80a8-6920c704622b</permissionId>
<resourceName>notes</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>ab92d994-29eb-4d64-bd49-b3cafd8f0a5b</permissionId>
+ <permissionId>e01bc5b4-c359-42ba-80a8-6920c704622b</permissionId>
<resourceName>notes</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>db65825c-50c3-49a8-af5f-68115f16537b</permissionId>
+ <permissionId>41df9971-887c-4686-aec7-94fd86079a93</permissionId>
<resourceName>authorization/roles</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>db65825c-50c3-49a8-af5f-68115f16537b</permissionId>
+ <permissionId>41df9971-887c-4686-aec7-94fd86079a93</permissionId>
<resourceName>authorization/roles</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>f7f41db6-f85f-4cd3-a2d6-d9185b6dd8e9</permissionId>
+ <permissionId>d2a4b854-3123-4cb1-a109-f1a519a7b2a4</permissionId>
<resourceName>authorization/permissions</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>f7f41db6-f85f-4cd3-a2d6-d9185b6dd8e9</permissionId>
+ <permissionId>d2a4b854-3123-4cb1-a109-f1a519a7b2a4</permissionId>
<resourceName>authorization/permissions</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>074e7f98-2580-48d3-969d-4043f156eaa2</permissionId>
+ <permissionId>24e6142e-56d7-4312-ac0d-d68f1deb21b8</permissionId>
<resourceName>authorization/permissions/permroles</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>074e7f98-2580-48d3-969d-4043f156eaa2</permissionId>
+ <permissionId>24e6142e-56d7-4312-ac0d-d68f1deb21b8</permissionId>
<resourceName>authorization/permissions/permroles</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>0cdd6f4e-58b6-4c11-bbbd-0984c30d6dbd</permissionId>
+ <permissionId>6ce06e7f-e471-410c-a7a9-ec50b0bc11be</permissionId>
<resourceName>
/authorization/permissions/*/permroles/
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>0cdd6f4e-58b6-4c11-bbbd-0984c30d6dbd</permissionId>
+ <permissionId>6ce06e7f-e471-410c-a7a9-ec50b0bc11be</permissionId>
<resourceName>
/authorization/permissions/*/permroles/
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>361c4bed-bd81-4f22-82df-f462111663a9</permissionId>
+ <permissionId>22059d92-f298-49fc-80c0-55c34d966836</permissionId>
<resourceName>accounts/accountroles</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>361c4bed-bd81-4f22-82df-f462111663a9</permissionId>
+ <permissionId>22059d92-f298-49fc-80c0-55c34d966836</permissionId>
<resourceName>accounts/accountroles</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>e272da20-719c-49d1-9584-c21cedcd3a65</permissionId>
+ <permissionId>ca0acf6a-fc55-426b-8717-b5da0e764cd3</permissionId>
<resourceName>
/accounts/*/accountroles/
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>e272da20-719c-49d1-9584-c21cedcd3a65</permissionId>
+ <permissionId>ca0acf6a-fc55-426b-8717-b5da0e764cd3</permissionId>
<resourceName>
/accounts/*/accountroles/
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>d7618a4f-d8be-45f6-b0f3-2816ecdca341</permissionId>
+ <permissionId>0d7965c9-559f-4a31-ac20-fabca081247b</permissionId>
<resourceName>authorization/roles/permroles</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>d7618a4f-d8be-45f6-b0f3-2816ecdca341</permissionId>
+ <permissionId>0d7965c9-559f-4a31-ac20-fabca081247b</permissionId>
<resourceName>authorization/roles/permroles</resourceName>
</permission>
<role>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>3b6b0755-9044-46ee-8a85-4e44ac68dd0a</permissionId>
+ <permissionId>df29890b-f7dd-4cb2-bf20-4873915ec149</permissionId>
<resourceName>
/authorization/roles/*/permroles/
</resourceName>
</permission>
<role>
- <roleId>ad3a2b4c-ef74-47f0-bdb0-f6a906acd370</roleId>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>3b6b0755-9044-46ee-8a85-4e44ac68dd0a</permissionId>
+ <permissionId>df29890b-f7dd-4cb2-bf20-4873915ec149</permissionId>
<resourceName>
/authorization/roles/*/permroles/
</resourceName>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>da5253a4-471f-4ada-9d7d-8f1a9a747647</permissionId>
+ <permissionId>24ca9b10-db58-4f83-9270-48d31e439930</permissionId>
<resourceName>idgenerators</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>4d524373-a5df-45e2-aec6-2e214f08431e</permissionId>
- <resourceName>id</resourceName>
+ <permissionId>24ca9b10-db58-4f83-9270-48d31e439930</permissionId>
+ <resourceName>idgenerators</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>c757f1c4-3282-4055-b0e1-2c818fec709b</permissionId>
- <resourceName>
- /idgenerators/*/ids
- </resourceName>
+ <permissionId>cce6d084-4686-4786-90cb-bc816ef7f489</permissionId>
+ <resourceName>id</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>e383a971-0335-41da-88e6-f7625303f186</permissionId>
- <resourceName>collectionobjects</resourceName>
+ <permissionId>cce6d084-4686-4786-90cb-bc816ef7f489</permissionId>
+ <resourceName>id</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>b2c49fb3-fb34-4425-86c7-73c48873a983</permissionId>
+ <permissionId>43b43275-7ef5-4f3f-a549-acaae5a26ef7</permissionId>
<resourceName>
- /collectionobjects/*/authorityrefs/
+ /idgenerators/*/ids
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
- </permissionRole>
- <permissionRole>
- <subject>ROLE</subject>
- <permission>
- <permissionId>2ac4ace4-20f8-4a5f-b984-4753e5452a87</permissionId>
- <resourceName>intakes</resourceName>
- </permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>64af5fcc-a57d-4fa6-820c-4ab857a46590</permissionId>
+ <permissionId>43b43275-7ef5-4f3f-a549-acaae5a26ef7</permissionId>
<resourceName>
- /intakes/*/authorityrefs/
+ /idgenerators/*/ids
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>0258eabe-02d3-494c-b405-30e3463a2feb</permissionId>
- <resourceName>loansin</resourceName>
+ <permissionId>122cbe8f-076c-4803-b1b0-7c493c444215</permissionId>
+ <resourceName>collectionobjects</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
- </permissionRole>
- <permissionRole>
- <subject>ROLE</subject>
- <permission>
- <permissionId>ae5f5fab-7205-4b92-932f-857b68c5d4b5</permissionId>
- <resourceName>
- /loansin/*/authorityrefs/
- </resourceName>
- </permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>9e8b0907-e262-42f9-a4da-6e0bf6493e5a</permissionId>
- <resourceName>loansout</resourceName>
+ <permissionId>122cbe8f-076c-4803-b1b0-7c493c444215</permissionId>
+ <resourceName>collectionobjects</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>b46b29bc-1795-4e3e-a247-59e23742b705</permissionId>
+ <permissionId>4ba3ee15-f527-4b11-9341-771ef3af24a3</permissionId>
<resourceName>
- /loansout/*/authorityrefs/
+ /collectionobjects/*/authorityrefs/
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
- </permissionRole>
- <permissionRole>
- <subject>ROLE</subject>
- <permission>
- <permissionId>f90c5454-58e9-4b32-a8e4-03b80ed6f58e</permissionId>
- <resourceName>movements</resourceName>
- </permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>e7c31362-9bb7-48a4-a324-63e84401df30</permissionId>
+ <permissionId>4ba3ee15-f527-4b11-9341-771ef3af24a3</permissionId>
<resourceName>
- /movements/*/authorityrefs/
+ /collectionobjects/*/authorityrefs/
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>90f3a12c-0ac1-417b-942e-88f2b11383b7</permissionId>
- <resourceName>vocabularies</resourceName>
+ <permissionId>df4c1540-5210-4b41-a735-18b8f71ad14b</permissionId>
+ <resourceName>intakes</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>c961fc05-1a2c-4890-88b4-42757378e323</permissionId>
- <resourceName>vocabularyitems</resourceName>
+ <permissionId>df4c1540-5210-4b41-a735-18b8f71ad14b</permissionId>
+ <resourceName>intakes</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>4d13ef59-1443-40ee-8e45-9892c83ec9a1</permissionId>
+ <permissionId>43af6eab-fc37-4c48-8f87-2e6f80afda7d</permissionId>
<resourceName>
- /vocabularies/*/items/
+ /intakes/*/authorityrefs/
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
- </permissionRole>
- <permissionRole>
- <subject>ROLE</subject>
- <permission>
- <permissionId>6caa049b-25cc-486c-935f-bf215d550bcd</permissionId>
- <resourceName>orgauthorities</resourceName>
- </permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>08c36f8b-2432-44c4-a1dd-cba8c8ea53e5</permissionId>
+ <permissionId>43af6eab-fc37-4c48-8f87-2e6f80afda7d</permissionId>
<resourceName>
- /orgauthorities/*/items/*/authorityrefs/
+ /intakes/*/authorityrefs/
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>c0149cbb-a984-4e32-8302-c045a3e82bf2</permissionId>
- <resourceName>organizations</resourceName>
+ <permissionId>29953599-287c-4b67-826d-df72d1c1266d</permissionId>
+ <resourceName>loansin</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
- <roleName>ROLE_TENANT_READER</roleName>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>b2e0c247-9e3b-4bf3-a956-8b98a8505263</permissionId>
- <resourceName>
- /orgauthorities/*/items/
+ <permissionId>29953599-287c-4b67-826d-df72d1c1266d</permissionId>
+ <resourceName>loansin</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>447f5a41-46a4-4e9d-9b15-62d7fc2466c7</permissionId>
+ <resourceName>
+ /loansin/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>447f5a41-46a4-4e9d-9b15-62d7fc2466c7</permissionId>
+ <resourceName>
+ /loansin/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>62a72a0a-d028-46c4-8fa5-951746e4c4a5</permissionId>
+ <resourceName>loansout</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>62a72a0a-d028-46c4-8fa5-951746e4c4a5</permissionId>
+ <resourceName>loansout</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>6da07854-0d46-493b-b6cf-47af8fef81b4</permissionId>
+ <resourceName>
+ /loansout/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>6da07854-0d46-493b-b6cf-47af8fef81b4</permissionId>
+ <resourceName>
+ /loansout/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>9807f421-1587-4720-9f60-60087a974302</permissionId>
+ <resourceName>movements</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>9807f421-1587-4720-9f60-60087a974302</permissionId>
+ <resourceName>movements</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>041f517a-b58b-4df6-ab7e-57fe6bbbaef5</permissionId>
+ <resourceName>
+ /movements/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>041f517a-b58b-4df6-ab7e-57fe6bbbaef5</permissionId>
+ <resourceName>
+ /movements/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>3580ae91-4035-49cd-89a7-0eeeb2cb6b7c</permissionId>
+ <resourceName>vocabularies</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>3580ae91-4035-49cd-89a7-0eeeb2cb6b7c</permissionId>
+ <resourceName>vocabularies</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>8e936e74-7dcb-4508-b727-0a33344b5453</permissionId>
+ <resourceName>vocabularyitems</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>8e936e74-7dcb-4508-b727-0a33344b5453</permissionId>
+ <resourceName>vocabularyitems</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>e450ee2f-35eb-45bc-b718-caddbcf4dc98</permissionId>
+ <resourceName>
+ /vocabularies/*/items/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>e450ee2f-35eb-45bc-b718-caddbcf4dc98</permissionId>
+ <resourceName>
+ /vocabularies/*/items/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>dba4f5cb-4647-4c5f-a4ae-22ffa2cd441c</permissionId>
+ <resourceName>orgauthorities</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>dba4f5cb-4647-4c5f-a4ae-22ffa2cd441c</permissionId>
+ <resourceName>orgauthorities</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>3832f8d9-6d84-4e38-9f4a-8aa6a7bf3999</permissionId>
+ <resourceName>
+ /orgauthorities/*/items/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>3832f8d9-6d84-4e38-9f4a-8aa6a7bf3999</permissionId>
+ <resourceName>
+ /orgauthorities/*/items/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>0e6e1b2c-5b85-4d20-ab17-e31924e97927</permissionId>
+ <resourceName>organizations</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>0e6e1b2c-5b85-4d20-ab17-e31924e97927</permissionId>
+ <resourceName>organizations</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>aae5e62b-5841-4a85-b90a-f65f06d61f04</permissionId>
+ <resourceName>
+ /orgauthorities/*/items/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>aae5e62b-5841-4a85-b90a-f65f06d61f04</permissionId>
+ <resourceName>
+ /orgauthorities/*/items/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>34ab8a6c-3b92-4faf-891b-01686eb7c71d</permissionId>
+ <resourceName>
+ /orgauthorities/*/items/*/refobjs
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>34ab8a6c-3b92-4faf-891b-01686eb7c71d</permissionId>
+ <resourceName>
+ /orgauthorities/*/items/*/refobjs
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>679509a8-4d68-4ba6-a11f-1411b82d417f</permissionId>
+ <resourceName>personauthorities</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>679509a8-4d68-4ba6-a11f-1411b82d417f</permissionId>
+ <resourceName>personauthorities</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>5a1dab9b-fea0-4b2d-b141-a64bbf01658f</permissionId>
+ <resourceName>
+ /personauthorities/*/items/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>5a1dab9b-fea0-4b2d-b141-a64bbf01658f</permissionId>
+ <resourceName>
+ /personauthorities/*/items/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>e714cf45-5e1d-4b5f-86bb-5f9ec4f39eaf</permissionId>
+ <resourceName>
+ /personauthorities/*/items/*/refobjs
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>e714cf45-5e1d-4b5f-86bb-5f9ec4f39eaf</permissionId>
+ <resourceName>
+ /personauthorities/*/items/*/refobjs
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>0349216f-65cd-4a68-8907-66dc151c5911</permissionId>
+ <resourceName>persons</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>0349216f-65cd-4a68-8907-66dc151c5911</permissionId>
+ <resourceName>persons</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>38a54418-3ca7-4e65-8373-f1822c2f808f</permissionId>
+ <resourceName>
+ /personauthorities/*/items/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>38a54418-3ca7-4e65-8373-f1822c2f808f</permissionId>
+ <resourceName>
+ /personauthorities/*/items/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>1b0e6e9e-a65e-4d08-92e8-dc38408d2f27</permissionId>
+ <resourceName>locationauthorities</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>1b0e6e9e-a65e-4d08-92e8-dc38408d2f27</permissionId>
+ <resourceName>locationauthorities</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>6584ed70-b21e-47be-b244-ff844f872780</permissionId>
+ <resourceName>
+ /locationauthorities/*/items/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>6584ed70-b21e-47be-b244-ff844f872780</permissionId>
+ <resourceName>
+ /locationauthorities/*/items/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>7e350767-a7d7-4105-b1c8-934e3f8daa1a</permissionId>
+ <resourceName>locations</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>7e350767-a7d7-4105-b1c8-934e3f8daa1a</permissionId>
+ <resourceName>locations</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>689c4855-d032-4cef-8960-f42ff2994ef4</permissionId>
+ <resourceName>acquisitions</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>689c4855-d032-4cef-8960-f42ff2994ef4</permissionId>
+ <resourceName>acquisitions</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>92cfdc09-dd6a-45cd-a2c3-1de5cb1f336b</permissionId>
+ <resourceName>
+ /acquisitions/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>92cfdc09-dd6a-45cd-a2c3-1de5cb1f336b</permissionId>
+ <resourceName>
+ /acquisitions/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>754b4802-19b1-4185-a6fb-83ecadabff06</permissionId>
+ <resourceName>relations</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>754b4802-19b1-4185-a6fb-83ecadabff06</permissionId>
+ <resourceName>relations</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>628b4acf-bd52-4a77-824c-5b657da3608a</permissionId>
+ <resourceName>
+ relations/subject/*/type/*/object/*
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>628b4acf-bd52-4a77-824c-5b657da3608a</permissionId>
+ <resourceName>
+ relations/subject/*/type/*/object/*
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>7de123a3-8e10-4fa7-b8ae-74a684acd569</permissionId>
+ <resourceName>accounts</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>7de123a3-8e10-4fa7-b8ae-74a684acd569</permissionId>
+ <resourceName>accounts</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>cb5f541b-c592-4fb5-9e0a-c88dfc3f9301</permissionId>
+ <resourceName>dimensions</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>cb5f541b-c592-4fb5-9e0a-c88dfc3f9301</permissionId>
+ <resourceName>dimensions</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>80a53f0e-6571-4195-ad9f-18cc5ba65b0c</permissionId>
+ <resourceName>contacts</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>80a53f0e-6571-4195-ad9f-18cc5ba65b0c</permissionId>
+ <resourceName>contacts</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>90fee1ba-1706-4500-8222-17614b69b4cb</permissionId>
+ <resourceName>
+ /personauthorities/*/items/*/contacts
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>90fee1ba-1706-4500-8222-17614b69b4cb</permissionId>
+ <resourceName>
+ /personauthorities/*/items/*/contacts
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>f56cd470-75fb-4994-9172-2244e139c9db</permissionId>
+ <resourceName>
+ /orgauthorities/*/items/*/contacts
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>f56cd470-75fb-4994-9172-2244e139c9db</permissionId>
+ <resourceName>
+ /orgauthorities/*/items/*/contacts
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>47b4dd62-3247-4414-b19a-4624ba7c5228</permissionId>
+ <resourceName>notes</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>47b4dd62-3247-4414-b19a-4624ba7c5228</permissionId>
+ <resourceName>notes</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>c2aee301-5540-4e56-ad1f-03e5ce0d28a8</permissionId>
+ <resourceName>authorization/roles</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>c2aee301-5540-4e56-ad1f-03e5ce0d28a8</permissionId>
+ <resourceName>authorization/roles</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>1ad9339c-200e-4d0c-af7f-394d578a45ca</permissionId>
+ <resourceName>authorization/permissions</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>1ad9339c-200e-4d0c-af7f-394d578a45ca</permissionId>
+ <resourceName>authorization/permissions</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>3b4cf91b-3851-44ad-97c1-b23f3788d617</permissionId>
+ <resourceName>authorization/permissions/permroles</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>3b4cf91b-3851-44ad-97c1-b23f3788d617</permissionId>
+ <resourceName>authorization/permissions/permroles</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>417f1755-0645-4508-b9f1-f7380b897146</permissionId>
+ <resourceName>
+ /authorization/permissions/*/permroles/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>417f1755-0645-4508-b9f1-f7380b897146</permissionId>
+ <resourceName>
+ /authorization/permissions/*/permroles/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>7817cfa9-bdd5-4cf2-bc6b-e0ff102cd434</permissionId>
+ <resourceName>accounts/accountroles</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>7817cfa9-bdd5-4cf2-bc6b-e0ff102cd434</permissionId>
+ <resourceName>accounts/accountroles</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>fe176181-6e43-4525-8c5e-f43b16f7132e</permissionId>
+ <resourceName>
+ /accounts/*/accountroles/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>fe176181-6e43-4525-8c5e-f43b16f7132e</permissionId>
+ <resourceName>
+ /accounts/*/accountroles/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>4a7d9a48-2dc7-41ee-8af3-b2965eb25afb</permissionId>
+ <resourceName>authorization/roles/permroles</resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>4a7d9a48-2dc7-41ee-8af3-b2965eb25afb</permissionId>
+ <resourceName>authorization/roles/permroles</resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>eac699a7-e863-4798-bb19-6718d6faa36c</permissionId>
+ <resourceName>
+ /authorization/roles/*/permroles/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>01b70ec2-e1f7-4700-91a4-0c425585031a</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ <role>
+ <roleId>5addeec3-3206-43db-a164-9e529471cf91</roleId>
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>eac699a7-e863-4798-bb19-6718d6faa36c</permissionId>
+ <resourceName>
+ /authorization/roles/*/permroles/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>0</roleId>
+ <roleName>ROLE_ADMINISTRATOR</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>497b6528-fe1e-4fec-89cf-7b17c499bbac</permissionId>
+ <resourceName>idgenerators</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>d5a2400d-f7fd-4eff-ab5e-fbc1457fce32</permissionId>
+ <resourceName>id</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>62181818-1275-4861-9251-a9c172add296</permissionId>
+ <resourceName>
+ /idgenerators/*/ids
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>eb6dff1c-d73d-4874-ac31-e379f246b09a</permissionId>
+ <resourceName>collectionobjects</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>0ce7c405-9c9d-424e-b72e-51d9b88db92c</permissionId>
+ <resourceName>
+ /collectionobjects/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>37586285-faf9-4bc6-8518-2481d242a22c</permissionId>
+ <resourceName>intakes</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>22a4e320-9bbc-4922-9244-dc418d813e03</permissionId>
+ <resourceName>
+ /intakes/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>e31f96b3-c694-4981-8b05-6ed69c508161</permissionId>
+ <resourceName>loansin</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>084aff5f-82b8-499c-ad77-4a169fd80138</permissionId>
+ <resourceName>
+ /loansin/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>e9b1bed8-1f2e-49dd-97be-2094688485ec</permissionId>
+ <resourceName>loansout</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>ff9c7503-8d0a-434c-8e16-7b6511211648</permissionId>
+ <resourceName>
+ /loansout/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>cabb3eda-b0e7-4255-b25c-193f79e191f2</permissionId>
+ <resourceName>movements</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>1d7067d4-f229-4ea9-9fce-a661bd324ebf</permissionId>
+ <resourceName>
+ /movements/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>37b90e54-ae34-49ed-b790-4da18077ceb7</permissionId>
+ <resourceName>vocabularies</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>3dec89f9-179c-4537-bdd7-913ed431b97b</permissionId>
+ <resourceName>vocabularyitems</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>b98c1deb-f425-432e-b5e0-53612e6ef4d6</permissionId>
+ <resourceName>
+ /vocabularies/*/items/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>6080c67c-32ab-4245-8b75-ad42bba6dcb6</permissionId>
+ <resourceName>orgauthorities</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>5b4d0845-ef49-46eb-b451-13cdae375b73</permissionId>
+ <resourceName>
+ /orgauthorities/*/items/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>3242d512-b992-4721-8717-a88947d54afc</permissionId>
+ <resourceName>organizations</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>7ff3a896-37b9-4cd8-9011-eb168d192446</permissionId>
+ <resourceName>
+ /orgauthorities/*/items/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>638f36e9-0f9c-4961-98ee-2e7fb710efae</permissionId>
+ <resourceName>
+ /orgauthorities/*/items/*/refobjs
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>809a5cba-379b-41fe-aaf5-d61301ec4fe7</permissionId>
+ <resourceName>personauthorities</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>c69b057d-230a-466d-8038-e4b1324d41c2</permissionId>
+ <resourceName>
+ /personauthorities/*/items/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>bcbb0602-6e00-4518-9960-3e36f9ac6094</permissionId>
+ <resourceName>
+ /personauthorities/*/items/*/refobjs
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>801faebf-e2f2-4717-a525-fa4dfa63caf8</permissionId>
+ <resourceName>persons</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>c0bef2ce-625f-4bea-b337-1269af2fdea8</permissionId>
+ <resourceName>
+ /personauthorities/*/items/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>eba34232-cdac-42ad-9b88-2aa9492ec802</permissionId>
+ <resourceName>locationauthorities</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>b9ae3884-8b18-467b-8caf-aaddfe87f968</permissionId>
+ <resourceName>
+ /locationauthorities/*/items/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>6401c854-599a-4564-8097-d0ec9c58af3b</permissionId>
+ <resourceName>locations</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>e505a806-30fd-48e4-a1b0-3345291561a3</permissionId>
+ <resourceName>acquisitions</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>236a919f-8e24-43bd-b3d5-f58640f24490</permissionId>
+ <resourceName>
+ /acquisitions/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>6701f7a9-5021-43e2-a5ca-62ccf523809c</permissionId>
+ <resourceName>relations</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>62ca97b4-15e6-4008-b656-c0d92126d6d8</permissionId>
+ <resourceName>
+ relations/subject/*/type/*/object/*
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>dbc19509-8d72-4f1b-8532-9d81969c2f3a</permissionId>
+ <resourceName>accounts</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>cf88e815-051d-42ca-b443-5fbc3e3e8e65</permissionId>
+ <resourceName>dimensions</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>bf943992-5e0f-48c8-848d-b024452b69c7</permissionId>
+ <resourceName>contacts</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>89db9711-8197-48ec-9355-560263b01863</permissionId>
+ <resourceName>
+ /personauthorities/*/items/*/contacts
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>ce012cfd-51a2-4f4b-a26e-8fcc9da79ee4</permissionId>
+ <resourceName>
+ /orgauthorities/*/items/*/contacts
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>790576d7-7870-4989-8084-b2e7acfe568b</permissionId>
+ <resourceName>notes</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>63d9ee17-a98e-455a-9bc6-c8f4e3237850</permissionId>
+ <resourceName>authorization/roles</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>14696853-077b-4396-a27d-7fdf229f2848</permissionId>
+ <resourceName>authorization/permissions</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>b0b79cce-a76b-441d-ba79-eaea8793e1eb</permissionId>
+ <resourceName>authorization/permissions/permroles</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>b6e31c70-cf71-429a-b286-5c5f331dce8d</permissionId>
+ <resourceName>
+ /authorization/permissions/*/permroles/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>6c232793-eb79-4144-a7b6-a3a817777406</permissionId>
+ <resourceName>accounts/accountroles</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>08714948-5e03-412b-8ad6-01cbf422dc67</permissionId>
+ <resourceName>
+ /accounts/*/accountroles/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>7ca1de99-c776-4f7a-a111-474d97dc6a7d</permissionId>
+ <resourceName>authorization/roles/permroles</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>d4b21996-d23a-4311-9058-f9fab6295dcf</permissionId>
+ <resourceName>
+ /authorization/roles/*/permroles/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>f57b3714-0f15-49c6-8f9c-5d6546aed9fe</permissionId>
+ <resourceName>idgenerators</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>feb6a75f-e192-4a8f-9104-f66feabece26</permissionId>
+ <resourceName>id</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>868d985f-ffed-4696-a617-633a4deff71d</permissionId>
+ <resourceName>
+ /idgenerators/*/ids
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>e0410bfd-8d52-4a84-a095-52dcc3dc0c3b</permissionId>
+ <resourceName>collectionobjects</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>6520ad4c-8684-4e00-878b-6df751a3c7bd</permissionId>
+ <resourceName>
+ /collectionobjects/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>c193854c-7f5f-42ea-ada1-4a2b2e3e2ff1</permissionId>
+ <resourceName>intakes</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>135ad3f1-723a-44b6-9944-7bc05b3f11bf</permissionId>
+ <resourceName>
+ /intakes/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>9e1d52c2-655d-412d-a596-071bd1ebab23</permissionId>
+ <resourceName>loansin</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>8232653e-e330-4761-b1af-b29feb4c15c9</permissionId>
+ <resourceName>
+ /loansin/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>d2673bf9-f3f5-419f-b317-a7b6198fe397</permissionId>
+ <resourceName>loansout</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>cd7ffe2f-c0c2-4b56-87ed-4bb48816af01</permissionId>
+ <resourceName>
+ /loansout/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>82ac6bf4-2477-4e40-acef-86437520cb0c</permissionId>
+ <resourceName>movements</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>6740393d-3d35-4563-9a57-841b5d34d71e</permissionId>
+ <resourceName>
+ /movements/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>8542668f-4e4c-41c2-abb3-49c5ae219e7e</permissionId>
+ <resourceName>vocabularies</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>18e6b306-3777-4a5e-a7a6-c22f3c5cb4a4</permissionId>
+ <resourceName>vocabularyitems</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>67a1bca5-1ba1-48a9-8687-78fe37c9d1aa</permissionId>
+ <resourceName>
+ /vocabularies/*/items/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>318a9d0c-56c7-43fc-8813-bf365fe05a3e</permissionId>
+ <resourceName>orgauthorities</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>b40ab1e0-b3bc-4508-9876-4d6cf749c015</permissionId>
+ <resourceName>
+ /orgauthorities/*/items/*/authorityrefs/
+ </resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>8cd27f28-e78d-426c-8de3-13c1c094e233</permissionId>
+ <resourceName>organizations</resourceName>
+ </permission>
+ <role>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ </permissionRole>
+ <permissionRole>
+ <subject>ROLE</subject>
+ <permission>
+ <permissionId>5db30553-7d72-486a-bd40-81300ea9a2c4</permissionId>
+ <resourceName>
+ /orgauthorities/*/items/
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>35cb8d8b-4309-4177-9c1c-157dbeb36f5d</permissionId>
+ <permissionId>36f8ae51-bf94-4e83-8f32-d6d1e4c9bb8d</permissionId>
<resourceName>
/orgauthorities/*/items/*/refobjs
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>c890f437-7356-4bcd-b5b1-0e36b13e6358</permissionId>
+ <permissionId>478f0ebb-3a5f-489d-91b0-aa1f55a40a39</permissionId>
<resourceName>personauthorities</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>778904e1-8b67-4ace-af24-8b756385ce80</permissionId>
+ <permissionId>5e3e98ed-61bb-41f5-abee-ad71c019f5bc</permissionId>
<resourceName>
/personauthorities/*/items/
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>d531417d-b61b-471c-90ff-f21969f00e4c</permissionId>
+ <permissionId>ede401ec-4976-4304-a1ba-d79e87fc37eb</permissionId>
<resourceName>
/personauthorities/*/items/*/refobjs
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>46581f00-1338-417d-9ff5-1250a8eb5e3c</permissionId>
+ <permissionId>837272f1-c53e-4c92-b27d-3c669b054bbd</permissionId>
<resourceName>persons</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>b707073a-6c2f-4bc5-b8b2-800be7cc17ec</permissionId>
+ <permissionId>bf13ee0d-09fa-4311-9ccf-9a353577fe8b</permissionId>
<resourceName>
/personauthorities/*/items/
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>88832e9b-0f62-406e-8a64-ea61d53153ed</permissionId>
+ <permissionId>e8679b1f-857a-463f-a1f3-4cc8c4103061</permissionId>
<resourceName>locationauthorities</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>5b8c3d7d-f027-4675-9edf-1f7733ce360d</permissionId>
+ <permissionId>8d56f355-564d-432a-8bda-82bebb55e55a</permissionId>
<resourceName>
/locationauthorities/*/items/
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>a73bebb8-d109-4fbd-aa29-f71766eac61a</permissionId>
+ <permissionId>39530279-1540-4768-8def-6a3b1cee4990</permissionId>
<resourceName>locations</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>7d6dcff6-167f-4634-a35d-ec635e34fc60</permissionId>
+ <permissionId>06cca12d-2a18-4303-a972-e4ce3d094d30</permissionId>
<resourceName>acquisitions</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>2007cc99-7208-4238-9792-bceb5df78733</permissionId>
+ <permissionId>65b4803b-8697-4669-995b-d1f5eba17a86</permissionId>
<resourceName>
/acquisitions/*/authorityrefs/
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>94594f80-9ae2-4f51-b1f1-21e49bca2f5e</permissionId>
+ <permissionId>1d87e6a3-d770-4f63-8e29-ecb312f91157</permissionId>
<resourceName>relations</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>e75b9dd6-737a-43cd-b847-c8effa3d6055</permissionId>
+ <permissionId>39ed698e-3474-4f7d-83d5-0105078cb21f</permissionId>
<resourceName>
relations/subject/*/type/*/object/*
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>da6da169-41d0-4f7f-a246-e7a9c96967de</permissionId>
+ <permissionId>d4b62feb-53f4-4aac-bc50-e30e5130ec98</permissionId>
<resourceName>accounts</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>8b1fc4c6-1610-490d-8972-17ac113b36d9</permissionId>
+ <permissionId>0a047c4c-1c78-47fb-b951-70912934cab7</permissionId>
<resourceName>dimensions</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>97455f0e-2064-4667-9bfe-540a05b571ae</permissionId>
+ <permissionId>50ee8add-45ef-4643-8aa7-1d144d0d4cb9</permissionId>
<resourceName>contacts</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>10655b0e-d168-4ac5-96fc-5ff88621aaee</permissionId>
+ <permissionId>b015754f-2d5d-454a-8403-b3e49f51cc5b</permissionId>
<resourceName>
/personauthorities/*/items/*/contacts
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>1209a058-b37e-438d-906a-03bc49a4928c</permissionId>
+ <permissionId>430e88e1-cae6-4dea-82bd-34b17fda7ae3</permissionId>
<resourceName>
/orgauthorities/*/items/*/contacts
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>eb97ccdf-daaa-436e-bd40-f86e3d7dc8d0</permissionId>
+ <permissionId>fc1db1b6-1fd9-439e-871d-bcb6f41bb5ca</permissionId>
<resourceName>notes</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>655fb068-d229-47e0-b636-48e53217d070</permissionId>
+ <permissionId>beea8fd0-de64-40ab-a620-f8fb571e39b4</permissionId>
<resourceName>authorization/roles</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>556204b7-df13-40fe-8185-ac4e9924a033</permissionId>
+ <permissionId>87eb9947-f5e7-47fd-8972-dc24cf9d2ae1</permissionId>
<resourceName>authorization/permissions</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>3d5ecccd-37a5-4185-88b3-66aa1def43b5</permissionId>
+ <permissionId>38b681d4-1090-474a-addc-43b03f2fdd1b</permissionId>
<resourceName>authorization/permissions/permroles</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>049d792a-f1c7-42de-8d88-c09a1143340f</permissionId>
+ <permissionId>dd6497fb-e4af-4732-b39e-27c8f8cf5b89</permissionId>
<resourceName>
/authorization/permissions/*/permroles/
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>b85355db-2c33-4469-bb27-bf4fb1ac4039</permissionId>
+ <permissionId>538889df-13ce-4df5-a204-a0c58db6a544</permissionId>
<resourceName>accounts/accountroles</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>ce37cf6c-a550-49de-9bdf-0ede7cafb617</permissionId>
+ <permissionId>7f9ba507-8419-4227-86af-9819a568a56b</permissionId>
<resourceName>
/accounts/*/accountroles/
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>e1af00a3-a7c9-441f-a48c-f9698f47298a</permissionId>
+ <permissionId>c3e42f4f-a2f5-4cd8-afb5-7872f218fa18</permissionId>
<resourceName>authorization/roles/permroles</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<permissionRole>
<subject>ROLE</subject>
<permission>
- <permissionId>8fc74578-d253-4eb7-a0e3-43bc70a88a62</permissionId>
+ <permissionId>17df84a4-d06d-4b57-bb75-15e84a04bf10</permissionId>
<resourceName>
/authorization/roles/*/permroles/
</resourceName>
</permission>
<role>
- <roleId>25f537c9-a213-41de-97f0-18524d5f4eb2</roleId>
+ <roleId>5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6</roleId>
+ <roleName>ROLE_TENANT_READER</roleName>
+ </role>
+ <role>
+ <roleId>73eb01c2-fde2-46c3-8032-1803db242575</roleId>
<roleName>ROLE_TENANT_READER</roleName>
</role>
</permissionRole>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:permissions_list xmlns:ns2="http://collectionspace.org/services/authorization">
- <permission csid="de3657a1-99f8-46b6-b4bb-2e28f9def87f">
+ <permission csid="d44f77d4-52cd-4025-b292-c227aa73d6fc">
<description>generated admin permission</description>
<resourceName>idgenerators</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.388</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.559</createdAt>
</permission>
- <permission csid="b6644980-aeef-4d8f-a048-338057f9d973">
+ <permission csid="89231998-14d1-440e-a402-38f2f53a1e57">
<description>generated admin permission</description>
<resourceName>id</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.390</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.561</createdAt>
</permission>
- <permission csid="ddcdcc15-7f5a-49d8-8354-82c2e52d4727">
+ <permission csid="ada701c6-649f-481f-afd5-2d192c483b6a">
<description>generated admin permission</description>
<resourceName>
/idgenerators/*/ids
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.390</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.561</createdAt>
</permission>
- <permission csid="b203fb49-56c3-4662-b4bd-4008a6462364">
+ <permission csid="ad4921b1-6968-4028-99e1-7edbfed46ead">
<description>generated admin permission</description>
<resourceName>collectionobjects</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.391</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.561</createdAt>
</permission>
- <permission csid="2dde10d0-2ce9-471b-9c66-c67a6e7c511f">
+ <permission csid="dbd45393-f610-4a0d-81ed-03475aeacde3">
<description>generated admin permission</description>
<resourceName>
/collectionobjects/*/authorityrefs/
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.391</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.562</createdAt>
</permission>
- <permission csid="b8323642-cd0a-491f-a952-cf36d2b32134">
+ <permission csid="3185e6b7-7248-4bfa-afeb-1e14b206afeb">
<description>generated admin permission</description>
<resourceName>intakes</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.391</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.562</createdAt>
</permission>
- <permission csid="3c3e7ff6-7ecd-4643-b662-3fcb54e62abe">
+ <permission csid="9f067bc0-0aaf-4499-986e-424b112f6ef2">
<description>generated admin permission</description>
<resourceName>
/intakes/*/authorityrefs/
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.392</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.562</createdAt>
</permission>
- <permission csid="e248b5af-6eb3-4063-8816-6c2b0c55537c">
+ <permission csid="021de06c-f386-42ad-b18e-fdd32496d521">
<description>generated admin permission</description>
<resourceName>loansin</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.392</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.562</createdAt>
</permission>
- <permission csid="6529cf6d-34ae-4bab-a6e2-ab19973620fb">
+ <permission csid="7339e77d-638e-4d78-a707-e094c9af29b5">
<description>generated admin permission</description>
<resourceName>
/loansin/*/authorityrefs/
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.393</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.563</createdAt>
</permission>
- <permission csid="1145d28d-269a-41fd-806f-b0d6511cf273">
+ <permission csid="4ce5feca-958e-47e2-a1f5-7a3dbd28bcd9">
<description>generated admin permission</description>
<resourceName>loansout</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.393</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.563</createdAt>
</permission>
- <permission csid="8773ed3b-9432-44e8-900e-1bc3908e7911">
+ <permission csid="871a9263-bf27-4aee-a287-e489e3421e98">
<description>generated admin permission</description>
<resourceName>
/loansout/*/authorityrefs/
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.393</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.564</createdAt>
</permission>
- <permission csid="21786a64-02e0-4359-9c61-47cf821f2362">
+ <permission csid="907f0d70-294f-42a3-b433-b084cdd800e5">
<description>generated admin permission</description>
<resourceName>movements</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.394</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.564</createdAt>
</permission>
- <permission csid="d501423e-9425-4c99-bf6f-478a2a9f971e">
+ <permission csid="959f2186-4279-4828-9850-f2bf8939324b">
<description>generated admin permission</description>
<resourceName>
/movements/*/authorityrefs/
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.394</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.565</createdAt>
</permission>
- <permission csid="88075c4c-d5ed-420a-a767-1ab662066feb">
+ <permission csid="4e9fe80c-1751-4f71-9ba4-9befdf0d6afb">
<description>generated admin permission</description>
<resourceName>vocabularies</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.395</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.565</createdAt>
</permission>
- <permission csid="2444d28d-883f-4566-a378-f03b95d100b9">
+ <permission csid="2bf629ea-66c7-4974-802e-852d9ce04a57">
<description>generated admin permission</description>
<resourceName>vocabularyitems</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.395</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.565</createdAt>
</permission>
- <permission csid="80a57584-6438-4df3-95df-bba1d7d9a275">
+ <permission csid="00ffa49c-d778-45a0-b504-35bdd4ffc24f">
<description>generated admin permission</description>
<resourceName>
/vocabularies/*/items/
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.396</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.566</createdAt>
</permission>
- <permission csid="812a71ed-0dfe-4371-a390-4776ab5519f2">
+ <permission csid="8d50e134-45a3-4b27-aee2-c3df1c073008">
<description>generated admin permission</description>
<resourceName>orgauthorities</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.396</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.566</createdAt>
</permission>
- <permission csid="a9aeff96-179f-4b1d-8e74-25358185fdae">
+ <permission csid="b8131f3c-ac19-49ad-8301-3fc588e31dfb">
<description>generated admin permission</description>
<resourceName>
/orgauthorities/*/items/*/authorityrefs/
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.397</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.566</createdAt>
</permission>
- <permission csid="23897bf4-c727-4737-a70c-dc446519e1d5">
+ <permission csid="e35cc564-b021-4ad2-8075-e8f7b53c1ee2">
<description>generated admin permission</description>
<resourceName>organizations</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.397</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.567</createdAt>
</permission>
- <permission csid="64f48448-c5ed-4096-acc8-17daebf2924f">
+ <permission csid="4ca834a1-834b-46d1-ab17-8e313c3a9980">
<description>generated admin permission</description>
<resourceName>
/orgauthorities/*/items/
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.397</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.567</createdAt>
</permission>
- <permission csid="90bea796-bf38-46a6-8a9e-fc9a1eed157d">
+ <permission csid="57b32d7b-db0e-48db-980f-2c4ff1e1476b">
<description>generated admin permission</description>
<resourceName>
/orgauthorities/*/items/*/refobjs
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.398</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.567</createdAt>
</permission>
- <permission csid="e61b8b12-3db0-499a-b074-79afec3f141a">
+ <permission csid="04d87e96-d1a1-4891-beca-5be5929dffbe">
<description>generated admin permission</description>
<resourceName>personauthorities</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.398</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.567</createdAt>
</permission>
- <permission csid="ce34076c-83b0-409c-b2b8-2d3805af9056">
+ <permission csid="1caacc4d-b5a8-464f-b9bf-8638511f7999">
<description>generated admin permission</description>
<resourceName>
/personauthorities/*/items/
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.398</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.568</createdAt>
</permission>
- <permission csid="acac0886-627b-43e6-810c-f62c928b99bf">
+ <permission csid="52ab1350-8a01-478a-b459-ddc29ac4edbb">
<description>generated admin permission</description>
<resourceName>
/personauthorities/*/items/*/refobjs
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.399</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.568</createdAt>
</permission>
- <permission csid="1aa13e33-4b21-4e6f-b670-2fc13f8fd2b4">
+ <permission csid="efbfc241-02a4-4758-b546-2e10e44a88c2">
<description>generated admin permission</description>
<resourceName>persons</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.399</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.568</createdAt>
</permission>
- <permission csid="cbb98b91-25ed-4e8b-af4d-48f11e981e19">
+ <permission csid="d15b3fd7-ee37-4490-bc4d-2701ffbdedb7">
<description>generated admin permission</description>
<resourceName>
/personauthorities/*/items/
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.400</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.568</createdAt>
</permission>
- <permission csid="7c9e5c9a-8eb7-4579-ad94-e6d4f90c9ae8">
+ <permission csid="9b19311b-b3b4-42a4-9fd1-592998f0ca88">
<description>generated admin permission</description>
<resourceName>locationauthorities</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.400</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.569</createdAt>
</permission>
- <permission csid="ce653183-2722-46c9-8f19-2e719c9cb06c">
+ <permission csid="9b6f3483-3c36-412e-8ed4-19d48597313d">
<description>generated admin permission</description>
<resourceName>
/locationauthorities/*/items/
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.401</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.569</createdAt>
</permission>
- <permission csid="59b8de3a-9b1d-4e82-9aa5-0d28dd5a46ac">
+ <permission csid="a26945bf-9e2e-41a0-967b-febb4c33aa2e">
<description>generated admin permission</description>
<resourceName>locations</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.401</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.569</createdAt>
</permission>
- <permission csid="37e00906-0fa5-4d20-be21-739f66bcac52">
+ <permission csid="983bff7f-8ba2-4d6e-98d6-b8de4724249e">
<description>generated admin permission</description>
<resourceName>acquisitions</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.401</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.570</createdAt>
</permission>
- <permission csid="1ebea466-ab70-4368-8965-aa9305661d50">
+ <permission csid="b3418175-6fd0-448f-82c3-d52714b83c17">
<description>generated admin permission</description>
<resourceName>
/acquisitions/*/authorityrefs/
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.402</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.570</createdAt>
</permission>
- <permission csid="c48e8d4a-7972-469f-a2bc-1bca201cd772">
+ <permission csid="20b460ef-b528-46a9-8975-8f7e34437696">
<description>generated admin permission</description>
<resourceName>relations</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.402</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.570</createdAt>
</permission>
- <permission csid="b2f182cb-61d7-4016-a2e2-075c13afefd0">
+ <permission csid="e9c3b077-4384-4349-bb4c-b5e21e2b4aef">
<description>generated admin permission</description>
<resourceName>
relations/subject/*/type/*/object/*
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.402</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.571</createdAt>
</permission>
- <permission csid="6ba014c0-80e1-456f-9c3c-de339391d254">
+ <permission csid="f5b2e004-16f3-4b6b-882c-82bf101a864e">
<description>generated admin permission</description>
<resourceName>accounts</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.403</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.571</createdAt>
</permission>
- <permission csid="ee04f607-8e32-46dd-b5c9-b7657cdd290c">
+ <permission csid="b4a69d0e-cedf-4218-91fa-d4e38f125207">
<description>generated admin permission</description>
<resourceName>dimensions</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.403</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.571</createdAt>
</permission>
- <permission csid="828327fc-7b3d-4bde-b6d6-e48c74c3f4fd">
+ <permission csid="516ec6a0-0f75-48c9-8efe-6c3a409f0a0d">
<description>generated admin permission</description>
<resourceName>contacts</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.404</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.571</createdAt>
</permission>
- <permission csid="2d48d7a3-faba-4e8d-93a3-0863de7d92da">
+ <permission csid="a4ec2332-0f57-4cc1-b48c-e500f329a8c2">
<description>generated admin permission</description>
<resourceName>
/personauthorities/*/items/*/contacts
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.404</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.574</createdAt>
</permission>
- <permission csid="7d8f835d-d9c0-4508-b279-eef890db247a">
+ <permission csid="efcc4e68-5f2f-43cf-aa86-c3df54af8f44">
<description>generated admin permission</description>
<resourceName>
/orgauthorities/*/items/*/contacts
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.404</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.574</createdAt>
</permission>
- <permission csid="ab92d994-29eb-4d64-bd49-b3cafd8f0a5b">
+ <permission csid="e01bc5b4-c359-42ba-80a8-6920c704622b">
<description>generated admin permission</description>
<resourceName>notes</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.405</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.575</createdAt>
</permission>
- <permission csid="db65825c-50c3-49a8-af5f-68115f16537b">
+ <permission csid="41df9971-887c-4686-aec7-94fd86079a93">
<description>generated admin permission</description>
<resourceName>authorization/roles</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.405</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.575</createdAt>
</permission>
- <permission csid="f7f41db6-f85f-4cd3-a2d6-d9185b6dd8e9">
+ <permission csid="d2a4b854-3123-4cb1-a109-f1a519a7b2a4">
<description>generated admin permission</description>
<resourceName>authorization/permissions</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.405</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.575</createdAt>
</permission>
- <permission csid="074e7f98-2580-48d3-969d-4043f156eaa2">
+ <permission csid="24e6142e-56d7-4312-ac0d-d68f1deb21b8">
<description>generated admin permission</description>
<resourceName>authorization/permissions/permroles</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.406</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.575</createdAt>
</permission>
- <permission csid="0cdd6f4e-58b6-4c11-bbbd-0984c30d6dbd">
+ <permission csid="6ce06e7f-e471-410c-a7a9-ec50b0bc11be">
<description>generated admin permission</description>
<resourceName>
/authorization/permissions/*/permroles/
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.406</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.576</createdAt>
</permission>
- <permission csid="361c4bed-bd81-4f22-82df-f462111663a9">
+ <permission csid="22059d92-f298-49fc-80c0-55c34d966836">
<description>generated admin permission</description>
<resourceName>accounts/accountroles</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.407</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.576</createdAt>
</permission>
- <permission csid="e272da20-719c-49d1-9584-c21cedcd3a65">
+ <permission csid="ca0acf6a-fc55-426b-8717-b5da0e764cd3">
<description>generated admin permission</description>
<resourceName>
/accounts/*/accountroles/
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.407</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.576</createdAt>
</permission>
- <permission csid="d7618a4f-d8be-45f6-b0f3-2816ecdca341">
+ <permission csid="0d7965c9-559f-4a31-ac20-fabca081247b">
<description>generated admin permission</description>
<resourceName>authorization/roles/permroles</resourceName>
<action>
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
- <tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.407</createdAt>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.577</createdAt>
</permission>
- <permission csid="3b6b0755-9044-46ee-8a85-4e44ac68dd0a">
+ <permission csid="df29890b-f7dd-4cb2-bf20-4873915ec149">
<description>generated admin permission</description>
<resourceName>
/authorization/roles/*/permroles/
<name>SEARCH</name>
</action>
<effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.577</createdAt>
+ </permission>
+ <permission csid="24ca9b10-db58-4f83-9270-48d31e439930">
+ <description>generated admin permission</description>
+ <resourceName>idgenerators</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.591</createdAt>
+ </permission>
+ <permission csid="cce6d084-4686-4786-90cb-bc816ef7f489">
+ <description>generated admin permission</description>
+ <resourceName>id</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.591</createdAt>
+ </permission>
+ <permission csid="43b43275-7ef5-4f3f-a549-acaae5a26ef7">
+ <description>generated admin permission</description>
+ <resourceName>
+ /idgenerators/*/ids
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.591</createdAt>
+ </permission>
+ <permission csid="122cbe8f-076c-4803-b1b0-7c493c444215">
+ <description>generated admin permission</description>
+ <resourceName>collectionobjects</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.592</createdAt>
+ </permission>
+ <permission csid="4ba3ee15-f527-4b11-9341-771ef3af24a3">
+ <description>generated admin permission</description>
+ <resourceName>
+ /collectionobjects/*/authorityrefs/
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.592</createdAt>
+ </permission>
+ <permission csid="df4c1540-5210-4b41-a735-18b8f71ad14b">
+ <description>generated admin permission</description>
+ <resourceName>intakes</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.592</createdAt>
+ </permission>
+ <permission csid="43af6eab-fc37-4c48-8f87-2e6f80afda7d">
+ <description>generated admin permission</description>
+ <resourceName>
+ /intakes/*/authorityrefs/
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.593</createdAt>
+ </permission>
+ <permission csid="29953599-287c-4b67-826d-df72d1c1266d">
+ <description>generated admin permission</description>
+ <resourceName>loansin</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.593</createdAt>
+ </permission>
+ <permission csid="447f5a41-46a4-4e9d-9b15-62d7fc2466c7">
+ <description>generated admin permission</description>
+ <resourceName>
+ /loansin/*/authorityrefs/
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.593</createdAt>
+ </permission>
+ <permission csid="62a72a0a-d028-46c4-8fa5-951746e4c4a5">
+ <description>generated admin permission</description>
+ <resourceName>loansout</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.408</createdAt>
+ <createdAt>2010-06-07T16:22:53.594</createdAt>
+ </permission>
+ <permission csid="6da07854-0d46-493b-b6cf-47af8fef81b4">
+ <description>generated admin permission</description>
+ <resourceName>
+ /loansout/*/authorityrefs/
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.594</createdAt>
+ </permission>
+ <permission csid="9807f421-1587-4720-9f60-60087a974302">
+ <description>generated admin permission</description>
+ <resourceName>movements</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.594</createdAt>
+ </permission>
+ <permission csid="041f517a-b58b-4df6-ab7e-57fe6bbbaef5">
+ <description>generated admin permission</description>
+ <resourceName>
+ /movements/*/authorityrefs/
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.594</createdAt>
+ </permission>
+ <permission csid="3580ae91-4035-49cd-89a7-0eeeb2cb6b7c">
+ <description>generated admin permission</description>
+ <resourceName>vocabularies</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.595</createdAt>
+ </permission>
+ <permission csid="8e936e74-7dcb-4508-b727-0a33344b5453">
+ <description>generated admin permission</description>
+ <resourceName>vocabularyitems</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.595</createdAt>
+ </permission>
+ <permission csid="e450ee2f-35eb-45bc-b718-caddbcf4dc98">
+ <description>generated admin permission</description>
+ <resourceName>
+ /vocabularies/*/items/
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.595</createdAt>
+ </permission>
+ <permission csid="dba4f5cb-4647-4c5f-a4ae-22ffa2cd441c">
+ <description>generated admin permission</description>
+ <resourceName>orgauthorities</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.595</createdAt>
+ </permission>
+ <permission csid="3832f8d9-6d84-4e38-9f4a-8aa6a7bf3999">
+ <description>generated admin permission</description>
+ <resourceName>
+ /orgauthorities/*/items/*/authorityrefs/
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.596</createdAt>
+ </permission>
+ <permission csid="0e6e1b2c-5b85-4d20-ab17-e31924e97927">
+ <description>generated admin permission</description>
+ <resourceName>organizations</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.596</createdAt>
+ </permission>
+ <permission csid="aae5e62b-5841-4a85-b90a-f65f06d61f04">
+ <description>generated admin permission</description>
+ <resourceName>
+ /orgauthorities/*/items/
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.596</createdAt>
+ </permission>
+ <permission csid="34ab8a6c-3b92-4faf-891b-01686eb7c71d">
+ <description>generated admin permission</description>
+ <resourceName>
+ /orgauthorities/*/items/*/refobjs
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.596</createdAt>
+ </permission>
+ <permission csid="679509a8-4d68-4ba6-a11f-1411b82d417f">
+ <description>generated admin permission</description>
+ <resourceName>personauthorities</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.597</createdAt>
+ </permission>
+ <permission csid="5a1dab9b-fea0-4b2d-b141-a64bbf01658f">
+ <description>generated admin permission</description>
+ <resourceName>
+ /personauthorities/*/items/
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.597</createdAt>
+ </permission>
+ <permission csid="e714cf45-5e1d-4b5f-86bb-5f9ec4f39eaf">
+ <description>generated admin permission</description>
+ <resourceName>
+ /personauthorities/*/items/*/refobjs
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.597</createdAt>
+ </permission>
+ <permission csid="0349216f-65cd-4a68-8907-66dc151c5911">
+ <description>generated admin permission</description>
+ <resourceName>persons</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.597</createdAt>
+ </permission>
+ <permission csid="38a54418-3ca7-4e65-8373-f1822c2f808f">
+ <description>generated admin permission</description>
+ <resourceName>
+ /personauthorities/*/items/
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.598</createdAt>
+ </permission>
+ <permission csid="1b0e6e9e-a65e-4d08-92e8-dc38408d2f27">
+ <description>generated admin permission</description>
+ <resourceName>locationauthorities</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.598</createdAt>
+ </permission>
+ <permission csid="6584ed70-b21e-47be-b244-ff844f872780">
+ <description>generated admin permission</description>
+ <resourceName>
+ /locationauthorities/*/items/
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.598</createdAt>
+ </permission>
+ <permission csid="7e350767-a7d7-4105-b1c8-934e3f8daa1a">
+ <description>generated admin permission</description>
+ <resourceName>locations</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.598</createdAt>
+ </permission>
+ <permission csid="689c4855-d032-4cef-8960-f42ff2994ef4">
+ <description>generated admin permission</description>
+ <resourceName>acquisitions</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.599</createdAt>
+ </permission>
+ <permission csid="92cfdc09-dd6a-45cd-a2c3-1de5cb1f336b">
+ <description>generated admin permission</description>
+ <resourceName>
+ /acquisitions/*/authorityrefs/
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.599</createdAt>
+ </permission>
+ <permission csid="754b4802-19b1-4185-a6fb-83ecadabff06">
+ <description>generated admin permission</description>
+ <resourceName>relations</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.599</createdAt>
+ </permission>
+ <permission csid="628b4acf-bd52-4a77-824c-5b657da3608a">
+ <description>generated admin permission</description>
+ <resourceName>
+ relations/subject/*/type/*/object/*
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.599</createdAt>
+ </permission>
+ <permission csid="7de123a3-8e10-4fa7-b8ae-74a684acd569">
+ <description>generated admin permission</description>
+ <resourceName>accounts</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.600</createdAt>
+ </permission>
+ <permission csid="cb5f541b-c592-4fb5-9e0a-c88dfc3f9301">
+ <description>generated admin permission</description>
+ <resourceName>dimensions</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.600</createdAt>
+ </permission>
+ <permission csid="80a53f0e-6571-4195-ad9f-18cc5ba65b0c">
+ <description>generated admin permission</description>
+ <resourceName>contacts</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.600</createdAt>
+ </permission>
+ <permission csid="90fee1ba-1706-4500-8222-17614b69b4cb">
+ <description>generated admin permission</description>
+ <resourceName>
+ /personauthorities/*/items/*/contacts
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.600</createdAt>
+ </permission>
+ <permission csid="f56cd470-75fb-4994-9172-2244e139c9db">
+ <description>generated admin permission</description>
+ <resourceName>
+ /orgauthorities/*/items/*/contacts
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.600</createdAt>
+ </permission>
+ <permission csid="47b4dd62-3247-4414-b19a-4624ba7c5228">
+ <description>generated admin permission</description>
+ <resourceName>notes</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.601</createdAt>
+ </permission>
+ <permission csid="c2aee301-5540-4e56-ad1f-03e5ce0d28a8">
+ <description>generated admin permission</description>
+ <resourceName>authorization/roles</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.601</createdAt>
+ </permission>
+ <permission csid="1ad9339c-200e-4d0c-af7f-394d578a45ca">
+ <description>generated admin permission</description>
+ <resourceName>authorization/permissions</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.601</createdAt>
+ </permission>
+ <permission csid="3b4cf91b-3851-44ad-97c1-b23f3788d617">
+ <description>generated admin permission</description>
+ <resourceName>authorization/permissions/permroles</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.601</createdAt>
+ </permission>
+ <permission csid="417f1755-0645-4508-b9f1-f7380b897146">
+ <description>generated admin permission</description>
+ <resourceName>
+ /authorization/permissions/*/permroles/
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.602</createdAt>
+ </permission>
+ <permission csid="7817cfa9-bdd5-4cf2-bc6b-e0ff102cd434">
+ <description>generated admin permission</description>
+ <resourceName>accounts/accountroles</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.602</createdAt>
+ </permission>
+ <permission csid="fe176181-6e43-4525-8c5e-f43b16f7132e">
+ <description>generated admin permission</description>
+ <resourceName>
+ /accounts/*/accountroles/
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.602</createdAt>
+ </permission>
+ <permission csid="4a7d9a48-2dc7-41ee-8af3-b2965eb25afb">
+ <description>generated admin permission</description>
+ <resourceName>authorization/roles/permroles</resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.603</createdAt>
+ </permission>
+ <permission csid="eac699a7-e863-4798-bb19-6718d6faa36c">
+ <description>generated admin permission</description>
+ <resourceName>
+ /authorization/roles/*/permroles/
+ </resourceName>
+ <action>
+ <name>CREATE</name>
+ </action>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>UPDATE</name>
+ </action>
+ <action>
+ <name>DELETE</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>1</tenant_id>
+ <createdAt>2010-06-07T16:22:53.603</createdAt>
+ </permission>
+ <permission csid="497b6528-fe1e-4fec-89cf-7b17c499bbac">
+ <description>generated readonly permission</description>
+ <resourceName>idgenerators</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.577</createdAt>
+ </permission>
+ <permission csid="d5a2400d-f7fd-4eff-ab5e-fbc1457fce32">
+ <description>generated readonly permission</description>
+ <resourceName>id</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.578</createdAt>
+ </permission>
+ <permission csid="62181818-1275-4861-9251-a9c172add296">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /idgenerators/*/ids
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.578</createdAt>
+ </permission>
+ <permission csid="eb6dff1c-d73d-4874-ac31-e379f246b09a">
+ <description>generated readonly permission</description>
+ <resourceName>collectionobjects</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.578</createdAt>
+ </permission>
+ <permission csid="0ce7c405-9c9d-424e-b72e-51d9b88db92c">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /collectionobjects/*/authorityrefs/
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.578</createdAt>
+ </permission>
+ <permission csid="37586285-faf9-4bc6-8518-2481d242a22c">
+ <description>generated readonly permission</description>
+ <resourceName>intakes</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.579</createdAt>
+ </permission>
+ <permission csid="22a4e320-9bbc-4922-9244-dc418d813e03">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /intakes/*/authorityrefs/
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.579</createdAt>
+ </permission>
+ <permission csid="e31f96b3-c694-4981-8b05-6ed69c508161">
+ <description>generated readonly permission</description>
+ <resourceName>loansin</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.579</createdAt>
+ </permission>
+ <permission csid="084aff5f-82b8-499c-ad77-4a169fd80138">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /loansin/*/authorityrefs/
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.580</createdAt>
+ </permission>
+ <permission csid="e9b1bed8-1f2e-49dd-97be-2094688485ec">
+ <description>generated readonly permission</description>
+ <resourceName>loansout</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.580</createdAt>
+ </permission>
+ <permission csid="ff9c7503-8d0a-434c-8e16-7b6511211648">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /loansout/*/authorityrefs/
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.580</createdAt>
+ </permission>
+ <permission csid="cabb3eda-b0e7-4255-b25c-193f79e191f2">
+ <description>generated readonly permission</description>
+ <resourceName>movements</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.580</createdAt>
+ </permission>
+ <permission csid="1d7067d4-f229-4ea9-9fce-a661bd324ebf">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /movements/*/authorityrefs/
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.581</createdAt>
+ </permission>
+ <permission csid="37b90e54-ae34-49ed-b790-4da18077ceb7">
+ <description>generated readonly permission</description>
+ <resourceName>vocabularies</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.581</createdAt>
+ </permission>
+ <permission csid="3dec89f9-179c-4537-bdd7-913ed431b97b">
+ <description>generated readonly permission</description>
+ <resourceName>vocabularyitems</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.581</createdAt>
+ </permission>
+ <permission csid="b98c1deb-f425-432e-b5e0-53612e6ef4d6">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /vocabularies/*/items/
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.582</createdAt>
+ </permission>
+ <permission csid="6080c67c-32ab-4245-8b75-ad42bba6dcb6">
+ <description>generated readonly permission</description>
+ <resourceName>orgauthorities</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.582</createdAt>
+ </permission>
+ <permission csid="5b4d0845-ef49-46eb-b451-13cdae375b73">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /orgauthorities/*/items/*/authorityrefs/
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.582</createdAt>
+ </permission>
+ <permission csid="3242d512-b992-4721-8717-a88947d54afc">
+ <description>generated readonly permission</description>
+ <resourceName>organizations</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.582</createdAt>
+ </permission>
+ <permission csid="7ff3a896-37b9-4cd8-9011-eb168d192446">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /orgauthorities/*/items/
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.583</createdAt>
+ </permission>
+ <permission csid="638f36e9-0f9c-4961-98ee-2e7fb710efae">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /orgauthorities/*/items/*/refobjs
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.583</createdAt>
+ </permission>
+ <permission csid="809a5cba-379b-41fe-aaf5-d61301ec4fe7">
+ <description>generated readonly permission</description>
+ <resourceName>personauthorities</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.583</createdAt>
+ </permission>
+ <permission csid="c69b057d-230a-466d-8038-e4b1324d41c2">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /personauthorities/*/items/
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.584</createdAt>
+ </permission>
+ <permission csid="bcbb0602-6e00-4518-9960-3e36f9ac6094">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /personauthorities/*/items/*/refobjs
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.584</createdAt>
+ </permission>
+ <permission csid="801faebf-e2f2-4717-a525-fa4dfa63caf8">
+ <description>generated readonly permission</description>
+ <resourceName>persons</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.584</createdAt>
+ </permission>
+ <permission csid="c0bef2ce-625f-4bea-b337-1269af2fdea8">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /personauthorities/*/items/
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.584</createdAt>
+ </permission>
+ <permission csid="eba34232-cdac-42ad-9b88-2aa9492ec802">
+ <description>generated readonly permission</description>
+ <resourceName>locationauthorities</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.585</createdAt>
+ </permission>
+ <permission csid="b9ae3884-8b18-467b-8caf-aaddfe87f968">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /locationauthorities/*/items/
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.585</createdAt>
+ </permission>
+ <permission csid="6401c854-599a-4564-8097-d0ec9c58af3b">
+ <description>generated readonly permission</description>
+ <resourceName>locations</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.585</createdAt>
+ </permission>
+ <permission csid="e505a806-30fd-48e4-a1b0-3345291561a3">
+ <description>generated readonly permission</description>
+ <resourceName>acquisitions</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.586</createdAt>
+ </permission>
+ <permission csid="236a919f-8e24-43bd-b3d5-f58640f24490">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /acquisitions/*/authorityrefs/
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.586</createdAt>
+ </permission>
+ <permission csid="6701f7a9-5021-43e2-a5ca-62ccf523809c">
+ <description>generated readonly permission</description>
+ <resourceName>relations</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.586</createdAt>
+ </permission>
+ <permission csid="62ca97b4-15e6-4008-b656-c0d92126d6d8">
+ <description>generated readonly permission</description>
+ <resourceName>
+ relations/subject/*/type/*/object/*
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.586</createdAt>
+ </permission>
+ <permission csid="dbc19509-8d72-4f1b-8532-9d81969c2f3a">
+ <description>generated readonly permission</description>
+ <resourceName>accounts</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.587</createdAt>
+ </permission>
+ <permission csid="cf88e815-051d-42ca-b443-5fbc3e3e8e65">
+ <description>generated readonly permission</description>
+ <resourceName>dimensions</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.587</createdAt>
+ </permission>
+ <permission csid="bf943992-5e0f-48c8-848d-b024452b69c7">
+ <description>generated readonly permission</description>
+ <resourceName>contacts</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.587</createdAt>
+ </permission>
+ <permission csid="89db9711-8197-48ec-9355-560263b01863">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /personauthorities/*/items/*/contacts
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.588</createdAt>
+ </permission>
+ <permission csid="ce012cfd-51a2-4f4b-a26e-8fcc9da79ee4">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /orgauthorities/*/items/*/contacts
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.588</createdAt>
+ </permission>
+ <permission csid="790576d7-7870-4989-8084-b2e7acfe568b">
+ <description>generated readonly permission</description>
+ <resourceName>notes</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.588</createdAt>
+ </permission>
+ <permission csid="63d9ee17-a98e-455a-9bc6-c8f4e3237850">
+ <description>generated readonly permission</description>
+ <resourceName>authorization/roles</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.588</createdAt>
+ </permission>
+ <permission csid="14696853-077b-4396-a27d-7fdf229f2848">
+ <description>generated readonly permission</description>
+ <resourceName>authorization/permissions</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.589</createdAt>
+ </permission>
+ <permission csid="b0b79cce-a76b-441d-ba79-eaea8793e1eb">
+ <description>generated readonly permission</description>
+ <resourceName>authorization/permissions/permroles</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.589</createdAt>
+ </permission>
+ <permission csid="b6e31c70-cf71-429a-b286-5c5f331dce8d">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /authorization/permissions/*/permroles/
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.589</createdAt>
+ </permission>
+ <permission csid="6c232793-eb79-4144-a7b6-a3a817777406">
+ <description>generated readonly permission</description>
+ <resourceName>accounts/accountroles</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.589</createdAt>
+ </permission>
+ <permission csid="08714948-5e03-412b-8ad6-01cbf422dc67">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /accounts/*/accountroles/
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.590</createdAt>
+ </permission>
+ <permission csid="7ca1de99-c776-4f7a-a111-474d97dc6a7d">
+ <description>generated readonly permission</description>
+ <resourceName>authorization/roles/permroles</resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.590</createdAt>
+ </permission>
+ <permission csid="d4b21996-d23a-4311-9058-f9fab6295dcf">
+ <description>generated readonly permission</description>
+ <resourceName>
+ /authorization/roles/*/permroles/
+ </resourceName>
+ <action>
+ <name>READ</name>
+ </action>
+ <action>
+ <name>SEARCH</name>
+ </action>
+ <effect>PERMIT</effect>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.590</createdAt>
</permission>
- <permission csid="da5253a4-471f-4ada-9d7d-8f1a9a747647">
+ <permission csid="f57b3714-0f15-49c6-8f9c-5d6546aed9fe">
<description>generated readonly permission</description>
<resourceName>idgenerators</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.408</createdAt>
+ <createdAt>2010-06-07T16:22:53.603</createdAt>
</permission>
- <permission csid="4d524373-a5df-45e2-aec6-2e214f08431e">
+ <permission csid="feb6a75f-e192-4a8f-9104-f66feabece26">
<description>generated readonly permission</description>
<resourceName>id</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.408</createdAt>
+ <createdAt>2010-06-07T16:22:53.603</createdAt>
</permission>
- <permission csid="c757f1c4-3282-4055-b0e1-2c818fec709b">
+ <permission csid="868d985f-ffed-4696-a617-633a4deff71d">
<description>generated readonly permission</description>
<resourceName>
/idgenerators/*/ids
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.409</createdAt>
+ <createdAt>2010-06-07T16:22:53.604</createdAt>
</permission>
- <permission csid="e383a971-0335-41da-88e6-f7625303f186">
+ <permission csid="e0410bfd-8d52-4a84-a095-52dcc3dc0c3b">
<description>generated readonly permission</description>
<resourceName>collectionobjects</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.409</createdAt>
+ <createdAt>2010-06-07T16:22:53.604</createdAt>
</permission>
- <permission csid="b2c49fb3-fb34-4425-86c7-73c48873a983">
+ <permission csid="6520ad4c-8684-4e00-878b-6df751a3c7bd">
<description>generated readonly permission</description>
<resourceName>
/collectionobjects/*/authorityrefs/
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.410</createdAt>
+ <createdAt>2010-06-07T16:22:53.604</createdAt>
</permission>
- <permission csid="2ac4ace4-20f8-4a5f-b984-4753e5452a87">
+ <permission csid="c193854c-7f5f-42ea-ada1-4a2b2e3e2ff1">
<description>generated readonly permission</description>
<resourceName>intakes</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.410</createdAt>
+ <createdAt>2010-06-07T16:22:53.604</createdAt>
</permission>
- <permission csid="64af5fcc-a57d-4fa6-820c-4ab857a46590">
+ <permission csid="135ad3f1-723a-44b6-9944-7bc05b3f11bf">
<description>generated readonly permission</description>
<resourceName>
/intakes/*/authorityrefs/
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.410</createdAt>
+ <createdAt>2010-06-07T16:22:53.605</createdAt>
</permission>
- <permission csid="0258eabe-02d3-494c-b405-30e3463a2feb">
+ <permission csid="9e1d52c2-655d-412d-a596-071bd1ebab23">
<description>generated readonly permission</description>
<resourceName>loansin</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.411</createdAt>
+ <createdAt>2010-06-07T16:22:53.605</createdAt>
</permission>
- <permission csid="ae5f5fab-7205-4b92-932f-857b68c5d4b5">
+ <permission csid="8232653e-e330-4761-b1af-b29feb4c15c9">
<description>generated readonly permission</description>
<resourceName>
/loansin/*/authorityrefs/
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.411</createdAt>
+ <createdAt>2010-06-07T16:22:53.605</createdAt>
</permission>
- <permission csid="9e8b0907-e262-42f9-a4da-6e0bf6493e5a">
+ <permission csid="d2673bf9-f3f5-419f-b317-a7b6198fe397">
<description>generated readonly permission</description>
<resourceName>loansout</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.411</createdAt>
+ <createdAt>2010-06-07T16:22:53.605</createdAt>
</permission>
- <permission csid="b46b29bc-1795-4e3e-a247-59e23742b705">
+ <permission csid="cd7ffe2f-c0c2-4b56-87ed-4bb48816af01">
<description>generated readonly permission</description>
<resourceName>
/loansout/*/authorityrefs/
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.412</createdAt>
+ <createdAt>2010-06-07T16:22:53.606</createdAt>
</permission>
- <permission csid="f90c5454-58e9-4b32-a8e4-03b80ed6f58e">
+ <permission csid="82ac6bf4-2477-4e40-acef-86437520cb0c">
<description>generated readonly permission</description>
<resourceName>movements</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.412</createdAt>
+ <createdAt>2010-06-07T16:22:53.606</createdAt>
</permission>
- <permission csid="e7c31362-9bb7-48a4-a324-63e84401df30">
+ <permission csid="6740393d-3d35-4563-9a57-841b5d34d71e">
<description>generated readonly permission</description>
<resourceName>
/movements/*/authorityrefs/
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.412</createdAt>
+ <createdAt>2010-06-07T16:22:53.606</createdAt>
</permission>
- <permission csid="90f3a12c-0ac1-417b-942e-88f2b11383b7">
+ <permission csid="8542668f-4e4c-41c2-abb3-49c5ae219e7e">
<description>generated readonly permission</description>
<resourceName>vocabularies</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.413</createdAt>
+ <createdAt>2010-06-07T16:22:53.606</createdAt>
</permission>
- <permission csid="c961fc05-1a2c-4890-88b4-42757378e323">
+ <permission csid="18e6b306-3777-4a5e-a7a6-c22f3c5cb4a4">
<description>generated readonly permission</description>
<resourceName>vocabularyitems</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.413</createdAt>
+ <createdAt>2010-06-07T16:22:53.606</createdAt>
</permission>
- <permission csid="4d13ef59-1443-40ee-8e45-9892c83ec9a1">
+ <permission csid="67a1bca5-1ba1-48a9-8687-78fe37c9d1aa">
<description>generated readonly permission</description>
<resourceName>
/vocabularies/*/items/
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.414</createdAt>
+ <createdAt>2010-06-07T16:22:53.607</createdAt>
</permission>
- <permission csid="6caa049b-25cc-486c-935f-bf215d550bcd">
+ <permission csid="318a9d0c-56c7-43fc-8813-bf365fe05a3e">
<description>generated readonly permission</description>
<resourceName>orgauthorities</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.414</createdAt>
+ <createdAt>2010-06-07T16:22:53.607</createdAt>
</permission>
- <permission csid="08c36f8b-2432-44c4-a1dd-cba8c8ea53e5">
+ <permission csid="b40ab1e0-b3bc-4508-9876-4d6cf749c015">
<description>generated readonly permission</description>
<resourceName>
/orgauthorities/*/items/*/authorityrefs/
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.414</createdAt>
+ <createdAt>2010-06-07T16:22:53.607</createdAt>
</permission>
- <permission csid="c0149cbb-a984-4e32-8302-c045a3e82bf2">
+ <permission csid="8cd27f28-e78d-426c-8de3-13c1c094e233">
<description>generated readonly permission</description>
<resourceName>organizations</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.415</createdAt>
+ <createdAt>2010-06-07T16:22:53.608</createdAt>
</permission>
- <permission csid="b2e0c247-9e3b-4bf3-a956-8b98a8505263">
+ <permission csid="5db30553-7d72-486a-bd40-81300ea9a2c4">
<description>generated readonly permission</description>
<resourceName>
/orgauthorities/*/items/
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.415</createdAt>
+ <createdAt>2010-06-07T16:22:53.608</createdAt>
</permission>
- <permission csid="35cb8d8b-4309-4177-9c1c-157dbeb36f5d">
+ <permission csid="36f8ae51-bf94-4e83-8f32-d6d1e4c9bb8d">
<description>generated readonly permission</description>
<resourceName>
/orgauthorities/*/items/*/refobjs
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.415</createdAt>
+ <createdAt>2010-06-07T16:22:53.608</createdAt>
</permission>
- <permission csid="c890f437-7356-4bcd-b5b1-0e36b13e6358">
+ <permission csid="478f0ebb-3a5f-489d-91b0-aa1f55a40a39">
<description>generated readonly permission</description>
<resourceName>personauthorities</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.416</createdAt>
+ <createdAt>2010-06-07T16:22:53.608</createdAt>
</permission>
- <permission csid="778904e1-8b67-4ace-af24-8b756385ce80">
+ <permission csid="5e3e98ed-61bb-41f5-abee-ad71c019f5bc">
<description>generated readonly permission</description>
<resourceName>
/personauthorities/*/items/
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.416</createdAt>
+ <createdAt>2010-06-07T16:22:53.608</createdAt>
</permission>
- <permission csid="d531417d-b61b-471c-90ff-f21969f00e4c">
+ <permission csid="ede401ec-4976-4304-a1ba-d79e87fc37eb">
<description>generated readonly permission</description>
<resourceName>
/personauthorities/*/items/*/refobjs
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.417</createdAt>
+ <createdAt>2010-06-07T16:22:53.609</createdAt>
</permission>
- <permission csid="46581f00-1338-417d-9ff5-1250a8eb5e3c">
+ <permission csid="837272f1-c53e-4c92-b27d-3c669b054bbd">
<description>generated readonly permission</description>
<resourceName>persons</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.417</createdAt>
+ <createdAt>2010-06-07T16:22:53.609</createdAt>
</permission>
- <permission csid="b707073a-6c2f-4bc5-b8b2-800be7cc17ec">
+ <permission csid="bf13ee0d-09fa-4311-9ccf-9a353577fe8b">
<description>generated readonly permission</description>
<resourceName>
/personauthorities/*/items/
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.417</createdAt>
+ <createdAt>2010-06-07T16:22:53.609</createdAt>
</permission>
- <permission csid="88832e9b-0f62-406e-8a64-ea61d53153ed">
+ <permission csid="e8679b1f-857a-463f-a1f3-4cc8c4103061">
<description>generated readonly permission</description>
<resourceName>locationauthorities</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.418</createdAt>
+ <createdAt>2010-06-07T16:22:53.610</createdAt>
</permission>
- <permission csid="5b8c3d7d-f027-4675-9edf-1f7733ce360d">
+ <permission csid="8d56f355-564d-432a-8bda-82bebb55e55a">
<description>generated readonly permission</description>
<resourceName>
/locationauthorities/*/items/
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.418</createdAt>
+ <createdAt>2010-06-07T16:22:53.610</createdAt>
</permission>
- <permission csid="a73bebb8-d109-4fbd-aa29-f71766eac61a">
+ <permission csid="39530279-1540-4768-8def-6a3b1cee4990">
<description>generated readonly permission</description>
<resourceName>locations</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.418</createdAt>
+ <createdAt>2010-06-07T16:22:53.610</createdAt>
</permission>
- <permission csid="7d6dcff6-167f-4634-a35d-ec635e34fc60">
+ <permission csid="06cca12d-2a18-4303-a972-e4ce3d094d30">
<description>generated readonly permission</description>
<resourceName>acquisitions</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.419</createdAt>
+ <createdAt>2010-06-07T16:22:53.610</createdAt>
</permission>
- <permission csid="2007cc99-7208-4238-9792-bceb5df78733">
+ <permission csid="65b4803b-8697-4669-995b-d1f5eba17a86">
<description>generated readonly permission</description>
<resourceName>
/acquisitions/*/authorityrefs/
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.419</createdAt>
+ <createdAt>2010-06-07T16:22:53.611</createdAt>
</permission>
- <permission csid="94594f80-9ae2-4f51-b1f1-21e49bca2f5e">
+ <permission csid="1d87e6a3-d770-4f63-8e29-ecb312f91157">
<description>generated readonly permission</description>
<resourceName>relations</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.419</createdAt>
+ <createdAt>2010-06-07T16:22:53.611</createdAt>
</permission>
- <permission csid="e75b9dd6-737a-43cd-b847-c8effa3d6055">
+ <permission csid="39ed698e-3474-4f7d-83d5-0105078cb21f">
<description>generated readonly permission</description>
<resourceName>
relations/subject/*/type/*/object/*
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.420</createdAt>
+ <createdAt>2010-06-07T16:22:53.611</createdAt>
</permission>
- <permission csid="da6da169-41d0-4f7f-a246-e7a9c96967de">
+ <permission csid="d4b62feb-53f4-4aac-bc50-e30e5130ec98">
<description>generated readonly permission</description>
<resourceName>accounts</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.420</createdAt>
+ <createdAt>2010-06-07T16:22:53.611</createdAt>
</permission>
- <permission csid="8b1fc4c6-1610-490d-8972-17ac113b36d9">
+ <permission csid="0a047c4c-1c78-47fb-b951-70912934cab7">
<description>generated readonly permission</description>
<resourceName>dimensions</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.421</createdAt>
+ <createdAt>2010-06-07T16:22:53.612</createdAt>
</permission>
- <permission csid="97455f0e-2064-4667-9bfe-540a05b571ae">
+ <permission csid="50ee8add-45ef-4643-8aa7-1d144d0d4cb9">
<description>generated readonly permission</description>
<resourceName>contacts</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.421</createdAt>
+ <createdAt>2010-06-07T16:22:53.612</createdAt>
</permission>
- <permission csid="10655b0e-d168-4ac5-96fc-5ff88621aaee">
+ <permission csid="b015754f-2d5d-454a-8403-b3e49f51cc5b">
<description>generated readonly permission</description>
<resourceName>
/personauthorities/*/items/*/contacts
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.421</createdAt>
+ <createdAt>2010-06-07T16:22:53.613</createdAt>
</permission>
- <permission csid="1209a058-b37e-438d-906a-03bc49a4928c">
+ <permission csid="430e88e1-cae6-4dea-82bd-34b17fda7ae3">
<description>generated readonly permission</description>
<resourceName>
/orgauthorities/*/items/*/contacts
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.422</createdAt>
+ <createdAt>2010-06-07T16:22:53.613</createdAt>
</permission>
- <permission csid="eb97ccdf-daaa-436e-bd40-f86e3d7dc8d0">
+ <permission csid="fc1db1b6-1fd9-439e-871d-bcb6f41bb5ca">
<description>generated readonly permission</description>
<resourceName>notes</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.422</createdAt>
+ <createdAt>2010-06-07T16:22:53.613</createdAt>
</permission>
- <permission csid="655fb068-d229-47e0-b636-48e53217d070">
+ <permission csid="beea8fd0-de64-40ab-a620-f8fb571e39b4">
<description>generated readonly permission</description>
<resourceName>authorization/roles</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.422</createdAt>
+ <createdAt>2010-06-07T16:22:53.613</createdAt>
</permission>
- <permission csid="556204b7-df13-40fe-8185-ac4e9924a033">
+ <permission csid="87eb9947-f5e7-47fd-8972-dc24cf9d2ae1">
<description>generated readonly permission</description>
<resourceName>authorization/permissions</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.423</createdAt>
+ <createdAt>2010-06-07T16:22:53.614</createdAt>
</permission>
- <permission csid="3d5ecccd-37a5-4185-88b3-66aa1def43b5">
+ <permission csid="38b681d4-1090-474a-addc-43b03f2fdd1b">
<description>generated readonly permission</description>
<resourceName>authorization/permissions/permroles</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.423</createdAt>
+ <createdAt>2010-06-07T16:22:53.614</createdAt>
</permission>
- <permission csid="049d792a-f1c7-42de-8d88-c09a1143340f">
+ <permission csid="dd6497fb-e4af-4732-b39e-27c8f8cf5b89">
<description>generated readonly permission</description>
<resourceName>
/authorization/permissions/*/permroles/
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.423</createdAt>
+ <createdAt>2010-06-07T16:22:53.614</createdAt>
</permission>
- <permission csid="b85355db-2c33-4469-bb27-bf4fb1ac4039">
+ <permission csid="538889df-13ce-4df5-a204-a0c58db6a544">
<description>generated readonly permission</description>
<resourceName>accounts/accountroles</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.424</createdAt>
+ <createdAt>2010-06-07T16:22:53.614</createdAt>
</permission>
- <permission csid="ce37cf6c-a550-49de-9bdf-0ede7cafb617">
+ <permission csid="7f9ba507-8419-4227-86af-9819a568a56b">
<description>generated readonly permission</description>
<resourceName>
/accounts/*/accountroles/
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.424</createdAt>
+ <createdAt>2010-06-07T16:22:53.615</createdAt>
</permission>
- <permission csid="e1af00a3-a7c9-441f-a48c-f9698f47298a">
+ <permission csid="c3e42f4f-a2f5-4cd8-afb5-7872f218fa18">
<description>generated readonly permission</description>
<resourceName>authorization/roles/permroles</resourceName>
<action>
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.424</createdAt>
+ <createdAt>2010-06-07T16:22:53.615</createdAt>
</permission>
- <permission csid="8fc74578-d253-4eb7-a0e3-43bc70a88a62">
+ <permission csid="17df84a4-d06d-4b57-bb75-15e84a04bf10">
<description>generated readonly permission</description>
<resourceName>
/authorization/roles/*/permroles/
</action>
<effect>PERMIT</effect>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.424</createdAt>
+ <createdAt>2010-06-07T16:22:53.615</createdAt>
</permission>
</ns2:permissions_list>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:roles_list xmlns:ns2="http://collectionspace.org/services/authorization">
- <role csid="ad3a2b4c-ef74-47f0-bdb0-f6a906acd370">
+ <role csid="01b70ec2-e1f7-4700-91a4-0c425585031a">
+ <roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
+ <description>generated tenant admin role</description>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.545</createdAt>
+ </role>
+ <role csid="5addeec3-3206-43db-a164-9e529471cf91">
<roleName>ROLE_TENANT_ADMINISTRATOR</roleName>
<description>generated tenant admin role</description>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.372</createdAt>
+ <createdAt>2010-06-07T16:22:53.558</createdAt>
+ </role>
+ <role csid="5ef01b97-7fe0-4c8d-a3e9-a8db8f530ec6">
+ <roleName>ROLE_TENANT_READER</roleName>
+ <description>generated tenant read only role</description>
+ <tenant_id>2</tenant_id>
+ <createdAt>2010-06-07T16:22:53.557</createdAt>
</role>
- <role csid="25f537c9-a213-41de-97f0-18524d5f4eb2">
+ <role csid="73eb01c2-fde2-46c3-8032-1803db242575">
<roleName>ROLE_TENANT_READER</roleName>
<description>generated tenant read only role</description>
<tenant_id>1</tenant_id>
- <createdAt>2010-06-04T14:14:37.386</createdAt>
+ <createdAt>2010-06-07T16:22:53.558</createdAt>
</role>
</ns2:roles_list>
\r
#packages\r
log4j.logger.org.collectionspace=DEBUG\r
+log4j.logger.org.collectionspace.services.authorization.spring=INFO\r
log4j.logger.org.apache=INFO\r
log4j.logger.httpclient=INFO\r
log4j.logger.org.jboss.resteasy=INFO\r
+log4j.logger.hibernate=WARN\r
log4j.logger.org.hibernate=WARN\r
log4j.logger.org.hibernate.cfg=WARN\r
log4j.logger.org.springframework=INFO\r
String id = UUID.randomUUID().toString();
Permission permission = wrapDoc.getWrappedObject();
permission.setCsid(id);
- //FIXME: if admin updating the permission is a CS admin rather than
- //the tenant admin, tenant id should be retrieved from the request
- permission.setTenantId(getServiceContext().getTenantId());
+ setTenant(permission);
}
@Override
private void sanitize(Permission permission) {
permission.setTenantId(null);
}
+
+ private void setTenant(Permission permission) {
+ //set tenant only if not available from input
+ if (permission.getTenantId() == null || permission.getTenantId().isEmpty()) {
+ permission.setTenantId(getServiceContext().getTenantId());
+ }
+ }
}
Role role = wrapDoc.getWrappedObject();
role.setRoleName(fixRoleName(role.getRoleName()));
role.setCsid(id);
- //FIXME: if admin updating the role is a CS admin rather than
- //the tenant admin, tenant id should be retrieved from the request
- role.setTenantId(getServiceContext().getTenantId());
+ setTenant(role);
}
@Override
}
return roleName;
}
+
+ private void setTenant(Role role) {
+ //set tenant only if not available from input
+ if (role.getTenantId() == null || role.getTenantId().isEmpty()) {
+ role.setTenantId(getServiceContext().getTenantId());
+ }
+ }
}
--\r
use cspace;\r
\r
-insert into `roles` (`csid`, `rolename`, `rolegroup`, `created_at`, `tenant_id`) values ('1', 'ROLE_ADMINISTRATOR', 'CollectionSpace Administrator', '2010-02-17 16:31:48', '0');\r
-insert into `roles` (`csid`, `rolename`, `rolegroup`, `created_at`, `tenant_id`) values ('2', 'ROLE_USERS', 'a role for security testing', '2010-02-17 16:31:48', '1');\r
+insert into `roles` (`csid`, `rolename`, `rolegroup`, `created_at`, `tenant_id`) values ('1', 'ROLE_ADMINISTRATOR', 'CollectionSpace Administrator', now(), '0');\r
\r
-insert into `accounts_roles`(`account_id`, `user_id`, `role_id`, `role_name`, `created_at`) values ('eeca40d7-dc77-4cc5-b489-16a53c75525a', 'test', '1', 'ROLE_ADMINISTRATOR', '2010-02-17 16:31:48');\r
-insert into `accounts_roles`(`account_id`, `user_id`, `role_id`, `role_name`, `created_at`) values ('eeca40d7-dc77-4cc5-b489-16a53c75525a', 'test', '2', 'ROLE_USERS', '2010-02-17 16:31:48');\r
+-- for default test account --\r
+insert into `accounts_roles`(`account_id`, `user_id`, `role_id`, `role_name`, `created_at`) values ('eeca40d7-dc77-4cc5-b489-16a53c75525a', 'test', '1', 'ROLE_ADMINISTRATOR', now());\r
\r
-- Additional account introduced during integration on release 0.6, and currently relied upon by the Application Layer.\r
-insert into `accounts_roles`(`account_id`, `user_id`, `role_id`, `role_name`, `created_at`) values ('251f98f3-0292-4f3e-aa95-455314050e1b', 'test@collectionspace.org', '1', 'ROLE_ADMINISTRATOR', '2010-05-03 12:35:00');\r
+insert into `accounts_roles`(`account_id`, `user_id`, `role_id`, `role_name`, `created_at`) values ('251f98f3-0292-4f3e-aa95-455314050e1b', 'test@collectionspace.org', '1', 'ROLE_ADMINISTRATOR', now());\r
+\r
+-- test account for pahma --\r
+insert into `accounts_roles`(`account_id`, `user_id`, `role_id`, `role_name`, `created_at`) values ('ff2b4440-ed0d-4892-adb4-b6999eba3ae7', 'test-pahma', '1', 'ROLE_ADMINISTRATOR', now());\r
\r
-- todo: barney is created in security test but accountrole is not yet created there, so add fake account id\r
-insert into `accounts_roles`(`account_id`, `user_id`, `role_id`, `role_name`, `created_at`) values ('1', 'barney', '2', 'ROLE_USERS', '2010-02-17 16:31:48');\r
+insert into `accounts_roles`(`account_id`, `user_id`, `role_id`, `role_name`, `created_at`) values ('1', 'barney', '2', 'ROLE_USERS', now());\r
\r
if (password != null && !"".equals(password)) {\r
properties.setProperty(PASSWORD_PROPERTY, password);\r
}\r
+ String tenant = System.getProperty(TENANT_PROPERTY);\r
+ if (tenant != null && !"".equals(tenant)) {\r
+ properties.setProperty(TENANT_PROPERTY, tenant);\r
+ }\r
if (logger.isDebugEnabled()) {\r
printProperties();\r
}\r
*/
public interface CollectionSpaceClient {
- /** The AUT h_ property. */
+ /** The AUTH property. */
String AUTH_PROPERTY = "cspace.auth";
- /** The PASSWOR d_ property. */
+ /** The PASSWORD property. */
String PASSWORD_PROPERTY = "cspace.password";
- /** The SS l_ property. */
+ /** The SSL property. */
String SSL_PROPERTY = "cspace.ssl";
- /** The UR l_ property. */
+ /** The URL property. */
String URL_PROPERTY = "cspace.url";
- /** The USE r_ property. */
+ /** The USER property. */
String USER_PROPERTY = "cspace.user";
+ /** The tenant property */
+ String TENANT_PROPERTY = "cspace.tenant";
/**
* Gets the proxy.
* @return the client response
*/
public ClientResponse<AbstractCommonList> readList(String pageSize,
- String pageNumber);
-
+ String pageNumber);
+
/**
* Delete.
*
* @return the client response
*/
public ClientResponse<Response> delete(String csid);
-
}
cspace.url=http://localhost:8180/cspace-services/\r
cspace.ssl=false\r
cspace.auth=true\r
+# default user\r
cspace.user=test\r
-cspace.password=test
\ No newline at end of file
+#cspace.user=test-pahma\r
+cspace.password=test\r
+# default tenant\r
+cspace.tenant=1
\ No newline at end of file
-->
<svc:service-config xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
- xmlns:svc='http://collectionspace.org/services/common'
- xmlns:types='http://collectionspace.org/services/common/types'
- xsi:schemaLocation='http://collectionspace.org/services/common ../resources/common.xsd'>
+ xmlns:svc='http://collectionspace.org/services/common'
+ xmlns:types='http://collectionspace.org/services/common/types'
+ xsi:schemaLocation='http://collectionspace.org/services/common ../resources/common.xsd'>
<!-- name of the repository client is referred in each service binding -->
<repository-client name="nuxeo-java" default="true">
<password>Administrator</password>
<client-type>java</client-type>
<client-class>org.collectionspace.services.nuxeo.client.java.RepositoryJavaClientImpl</client-class>
- <properties>
- <types:item><types:key>pageSizeDefault</types:key><types:value>40</types:value></types:item>
- </properties>
+ <properties>
+ <types:item><types:key>pageSizeDefault</types:key><types:value>40</types:value></types:item>
+ </properties>
</repository-client>
>
<!-- begin movingimages.us tenant meta-data -->
<tenant:tenantBinding
- id="1" name="movingimage.us" displayName="Museum of Moving Images" version="0.1" repositoryDomain="default-domain">
+ id="1" name="movingimage.us" displayName="Museum of Moving Images" version="0.1">
+ <tenant:repositoryDomain name="default-domain" repositoryClient="nuxeo-java"/>
<!-- begin idgenerators service meta-data -->
<tenant:serviceBindings name="idgenerators" version="0.1">
<!-- other URI paths using which this service could be accessed -->
<service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
/collectionobjects/*/authorityrefs/
</service:uriPath>
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.collectionobject.nuxeo.CollectionObjectDocumentModelHandler
</service:documentHandler>
<service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
/intakes/*/authorityrefs/
</service:uriPath>
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.intake.nuxeo.IntakeDocumentModelHandler
</service:documentHandler>
<service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
/loansin/*/authorityrefs/
</service:uriPath>
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.loanin.nuxeo.LoaninDocumentModelHandler
</service:documentHandler>
<service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
/loansout/*/authorityrefs/
</service:uriPath>
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.loanout.nuxeo.LoanoutDocumentModelHandler
</service:documentHandler>
<service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
/movements/*/authorityrefs/
</service:uriPath>
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.movement.nuxeo.MovementDocumentModelHandler
</service:documentHandler>
<tenant:serviceBindings name="Vocabularies" version="0.1">
<!-- other URI paths using which this service could be accessed -->
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.vocabulary.nuxeo.VocabularyDocumentModelHandler
</service:documentHandler>
<service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
/vocabularies/*/items/
</service:uriPath>
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.vocabulary.nuxeo.VocabularyItemDocumentModelHandler
</service:documentHandler>
<service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
/orgauthorities/*/items/*/authorityrefs/
</service:uriPath>
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.organization.nuxeo.OrgAuthorityDocumentModelHandler
</service:documentHandler>
<service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
/orgauthorities/*/items/*/refObjs
</service:uriPath>
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.organization.nuxeo.OrganizationDocumentModelHandler
</service:documentHandler>
<service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
/personauthorities/*/items/*/refObjs
</service:uriPath>
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.person.nuxeo.PersonAuthorityDocumentModelHandler
</service:documentHandler>
<service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
/personauthorities/*/items/
</service:uriPath>
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.person.nuxeo.PersonDocumentModelHandler
</service:documentHandler>
<service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
/locationauthorities/*/items/
</service:uriPath>
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.location.nuxeo.LocationAuthorityDocumentModelHandler
</service:documentHandler>
Repository workspace so we have to configure that.
-->
<tenant:serviceBindings name="Locations" version="0.1">
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.location.nuxeo.LocationDocumentModelHandler
</service:documentHandler>
<service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
/acquisitions/*/authorityrefs/
</service:uriPath>
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.acquisition.nuxeo.AcquisitionDocumentModelHandler
</service:documentHandler>
<service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
relations/subject/*/type/*/object/*
</service:uriPath>
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.relation.nuxeo.RelationDocumentModelHandler
</service:documentHandler>
<tenant:serviceBindings name="Dimensions" version="0.1">
<!-- other URI paths using which this service could be accessed -->
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.dimension.nuxeo.DimensionDocumentModelHandler
</service:documentHandler>
<service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
/orgauthorities/*/items/*/contacts
</service:uriPath>
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.contact.nuxeo.ContactDocumentModelHandler
</service:documentHandler>
<!-- end contact service meta-data -->
<!-- begin note service meta-data -->
<tenant:serviceBindings name="Notes" version="0.1">
- <service:repositoryClient xmlns:service='http://collectionspace.org/services/common/service'>
- nuxeo-java
- </service:repositoryClient>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ default-domain
+ </service:repositoryDomain>
<service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
org.collectionspace.services.note.nuxeo.NoteDocumentModelHandler
</service:documentHandler>
<!-- end role-permission service meta-data -->
</tenant:tenantBinding>
<!-- end movingimages.us tenant meta-data -->
+
+
+ <!-- begin hearstmuseum.berkeley.edu tenant meta-data -->
+ <tenant:tenantBinding
+ id="2" name="hearstmuseum.berkeley.edu" displayName="Phoebe A. Hearst Museum of Anthropology" version="0.1">
+ <tenant:repositoryDomain name="pahma-domain" repositoryClient="nuxeo-java"/>
+ <!-- begin idgenerators service meta-data -->
+ <tenant:serviceBindings name="idgenerators" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+
+ </tenant:serviceBindings>
+ <!-- end idgenerator service meta-data -->
+ <!-- begin id service meta-data -->
+ <tenant:serviceBindings name="id" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /idgenerators/*/ids
+ </service:uriPath>
+ </tenant:serviceBindings>
+ <tenant:serviceBindings name="CollectionObjects" type="object" version="0.1">
+ <!-- begin collectionobject service meta-data -->
+ <!-- other URI paths using which this service could be accessed -->
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /collectionobjects/*/authorityrefs/
+ </service:uriPath>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.collectionobject.nuxeo.CollectionObjectDocumentModelHandler
+ </service:documentHandler>
+ <service:validatorHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.collectionobject.nuxeo.CollectionObjectValidatorHandler
+ </service:validatorHandler>
+ <service:properties xmlns:service='http://collectionspace.org/services/common/service'>
+ <types:item><types:key>objectNameProperty</types:key><types:value>objectName</types:value></types:item>
+ <types:item><types:key>objectNumberProperty</types:key><types:value>objectNumber</types:value></types:item>
+ </service:properties>
+ <!-- end id service meta-data -->
+ <service:object name="CollectionObject" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="collectionobjects-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="collectionobjects_common" updated="" order="1">
+ <service:properties>
+ <types:item><types:key>authRef</types:key><types:value>contentOrganization</types:value></types:item>
+ <types:item><types:key>authRef</types:key><types:value>contentPeople</types:value></types:item>
+ <types:item><types:key>authRef</types:key><types:value>contentPerson</types:value></types:item>
+ <types:item><types:key>authRef</types:key><types:value>inscriber</types:value></types:item>
+ </service:properties>
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/collectionobject"
+ schemaLocation="http://collectionspace.org/services/collectionobject http://services.collectionspace.org/collectionobject/collectionobjects_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="2" control_group="Managed"
+ versionable="true" auditable="false"
+ label="collectionobjects_naturalhistory" updated="" order="2">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/collectionobject/domain/naturalhistory"
+ schemaLocation="http://collectionspace.org/services/collectionobject/domain/naturalhistory http://collectionspace.org/services/collectionobject/domain/collectionobjects_naturalhistory.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!--end collectionobject service meta-data -->
+ <!-- begin intake service meta-data -->
+ <tenant:serviceBindings name="Intakes" type="procedure" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /intakes/*/authorityrefs/
+ </service:uriPath>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.intake.nuxeo.IntakeDocumentModelHandler
+ </service:documentHandler>
+ <service:validatorHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.intake.nuxeo.IntakeValidatorHandler
+ </service:validatorHandler>
+ <service:properties xmlns:service='http://collectionspace.org/services/common/service'>
+ <!-- What to use for name???
+ <types:item><types:key>objectNameProperty</types:key><types:value>objectName</types:value></types:item> -->
+ <types:item><types:key>objectNumberProperty</types:key><types:value>entryNumber</types:value></types:item>
+ </service:properties>
+ <service:object name="Intake" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="intakes-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="intakes_common" updated="" order="1">
+ <service:properties>
+ <types:item><types:key>authRef</types:key><types:value>currentOwner</types:value></types:item>
+ <types:item><types:key>authRef</types:key><types:value>depositor</types:value></types:item>
+ <types:item><types:key>authRef</types:key><types:value>conditionCheckAssesor</types:value></types:item>
+ <types:item><types:key>authRef</types:key><types:value>insurer</types:value></types:item>
+ <types:item><types:key>authRef</types:key><types:value>fieldCollector</types:value></types:item>
+ <types:item><types:key>authRef</types:key><types:value>valuer</types:value></types:item>
+ </service:properties>
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/intake"
+ schemaLocation="http://collectionspace.org/services/intake http://services.collectionspace.org/intake/intakes_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end intake service meta-data -->
+ <!-- begin loanin service meta-data -->
+ <tenant:serviceBindings name="Loansin" type="procedure" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /loansin/*/authorityrefs/
+ </service:uriPath>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.loanin.nuxeo.LoaninDocumentModelHandler
+ </service:documentHandler>
+ <service:validatorHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.loanin.nuxeo.LoaninValidatorHandler
+ </service:validatorHandler>
+ <service:properties xmlns:service='http://collectionspace.org/services/common/service'>
+ <!-- What to use for name???
+ <types:item><types:key>objectNameProperty</types:key><types:value>objectName</types:value></types:item> -->
+ <types:item><types:key>objectNumberProperty</types:key><types:value>loanInNumber</types:value></types:item>
+ </service:properties>
+ <service:object name="Loanin" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="loansin-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="loansin_common" updated="" order="1">
+ <service:properties>
+ <!-- Need to handle repeating ref fields, like "lenders" -->
+ <types:item><types:key>authRef</types:key><types:value>lendersAuthorizer</types:value></types:item>
+ <types:item><types:key>authRef</types:key><types:value>lendersContact</types:value></types:item>
+ <types:item><types:key>authRef</types:key><types:value>loanInContact</types:value></types:item>
+ </service:properties>
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/loanin"
+ schemaLocation="http://collectionspace.org/services/loanin http://services.collectionspace.org/loanin/loansin_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end loanin service meta-data -->
+ <!-- begin loanout service meta-data -->
+ <tenant:serviceBindings name="Loansout" type="procedure" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /loansout/*/authorityrefs/
+ </service:uriPath>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.loanout.nuxeo.LoanoutDocumentModelHandler
+ </service:documentHandler>
+ <service:validatorHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.loanout.nuxeo.LoanoutValidatorHandler
+ </service:validatorHandler>
+ <service:object name="Loanout" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="loansout-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="loansout_common" updated="" order="1">
+ <service:properties>
+ <types:item><types:key>authRef</types:key><types:value>borrower</types:value></types:item>
+ <types:item><types:key>authRef</types:key><types:value>borrowersContact</types:value></types:item>
+ <types:item><types:key>authRef</types:key><types:value>lendersAuthorizer</types:value></types:item>
+ <types:item><types:key>authRef</types:key><types:value>lendersContact</types:value></types:item>
+ </service:properties>
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/loanout"
+ schemaLocation="http://collectionspace.org/services/loanout http://services.collectionspace.org/loanout/loansout_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end loanout service meta-data -->
+ <!-- begin movement service meta-data -->
+ <tenant:serviceBindings name="Movements" type="procedure" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /movements/*/authorityrefs/
+ </service:uriPath>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.movement.nuxeo.MovementDocumentModelHandler
+ </service:documentHandler>
+ <service:validatorHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.movement.nuxeo.MovementValidatorHandler
+ </service:validatorHandler>
+ <service:object name="Movement" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="movements-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="movements_common" updated="" order="1">
+ <service:properties>
+ <types:item><types:key>authRef</types:key><types:value>currentLocation</types:value></types:item>
+ <types:item><types:key>authRef</types:key><types:value>normalLocation</types:value></types:item>
+ <types:item><types:key>authRef</types:key><types:value>movementContact</types:value></types:item>
+ </service:properties>
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/movement"
+ schemaLocation="http://collectionspace.org/services/movement http://services.collectionspace.org/movement/movements_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end movement service meta-data -->
+ <!-- begin vocabulary service meta-data -->
+ <tenant:serviceBindings name="Vocabularies" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.vocabulary.nuxeo.VocabularyDocumentModelHandler
+ </service:documentHandler>
+ <service:object name="Vocabulary" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="vocabularies-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="vocabularies_common" updated="" order="1">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/vocabulary"
+ schemaLocation="http://collectionspace.org/services/vocabulary http://services.collectionspace.org/vocabulary/vocabularies_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end vocabulary service meta-data -->
+ <!--
+ begin vocabularyitem service meta-data.
+ Note there is no Vocabularyitem service, but there is a
+ Repository workspace so we have to configure that.
+ -->
+ <tenant:serviceBindings name="Vocabularyitems" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /vocabularies/*/items/
+ </service:uriPath>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.vocabulary.nuxeo.VocabularyItemDocumentModelHandler
+ </service:documentHandler>
+ <service:validatorHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.vocabulary.nuxeo.VocabularyItemValidatorHandler
+ </service:validatorHandler>
+ <service:object name="Vocabularyitem" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="vocabularyitems-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="vocabularyitems_common" updated="" order="1">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/vocabulary"
+ schemaLocation="http://collectionspace.org/services/vocabulary http://services.collectionspace.org/vocabulary/vocabularyitems_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end vocabulary service meta-data -->
+ <!-- begin orgauthority service meta-data -->
+ <tenant:serviceBindings name="Orgauthorities" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /orgauthorities/*/items/*/authorityrefs/
+ </service:uriPath>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.organization.nuxeo.OrgAuthorityDocumentModelHandler
+ </service:documentHandler>
+ <service:object id="1" name="Orgauthority" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="orgauthorities-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="orgauthorities_common" updated="" order="1">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/organization"
+ schemaLocation="http://collectionspace.org/services/organization http://services.collectionspace.org/organization/orgauthorities_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end orgauthority service meta-data -->
+ <!-- begin organization service meta-data.
+ Note there is no Organization service, but there is a
+ Repository workspace so we have to configure that.
+ -->
+ <tenant:serviceBindings name="Organizations" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /orgauthorities/*/items/
+ </service:uriPath>
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /orgauthorities/*/items/*/refObjs
+ </service:uriPath>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.organization.nuxeo.OrganizationDocumentModelHandler
+ </service:documentHandler>
+ <service:validatorHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.organization.nuxeo.OrganizationValidatorHandler
+ </service:validatorHandler>
+ <service:object id="1" name="Organization" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="organizations-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="organizations_common" updated="" order="1">
+ <service:properties>
+ <types:item><types:key>authRef</types:key><types:value>contactName</types:value></types:item>
+ </service:properties>
+
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/organization"
+ schemaLocation="http://collectionspace.org/services/organization http://services.collectionspace.org/organization/organizations_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end organization service meta-data -->
+ <!-- begin personauthority service meta-data -->
+ <tenant:serviceBindings name="Personauthorities" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /personauthorities/*/items/
+ </service:uriPath>
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /personauthorities/*/items/*/refObjs
+ </service:uriPath>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.person.nuxeo.PersonAuthorityDocumentModelHandler
+ </service:documentHandler>
+ <service:object id="1" name="Personauthority" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="personauthorities-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="personauthorities_common" updated="" order="1">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/person"
+ schemaLocation="http://collectionspace.org/services/person http://services.collectionspace.org/person/personauthorities_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end personauthority service meta-data -->
+ <!-- begin person service meta-data.
+ Note there is no Person service, but there is a
+ Repository workspace so we have to configure that.
+ -->
+ <tenant:serviceBindings name="Persons" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /personauthorities/*/items/
+ </service:uriPath>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.person.nuxeo.PersonDocumentModelHandler
+ </service:documentHandler>
+ <service:validatorHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.person.nuxeo.PersonValidatorHandler
+ </service:validatorHandler>
+ <service:object id="1" name="Person" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="persons-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="persons_common" updated="" order="1">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/person"
+ schemaLocation="http://collectionspace.org/services/person http://services.collectionspace.org/person/persons_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end person service meta-data -->
+ <!-- begin locationauthority service meta-data -->
+ <tenant:serviceBindings name="Locationauthorities" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /locationauthorities/*/items/
+ </service:uriPath>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.location.nuxeo.LocationAuthorityDocumentModelHandler
+ </service:documentHandler>
+ <service:object id="1" name="Locationauthority" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="locationauthorities-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="locationauthorities_common" updated="" order="1">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/location"
+ schemaLocation="http://collectionspace.org/services/location http://services.collectionspace.org/location/locationauthorities_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end locationauthority service meta-data -->
+ <!-- begin location service meta-data.
+ Note there is no Location service, but there is a
+ Repository workspace so we have to configure that.
+ -->
+ <tenant:serviceBindings name="Locations" version="0.1">
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.location.nuxeo.LocationDocumentModelHandler
+ </service:documentHandler>
+ <service:validatorHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.location.nuxeo.LocationValidatorHandler
+ </service:validatorHandler>
+ <service:object id="1" name="Locationitem" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="locations-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="locations_common" updated="" order="1">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/location"
+ schemaLocation="http://collectionspace.org/services/location http://services.collectionspace.org/location/locations_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end location service meta-data -->
+ <!-- begin acquisition service meta-data -->
+ <tenant:serviceBindings name="Acquisitions" type="procedure" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /acquisitions/*/authorityrefs/
+ </service:uriPath>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.acquisition.nuxeo.AcquisitionDocumentModelHandler
+ </service:documentHandler>
+ <service:validatorHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.acquisition.nuxeo.AcquisitionValidatorHandler
+ </service:validatorHandler>
+ <service:properties xmlns:service='http://collectionspace.org/services/common/service'>
+ <!-- What to use for name???
+ <types:item><types:key>objectNameProperty</types:key><types:value>objectName</types:value></types:item> -->
+ <types:item><types:key>objectNumberProperty</types:key><types:value>acquisitionReferenceNumber</types:value></types:item>
+ </service:properties>
+ <service:object name="Acquisition" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="acquisitions-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="acquisitions_common" updated="" order="1">
+ <service:properties>
+ <types:item><types:key>authRef</types:key><types:value>acquisitionAuthorizer</types:value></types:item>
+ <types:item><types:key>authRef</types:key><types:value>acquisitionFundingSource</types:value></types:item>
+ <!-- Need to handle repeating ref fields, like "acquisitionSources" -->
+ <types:item><types:key>authRef</types:key><types:value>fieldCollector</types:value></types:item>
+ </service:properties>
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/acquisition"
+ schemaLocation="http://collectionspace.org/services/acquisition http://services.collectionspace.org/acquisition/acquisitions_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end acquisition service meta-data -->
+ <!-- begin relation service meta-data -->
+ <tenant:serviceBindings name="Relations" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->'
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ relations/subject/*/type/*/object/*
+ </service:uriPath>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.relation.nuxeo.RelationDocumentModelHandler
+ </service:documentHandler>
+ <service:validatorHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.relation.nuxeo.RelationValidatorHandler
+ </service:validatorHandler>
+ <service:object name="Relation" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="relations-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="relations_common" updated="" order="1">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/relation"
+ schemaLocation="http://collectionspace.org/services/relation http://services.collectionspace.org/relation/relations_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end relation service meta-data -->
+ <!-- begin account service meta-data -->
+ <tenant:serviceBindings name="Accounts" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.account.storage.AccountDocumentHandler
+ </service:documentHandler>
+ <service:validatorHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.account.storage.AccountValidatorHandler
+ </service:validatorHandler>
+ <service:object name="Acccount" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="accounts_system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="accounts_common" updated="" order="1">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/account"
+ schemaLocation="http://collectionspace.org/services/account http://collectionspace.org/services/account/accounts_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end account service meta-data -->
+ <!-- begin dimension service meta-data -->
+ <tenant:serviceBindings name="Dimensions" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.dimension.nuxeo.DimensionDocumentModelHandler
+ </service:documentHandler>
+ <service:object name="Dimension" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="dimensions-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="dimensions_common" updated="" order="1">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/dimension"
+ schemaLocation="http://collectionspace.org/services/dimension http://services.collectionspace.org/dimension/dimensions_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end dimension service meta-data -->
+ <!-- begin contact service meta-data -->
+ <tenant:serviceBindings name="Contacts" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /personauthorities/*/items/*/contacts
+ </service:uriPath>
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /orgauthorities/*/items/*/contacts
+ </service:uriPath>
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.contact.nuxeo.ContactDocumentModelHandler
+ </service:documentHandler>
+ <service:object name="Contact" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="contacts-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="contacts_common" updated="" order="1">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/contact"
+ schemaLocation="http://collectionspace.org/services/contact http://services.collectionspace.org/contact/contacts_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end contact service meta-data -->
+ <!-- begin note service meta-data -->
+ <tenant:serviceBindings name="Notes" version="0.1">
+ <service:repositoryDomain xmlns:service='http://collectionspace.org/services/common/service'>
+ pahma-domain
+ </service:repositoryDomain>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.note.nuxeo.NoteDocumentModelHandler
+ </service:documentHandler>
+ <service:object name="CSNote" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="notes-system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="notes_common" updated="" order="1">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/note"
+ schemaLocation="http://collectionspace.org/services/note http://services.collectionspace.org/note/notes_common.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end note service meta-data -->
+ <!-- begin role service meta-data -->
+ <tenant:serviceBindings name="authorization/roles" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.authorization.storage.RoleDocumentHandler
+ </service:documentHandler>
+ <service:validatorHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.authorization.storage.RoleValidatorHandler
+ </service:validatorHandler>
+ <service:object name="Role" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="roles_system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="roles" updated="" order="1">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/authorization"
+ schemaLocation="http://collectionspace.org/services/authorization http://services.collectionspace.org/authorization/roles.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end role service meta-data -->
+ <!-- begin permission service meta-data -->
+ <tenant:serviceBindings name="authorization/permissions" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.authorization.storage.PermissionDocumentHandler
+ </service:documentHandler>
+ <service:validatorHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.authorization.storage.PermissionValidatorHandler
+ </service:validatorHandler>
+ <service:object name="Permission" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="permissions_system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="permissions" updated="" order="1">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/authorization"
+ schemaLocation="http://collectionspace.org/services/authorization http://services.collectionspace.org/authorization/permissions.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end permission service meta-data -->
+ <!-- begin permission-role service meta-data -->
+ <!-- the following service is same as authorization/roles/permroles service -->
+ <!-- except that it is available as a sub resource of the permission service -->
+ <tenant:serviceBindings name="authorization/permissions/permroles" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /authorization/permissions/*/permroles/
+ </service:uriPath>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.authorization.storage.PermissionRoleDocumentHandler
+ </service:documentHandler>
+ <!--service:validatorHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.authorization.storage.PermissionRoleValidatorHandler
+ </service:validatorHandler-->
+ <service:object name="PermissionRole" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="permroles_system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="permroles" updated="" order="1">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/authorization"
+ schemaLocation="http://collectionspace.org/services/authorization http://services.collectionspace.org/authorization/permissions_roles.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end permission-role service meta-data -->
+ <!-- begin account-role service meta-data -->
+ <tenant:serviceBindings name="accounts/accountroles" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /accounts/*/accountroles/
+ </service:uriPath>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.account.storage.AccountRoleDocumentHandler
+ </service:documentHandler>
+ <!--service:validatorHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.account.storage.AccountRoleDocumentHandler
+ </service:validatorHandler-->
+ <service:object name="AccountRole" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="accountroles_system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="accountroles" updated="" order="1">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/authorization"
+ schemaLocation="http://collectionspace.org/services/authorization http://services.collectionspace.org/authorization/accounts_roles.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end account-role service meta-data -->
+ <!-- begin role-permission service meta-data -->
+ <!-- the following service is same as authorization/permissions/permroles service -->
+ <!-- except that it is available as a sub resource of the role service -->
+ <tenant:serviceBindings name="authorization/roles/permroles" version="0.1">
+ <!-- other URI paths using which this service could be accessed -->
+ <service:uriPath xmlns:service='http://collectionspace.org/services/common/service'>
+ /authorization/roles/*/permroles/
+ </service:uriPath>
+ <service:documentHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.authorization.storage.PermissionRoleDocumentHandler
+ </service:documentHandler>
+ <!--service:validatorHandler xmlns:service='http://collectionspace.org/services/common/service'>
+ org.collectionspace.services.authorization.storage.PermissionRoleValidatorHandler
+ </service:validatorHandler-->
+ <service:object name="PermissionRole" version="0.1"
+ xmlns:service='http://collectionspace.org/services/common/service'>
+ <service:part id="0" control_group="Managed"
+ versionable="true" auditable="false"
+ label="permroles_system" updated="" order="0">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/common/system"
+ schemaLocation="http://collectionspace.org/services/common/system http://collectionspace.org/services/common/system/system-response.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ <service:part id="1" control_group="Managed"
+ versionable="true" auditable="false"
+ label="permroles" updated="" order="1">
+ <service:content contentType="application/xml">
+ <service:xmlContent
+ namespaceURI="http://collectionspace.org/services/authorization"
+ schemaLocation="http://collectionspace.org/services/authorization http://services.collectionspace.org/authorization/permissions_roles.xsd">
+ </service:xmlContent>
+ </service:content>
+ </service:part>
+ </service:object>
+ </tenant:serviceBindings>
+ <!-- end role-permission service meta-data -->
+ </tenant:tenantBinding>
+ <!-- end hearstmuseum.berkeley.edu tenant meta-data -->
+
</tenant:TenantBindingConfig>
//all configs are read, connector is initialized, retrieve workspaceids
Hashtable<String, TenantBindingType> tenantBindings =
getTenantBindingConfigReader().getTenantBindings();
- TenantRepository.get().retrieveAllWorkspaceIds(tenantBindings);
+ TenantRepository.get().setup(tenantBindings);
}
/**
import java.util.List;
import org.collectionspace.services.common.service.ServiceBindingType;
+import org.collectionspace.services.common.tenant.RepositoryDomainType;
import org.collectionspace.services.common.tenant.TenantBindingType;
import org.collectionspace.services.common.tenant.TenantBindingConfig;
import org.collectionspace.services.common.types.PropertyItemType;
//tenant id, tenant binding
private Hashtable<String, TenantBindingType> tenantBindings =
new Hashtable<String, TenantBindingType>();
+ //repository domains
+ private Hashtable<String, RepositoryDomainType> domains =
+ new Hashtable<String, RepositoryDomainType>();
//tenant-qualified servicename, service binding
private Hashtable<String, ServiceBindingType> serviceBindings =
new Hashtable<String, ServiceBindingType>();
tenantBindingConfig = (TenantBindingConfig) parse(configFile, TenantBindingConfig.class);
for (TenantBindingType tenantBinding : tenantBindingConfig.getTenantBinding()) {
tenantBindings.put(tenantBinding.getId(), tenantBinding);
+ readDomains(tenantBinding);
readServiceBindings(tenantBinding);
if (logger.isDebugEnabled()) {
logger.debug("read() added tenant id=" + tenantBinding.getId()
}
}
+ private void readDomains(TenantBindingType tenantBinding) throws Exception {
+ for (RepositoryDomainType domain : tenantBinding.getRepositoryDomain()) {
+ domains.put(domain.getName(), domain);
+ }
+ }
+
private void readServiceBindings(TenantBindingType tenantBinding) throws Exception {
for (ServiceBindingType serviceBinding : tenantBinding.getServiceBindings()) {
String key = getTenantQualifiedServiceName(tenantBinding.getId(),
return tenantBindings.get(tenantId);
}
+ /**
+ * getRepositoryDomain gets repository domain configuration for the given name
+ * @param domainName
+ * @return
+ */
+ public RepositoryDomainType getRepositoryDomain(String domainName) {
+ return domains.get(domainName.trim());
+ }
+
+ /**
+ * getRepositoryDomain gets repository domain configuration for the given service
+ * and given tenant id
+ * @param tenantId
+ * @param serviceName
+ * @return
+ */
+ public RepositoryDomainType getRepositoryDomain(String tenantId, String serviceName) {
+ ServiceBindingType serviceBinding = getServiceBinding(tenantId, serviceName);
+ if (serviceBinding == null) {
+ throw new IllegalArgumentException("no service binding found for " + serviceName
+ + " of tenant with id=" + tenantId);
+ }
+ if (serviceBinding.getRepositoryDomain() == null) {
+ if (logger.isDebugEnabled()) {
+ logger.debug("No repository domain configured for " + serviceName
+ + " of tenant with id=" + tenantId);
+ }
+ return null;
+ }
+ return domains.get(serviceBinding.getRepositoryDomain().trim());
+ }
+
/**
* getServiceBinding gets service binding for given tenant for a given service
* @param tenantId
import org.collectionspace.services.common.security.UnauthorizedException;
import org.collectionspace.services.common.service.ObjectPartType;
import org.collectionspace.services.common.service.ServiceBindingType;
+import org.collectionspace.services.common.tenant.RepositoryDomainType;
import org.collectionspace.services.common.tenant.TenantBindingType;
import org.collectionspace.services.common.types.PropertyItemType;
import org.collectionspace.services.common.types.PropertyType;
private ServiceBindingType serviceBinding;
/** The tenant binding. */
private TenantBindingType tenantBinding;
+ /** repository domain used by the service */
+ private RepositoryDomainType repositoryDomain;
/** The override document type. */
private String overrideDocumentType = null;
/** The val handlers. */
* Instantiates a new abstract service context impl.
*/
private AbstractServiceContextImpl() {
- // private constructor for singleton pattern
- }
-
+ // private constructor for singleton pattern
+ }
// request query params
/** The query params. */
private MultivaluedMap<String, String> queryParams;
logger.debug("tenantId=" + tenantId
+ " service binding=" + serviceBinding.getName());
}
+ repositoryDomain = tReader.getRepositoryDomain(tenantId, serviceName);
+ if (repositoryDomain != null) {
+ if (logger.isDebugEnabled()) {
+ logger.debug("tenantId=" + tenantId
+ + " repository doamin=" + repositoryDomain.getName());
+ }
+ }
}
/* (non-Javadoc)
*/
@Override
public String getRepositoryClientName() {
- if (serviceBinding.getRepositoryClient() == null) {
+ if (repositoryDomain == null) {
return null;
}
- return serviceBinding.getRepositoryClient().trim();
+ return repositoryDomain.getRepositoryClient();
}
/* (non-Javadoc)
*/
@Override
public String getRepositoryDomainName() {
- return tenantBinding.getRepositoryDomain();
+ if (repositoryDomain == null) {
+ return null;
+ }
+ return repositoryDomain.getName();
}
/* (non-Javadoc)
msg.append("tenant id=" + tenantBinding.getId() + " ");
msg.append("tenant name=" + tenantBinding.getName() + " ");
msg.append(tenantBinding.getDisplayName() + " ");
- msg.append("tenant repository domain=" + tenantBinding.getRepositoryDomain());
+ if (repositoryDomain != null) {
+ msg.append("tenant repository domain=" + repositoryDomain.getName());
+ }
for (Map.Entry<String, Object> entry : properties.entrySet()) {
msg.append("property name=" + entry.getKey() + " value=" + entry.getValue().toString());
}
Method m = c.getMethod(methodName);
Object r = m.invoke(o);
- if (logger.isDebugEnabled()) {
- logger.debug("getValue returned value=" + r
- + " for " + c.getName());
- }
+// if (logger.isDebugEnabled()) {
+// logger.debug("getValue returned value=" + r
+// + " for " + c.getName());
+// }
return r;
}
Class c = o.getClass();
Method m = c.getMethod(methodName, argType);
Object r = m.invoke(o, argValue);
- if (logger.isDebugEnabled()) {
- logger.debug("completed invocation of " + methodName
- + " for " + c.getName());
- }
+// if (logger.isDebugEnabled()) {
+// logger.debug("completed invocation of " + methodName
+// + " for " + c.getName());
+// }
return r;
}
}
*/
package org.collectionspace.services.common.repository;
+import java.util.Hashtable;
import java.util.List;
import org.collectionspace.services.common.context.ServiceContext;
*/
public interface RepositoryClient extends StorageClient {
+ /**
+ * createDomain creates a doamin in the default repository
+ * @param space name
+ * @return id of newly created domain space
+ * @throws java.lang.Exception
+ */
+ public String createDomain(String domainName) throws Exception;
+
+ /**
+ * getDomainSpaceId gets id of the given domain
+ * @param domainName
+ * @return
+ * @throws Exception
+ */
+ public String getDomainId(String domainName) throws Exception;
+
+ /**
+ * retrieveWorkspaceIds retrieve workspace ids for given domain
+ * @param domainName
+ * @return Hashtable<workspaceName, workspaceId>
+ * @throws Exception
+ */
+ public Hashtable<String, String> retrieveWorkspaceIds(String domainName) throws Exception;
+
/**
* createWorkspace creates a workspace in default repository under given domain
* @param tenantDomain domain representing tenant
* @throws java.lang.Exception
*/
public String getWorkspaceId(String tenantDomain, String workspaceName) throws Exception;
-
+
/**
* get wrapped documentModel from the Nuxeo repository
* @param ctx service context under which this method is invoked
* @throws DocumentException
*/
public DocumentWrapper<DocumentModel> getDoc(
- ServiceContext ctx, String id)
+ ServiceContext ctx, String id)
throws DocumentNotFoundException, DocumentException;
/**
* @throws DocumentException
*/
public DocumentWrapper<DocumentModel> findDoc(
- ServiceContext ctx, String where)
+ ServiceContext ctx, String where)
throws DocumentNotFoundException, DocumentException;
/**
* @throws DocumentException
*/
public String findDocCSID(
- ServiceContext ctx, String where)
+ ServiceContext ctx, String where)
throws DocumentNotFoundException, DocumentException;
/**
* @throws DocumentException
*/
public DocumentWrapper<DocumentModelList> findDocs(
- ServiceContext ctx,
- List<String> docTypes,
- String where,
- int pageSize, int pageNum, boolean computeTotal )
+ ServiceContext ctx,
+ List<String> docTypes,
+ String where,
+ int pageSize, int pageNum, boolean computeTotal)
throws DocumentNotFoundException, DocumentException;
}
*/
package org.collectionspace.services.nuxeo.client.java;
+import java.util.Hashtable;
import java.util.UUID;
import java.util.List;
-import org.collectionspace.services.common.ServiceMain;
import org.collectionspace.services.common.context.ServiceContext;
import org.collectionspace.services.common.document.BadRequestException;
import org.collectionspace.services.nuxeo.util.NuxeoUtils;
import org.collectionspace.services.common.query.IQueryManager;
import org.collectionspace.services.common.repository.RepositoryClient;
-import org.collectionspace.services.nuxeo.client.java.DocumentModelHandler;
import org.jboss.resteasy.plugins.providers.multipart.MultipartInput;
import org.jboss.resteasy.plugins.providers.multipart.MultipartOutput;
* $LastChangedRevision: $ $LastChangedDate: $
*/
public class RepositoryJavaClientImpl implements RepositoryClient {
-
- /**
- * The Class QueryContext.
- */
- private class QueryContext {
-
- /** The doc type. */
- String docType;
-
- /** The doc filter. */
- DocumentFilter docFilter;
-
- /** The where clause. */
- String whereClause;
-
- /** The domain. */
- String domain;
-
- /** The tenant id. */
- String tenantId;
-
- /**
- * Instantiates a new query context.
- *
- * @param ctx the ctx
- * @throws DocumentNotFoundException the document not found exception
- * @throws DocumentException the document exception
- */
- QueryContext(ServiceContext<MultipartInput, MultipartOutput> ctx) throws DocumentNotFoundException, DocumentException {
- docType = ctx.getDocumentType();
- if (docType == null) {
- throw new DocumentNotFoundException(
- "Unable to find DocumentType for service " + ctx.getServiceName());
- }
- domain = ctx.getRepositoryDomainName();
- if (domain == null) {
- throw new DocumentNotFoundException(
- "Unable to find Domain for service " + ctx.getServiceName());
- }
- tenantId = ctx.getTenantId();
- if (tenantId == null) {
- throw new IllegalArgumentException(
- "Service context has no Tenant ID specified.");
- }
- }
-
- /**
- * Instantiates a new query context.
- *
- * @param ctx the ctx
- * @param theWhereClause the the where clause
- * @throws DocumentNotFoundException the document not found exception
- * @throws DocumentException the document exception
- */
- QueryContext(ServiceContext<MultipartInput, MultipartOutput> ctx,
- String theWhereClause) throws DocumentNotFoundException, DocumentException {
- this(ctx);
- whereClause = theWhereClause;
- }
-
- /**
- * Instantiates a new query context.
- *
- * @param ctx the ctx
- * @param handler the handler
- * @throws DocumentNotFoundException the document not found exception
- * @throws DocumentException the document exception
- */
- QueryContext(ServiceContext<MultipartInput, MultipartOutput> ctx,
- DocumentHandler handler) throws DocumentNotFoundException, DocumentException {
- this(ctx);
- if (handler == null) {
- throw new IllegalArgumentException(
- "Document handler is missing.");
- }
- docFilter = handler.getDocumentFilter();
- if (docFilter == null) {
- throw new IllegalArgumentException(
- "Document handler has no Filter specified.");
- }
- whereClause = docFilter.getWhereClause();
- }
- }
+ /**
+ * The Class QueryContext.
+ */
+ private class QueryContext {
+
+ /** The doc type. */
+ String docType;
+ /** The doc filter. */
+ DocumentFilter docFilter;
+ /** The where clause. */
+ String whereClause;
+ /** The domain. */
+ String domain;
+ /** The tenant id. */
+ String tenantId;
+
+ /**
+ * Instantiates a new query context.
+ *
+ * @param ctx the ctx
+ * @throws DocumentNotFoundException the document not found exception
+ * @throws DocumentException the document exception
+ */
+ QueryContext(ServiceContext<MultipartInput, MultipartOutput> ctx) throws DocumentNotFoundException, DocumentException {
+ docType = ctx.getDocumentType();
+ if (docType == null) {
+ throw new DocumentNotFoundException(
+ "Unable to find DocumentType for service " + ctx.getServiceName());
+ }
+ domain = ctx.getRepositoryDomainName();
+ if (domain == null) {
+ throw new DocumentNotFoundException(
+ "Unable to find Domain for service " + ctx.getServiceName());
+ }
+ tenantId = ctx.getTenantId();
+ if (tenantId == null) {
+ throw new IllegalArgumentException(
+ "Service context has no Tenant ID specified.");
+ }
+ }
+
+ /**
+ * Instantiates a new query context.
+ *
+ * @param ctx the ctx
+ * @param theWhereClause the the where clause
+ * @throws DocumentNotFoundException the document not found exception
+ * @throws DocumentException the document exception
+ */
+ QueryContext(ServiceContext<MultipartInput, MultipartOutput> ctx,
+ String theWhereClause) throws DocumentNotFoundException, DocumentException {
+ this(ctx);
+ whereClause = theWhereClause;
+ }
+
+ /**
+ * Instantiates a new query context.
+ *
+ * @param ctx the ctx
+ * @param handler the handler
+ * @throws DocumentNotFoundException the document not found exception
+ * @throws DocumentException the document exception
+ */
+ QueryContext(ServiceContext<MultipartInput, MultipartOutput> ctx,
+ DocumentHandler handler) throws DocumentNotFoundException, DocumentException {
+ this(ctx);
+ if (handler == null) {
+ throw new IllegalArgumentException(
+ "Document handler is missing.");
+ }
+ docFilter = handler.getDocumentFilter();
+ if (docFilter == null) {
+ throw new IllegalArgumentException(
+ "Document handler has no Filter specified.");
+ }
+ whereClause = docFilter.getWhereClause();
+ }
+ }
/** The logger. */
private final Logger logger = LoggerFactory.getLogger(RepositoryJavaClientImpl.class);
* Instantiates a new repository java client impl.
*/
public RepositoryJavaClientImpl() {
- //Empty constructor
+ //Empty constructor
}
/**
* @throws ClientException the client exception
*/
private void setCollectionSpaceCoreValues(ServiceContext<MultipartInput, MultipartOutput> ctx,
- DocumentModel documentModel,
- Action action) throws ClientException {
- //
- // Add the tenant ID value to the new entity
- //
- documentModel.setProperty(DocumentModelHandler.COLLECTIONSPACE_CORE_SCHEMA,
- DocumentModelHandler.COLLECTIONSPACE_CORE_TENANTID,
- ctx.getTenantId());
- switch (action) {
- case CREATE:
- //add creation date value
- break;
- case UPDATE:
- //add update value
- break;
- default:
- }
+ DocumentModel documentModel,
+ Action action) throws ClientException {
+ //
+ // Add the tenant ID value to the new entity
+ //
+ documentModel.setProperty(DocumentModelHandler.COLLECTIONSPACE_CORE_SCHEMA,
+ DocumentModelHandler.COLLECTIONSPACE_CORE_TENANTID,
+ ctx.getTenantId());
+ switch (action) {
+ case CREATE:
+ //add creation date value
+ break;
+ case UPDATE:
+ //add update value
+ break;
+ default:
+ }
}
-
+
/**
* create document in the Nuxeo repository
*
@Override
public void get(ServiceContext ctx, DocumentHandler handler)
throws DocumentNotFoundException, DocumentException {
- QueryContext queryContext = new QueryContext(ctx, handler);
+ QueryContext queryContext = new QueryContext(ctx, handler);
RepositoryInstance repoSession = null;
try {
}
return wrapDoc;
}
-
+
/**
* find wrapped documentModel from the Nuxeo repository
* @param ctx service context under which this method is invoked
DocumentWrapper<DocumentModel> wrapDoc = null;
try {
- QueryContext queryContext = new QueryContext(ctx, whereClause);
+ QueryContext queryContext = new QueryContext(ctx, whereClause);
repoSession = getRepositorySession();
DocumentModelList docList = null;
// force limit to 1, and ignore totalSize
String query = buildNXQLQuery(queryContext);
docList = repoSession.query(query,
- null, //Filter
- 1, //limit
- 0, //offset
- false); //countTotal
+ null, //Filter
+ 1, //limit
+ 0, //offset
+ false); //countTotal
if (docList.size() != 1) {
if (logger.isDebugEnabled()) {
logger.debug("findDoc: Query found: " + docList.size() + " items.");
*/
@Override
public DocumentWrapper<DocumentModelList> findDocs(
- ServiceContext ctx,
+ ServiceContext ctx,
List<String> docTypes,
String whereClause,
int pageSize, int pageNum, boolean computeTotal)
}
}
}
-
+
/**
* getFiltered get all documents for an entity service from the Document repository,
* given filter parameters specified by the handler.
@Override
public void getFiltered(ServiceContext ctx, DocumentHandler handler)
throws DocumentNotFoundException, DocumentException {
- QueryContext queryContext = new QueryContext(ctx, handler);
-
+ QueryContext queryContext = new QueryContext(ctx, handler);
+
RepositoryInstance repoSession = null;
try {
handler.prepare(Action.GET_ALL);
// in returned DocumentModelList.
if ((queryContext.docFilter.getOffset() > 0) || (queryContext.docFilter.getPageSize() > 0)) {
docList = repoSession.query(query, null,
- queryContext.docFilter.getPageSize(), queryContext.docFilter.getOffset(), true);
+ queryContext.docFilter.getPageSize(), queryContext.docFilter.getOffset(), true);
} else {
docList = repoSession.query(query);
}
throw new UnsupportedOperationException();
}
+ @Override
+ public Hashtable<String, String> retrieveWorkspaceIds(String domainName) throws Exception {
+ return NuxeoConnector.getInstance().retrieveWorkspaceIds(domainName);
+ }
+
+ @Override
+ public String createDomain(String domainName) throws Exception {
+ RepositoryInstance repoSession = null;
+ String domainId = null;
+ try {
+ repoSession = getRepositorySession();
+ DocumentRef parentDocRef = new PathRef("/");
+ DocumentModel parentDoc = repoSession.getDocument(parentDocRef);
+ DocumentModel doc = repoSession.createDocumentModel(parentDoc.getPathAsString(),
+ domainName, "Domain");
+ doc.setPropertyValue("dc:title", domainName);
+ doc.setPropertyValue("dc:description", "A CollectionSpace domain "
+ + domainName);
+ doc = repoSession.createDocument(doc);
+ domainId = doc.getId();
+ repoSession.save();
+ if (logger.isDebugEnabled()) {
+ logger.debug("created tenant domain name=" + domainName
+ + " id=" + domainId);
+ }
+ } catch (Exception e) {
+ if (logger.isDebugEnabled()) {
+ logger.debug("createTenantSpace caught exception ", e);
+ }
+ throw e;
+ } finally {
+ if (repoSession != null) {
+ releaseRepositorySession(repoSession);
+ }
+ }
+ return domainId;
+ }
+
+ @Override
+ public String getDomainId(String domainName) throws Exception {
+ String domainId = null;
+ RepositoryInstance repoSession = null;
+ try {
+ repoSession = getRepositorySession();
+ DocumentRef docRef = new PathRef(
+ "/" + domainName);
+ DocumentModel domain = repoSession.getDocument(docRef);
+ domainId = domain.getId();
+ } catch (Exception e) {
+ if (logger.isDebugEnabled()) {
+ logger.debug("Caught exception ", e);
+ }
+ //there is no way to identify if document does not exist due to
+ //lack of typed exception for getDocument method
+ return null;
+ } finally {
+ if (repoSession != null) {
+ releaseRepositorySession(repoSession);
+ }
+ }
+ return domainId;
+ }
+
/* (non-Javadoc)
* @see org.collectionspace.services.common.repository.RepositoryClient#createWorkspace(java.lang.String, java.lang.String)
*/
@Override
- public String createWorkspace(String tenantDomain, String workspaceName) throws Exception {
+ public String createWorkspace(String domainName, String workspaceName) throws Exception {
RepositoryInstance repoSession = null;
String workspaceId = null;
try {
repoSession = getRepositorySession();
- DocumentRef docRef = new PathRef(
- "/" + tenantDomain
+ DocumentRef parentDocRef = new PathRef(
+ "/" + domainName
+ "/" + "workspaces");
- DocumentModel parent = repoSession.getDocument(docRef);
- DocumentModel doc = repoSession.createDocumentModel(parent.getPathAsString(),
+ DocumentModel parentDoc = repoSession.getDocument(parentDocRef);
+ DocumentModel doc = repoSession.createDocumentModel(parentDoc.getPathAsString(),
workspaceName, "Workspace");
doc.setPropertyValue("dc:title", workspaceName);
doc.setPropertyValue("dc:description", "A CollectionSpace workspace for "
* @param where the where
* @param domain the domain
*/
- private final void appendNXQLWhere(StringBuilder query, QueryContext queryContext) {
- //
- // Restrict search to a specific Nuxeo domain
+ private final void appendNXQLWhere(StringBuilder query, QueryContext queryContext) {
+ //
+ // Restrict search to a specific Nuxeo domain
// TODO This is a slow method for tenant-filter
// We should make this a property that is indexed.
- //
+ //
query.append(" WHERE ecm:path STARTSWITH '/" + queryContext.domain + "'");
-
+
//
// Restrict search to the current tenant ID. Is the domain path filter (above) still needed?
//
- query.append(IQueryManager.SEARCH_QUALIFIER_AND + DocumentModelHandler.COLLECTIONSPACE_CORE_SCHEMA + ":" +
- DocumentModelHandler.COLLECTIONSPACE_CORE_TENANTID +
- " = " + queryContext.tenantId);
+ query.append(IQueryManager.SEARCH_QUALIFIER_AND + DocumentModelHandler.COLLECTIONSPACE_CORE_SCHEMA + ":"
+ + DocumentModelHandler.COLLECTIONSPACE_CORE_TENANTID
+ + " = " + queryContext.tenantId);
//
// Finally, append the incoming where clause
//
import org.collectionspace.services.common.service.ServiceBindingType;
import org.collectionspace.services.common.tenant.TenantBindingType;
import org.collectionspace.services.common.config.TenantBindingConfigReaderImpl;
+import org.collectionspace.services.common.tenant.RepositoryDomainType;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class TenantRepository {
final private static TenantRepository self = new TenantRepository();
-
final Logger logger = LoggerFactory.getLogger(TenantRepository.class);
//tenant-qualified service, workspace
private Hashtable<String, String> serviceWorkspaces = new Hashtable<String, String>();
private TenantRepository() {
-
}
public static TenantRepository get() {
return self;
}
-
+
+ /**
+ * getWorkspaceId for a tenant's service
+ * @param tenantId
+ * @param serviceName
+ * @return workspace id
+ */
+ public String getWorkspaceId(String tenantId, String serviceName) {
+ String tenantService =
+ TenantBindingConfigReaderImpl.getTenantQualifiedServiceName(tenantId, serviceName);
+ return serviceWorkspaces.get(tenantService);
+ }
+
/**
- * retrieveWorkspaceIds is called at initialization time to retrieve
- * workspace ids of all the tenants
+ * setup is called at initialization time to setup tenant specific repository(s)
+ * it will create repository domain(s) and
+ * also service workspaces for all the services used by given tenant(s)
* @param hashtable <tenant name, tenantbinding>
* @throws Exception
*/
- synchronized public void retrieveAllWorkspaceIds(Hashtable<String, TenantBindingType> tenantBindings)
+ synchronized public void setup(Hashtable<String, TenantBindingType> tenantBindings)
throws Exception {
for (TenantBindingType tenantBinding : tenantBindings.values()) {
- retrieveWorkspaceIds(tenantBinding);
+ setup(tenantBinding);
}
}
/**
- * retrieveWorkspaceIds retrieves workspace ids for services used by
- * the given tenant
+ * setup sets up repository(s) for given tenant
+ * it will create repository domains and also service workspaces if needed
* @param tenantBinding
* @throws Exception
*/
- synchronized public void retrieveWorkspaceIds(TenantBindingType tenantBinding) throws Exception {
- Hashtable<String, String> workspaceIds = new Hashtable<String, String>();
+ synchronized public void setup(TenantBindingType tenantBinding) throws Exception {
ServiceMain svcMain = ServiceMain.getInstance();
- RepositoryClientConfigType rclientConfig = svcMain.getServicesConfigReader().getConfiguration().getRepositoryClient();
+ RepositoryClientConfigType rclientConfig =
+ svcMain.getServicesConfigReader().getConfiguration().getRepositoryClient();
ClientType clientType = svcMain.getClientType();
if (clientType.equals(ClientType.JAVA)
&& rclientConfig.getName().equalsIgnoreCase("nuxeo-java")) {
- //FIXME only one repository client is recognized
- workspaceIds = svcMain.getNuxeoConnector().retrieveWorkspaceIds(
- tenantBinding.getRepositoryDomain());
+ for (RepositoryDomainType repositoryDomain : tenantBinding.getRepositoryDomain()) {
+ createDomain(tenantBinding, repositoryDomain);
+ createWorkspaces(tenantBinding, repositoryDomain);
+ }
}
- //verify if workspace exists for each service in the tenant binding
+ }
+
+ private RepositoryClient getRepositoryClient(RepositoryDomainType repositoryDomain) {
+ String clientName = repositoryDomain.getRepositoryClient();
+ if (clientName == null) {
+ String msg = "Could not find repository client=" + clientName
+ + " for repositoryDomain=" + repositoryDomain.getName();
+ logger.error(msg);
+ throw new IllegalArgumentException(msg);
+ }
+ return RepositoryClientFactory.getInstance().getClient(clientName);
+ }
+
+ /**
+ * createDomain retrieves domain id for the given domain or creates one
+ * @param tenantBinding
+ * @param repositoryDomain
+ * @throws Exception
+ */
+ synchronized private void createDomain(TenantBindingType tenantBinding,
+ RepositoryDomainType repositoryDomain) throws Exception {
+ String domainName = repositoryDomain.getName();
+ RepositoryClient repositoryClient = getRepositoryClient(repositoryDomain);
+ String domainId = repositoryClient.getDomainId(domainName);
+ if (domainId == null) {
+ domainId = repositoryClient.createDomain(domainName);
+ if (logger.isDebugEnabled()) {
+ logger.debug("created repository domain for " + domainName
+ + " id=" + domainId);
+ }
+ } else {
+ if (logger.isDebugEnabled()) {
+ logger.debug("found repository domain for " + domainName
+ + " id=" + domainId);
+ }
+ }
+ }
+
+ /**
+ * createWorkspaces retrieves workspace ids for each domain specified in
+ * the tenant binding, if workspace does not exist, it creates one
+ * @param tenantBinding
+ * @param repositoryDomain
+ * @throws Exception
+ */
+ synchronized private void createWorkspaces(TenantBindingType tenantBinding,
+ RepositoryDomainType repositoryDomain) throws Exception {
+
+ RepositoryClient repositoryClient = getRepositoryClient(repositoryDomain);
+
+ //retrieve all workspace ids for a domain
+ //domain specific table of workspace name and id
+ Hashtable<String, String> workspaceIds =
+ repositoryClient.retrieveWorkspaceIds(repositoryDomain.getName());
+ //verify if workspace exists for each service from the tenant binding
for (ServiceBindingType serviceBinding : tenantBinding.getServiceBindings()) {
String serviceName = serviceBinding.getName();
- String repositoryClientName = serviceBinding.getRepositoryClient();
- if (repositoryClientName == null) {
+ String repositoryDomainName = serviceBinding.getRepositoryDomain();
+ if (repositoryDomainName == null) {
//no repository needed for this service...skip
if (logger.isInfoEnabled()) {
logger.info("The service " + serviceName
+ + " for tenant=" + tenantBinding.getName()
+ " does not seem to require a document repository.");
}
continue;
}
-
- if (repositoryClientName.isEmpty()) {
- String msg = "Invalid repositoryClient " + serviceName;
+ if (repositoryDomainName.isEmpty()) {
+ String msg = "Invalid repositoryDomain for " + serviceName
+ + " for tenant=" + tenantBinding.getName();
logger.error(msg);
continue;
}
- repositoryClientName = repositoryClientName.trim();
- RepositoryClient repositoryClient = getRepositoryClient(
- repositoryClientName);
- if (repositoryClient == null) {
- String msg = "Could not find repositoryClient " + repositoryClientName
- + " for service=" + serviceName;
- logger.error(msg);
+ repositoryDomainName = repositoryDomainName.trim();
+ if (!repositoryDomain.getName().equalsIgnoreCase(repositoryDomainName)) {
continue;
}
String workspaceId = null;
//workspace name is service name by convention
String workspace = serviceName.toLowerCase();
- if (clientType.equals(ClientType.JAVA)) {
+ //if workspaceid is in the binding, take it, else retrieve
+ workspaceId = serviceBinding.getRepositoryWorkspaceId();
+ if (workspaceId == null) {
workspaceId = workspaceIds.get(workspace);
if (workspaceId == null) {
if (logger.isWarnEnabled()) {
logger.warn("Failed to retrieve workspace ID for " + workspace
- + " from repository, trying to create a new workspace ...");
+ + " from repository, creating a new workspace ...");
}
workspaceId = repositoryClient.createWorkspace(
- tenantBinding.getRepositoryDomain(),
+ repositoryDomain.getName(),
serviceBinding.getName());
if (workspaceId == null) {
if (logger.isWarnEnabled()) {
logger.warn("Failed to create workspace in repository"
- + " for service=" + workspace);
+ + " for service=" + workspace
+ + " for tenant=" + tenantBinding.getName());
}
continue;
}
if (logger.isDebugEnabled()) {
logger.debug("Successfully created workspace in repository"
- + " id=" + workspaceId + " for service=" + workspace);
+ + " id=" + workspaceId + " for service=" + workspace
+ + " for tenant=" + tenantBinding.getName());
}
}
- } else {
- workspaceId = serviceBinding.getRepositoryWorkspaceId();
- if (workspaceId == null || "".equals(workspaceId)) {
- logger.error("Could not find workspace in repository for"
- + " service=" + workspace);
- //FIXME: should we throw an exception here?
- continue;
- }
}
- String tenantService =
- TenantBindingConfigReaderImpl.getTenantQualifiedServiceName(tenantBinding.getId(), serviceName);
- serviceWorkspaces.put(tenantService, workspaceId);
- if (logger.isInfoEnabled()) {
- logger.info("Created/retrieved repository workspace="
- + workspace + " id=" + workspaceId
- + " for service=" + serviceName);
+ if (workspaceId != null) {
+ String tenantService =
+ TenantBindingConfigReaderImpl.getTenantQualifiedServiceName(
+ tenantBinding.getId(), serviceName);
+ serviceWorkspaces.put(tenantService, workspaceId);
+ if (logger.isInfoEnabled()) {
+ logger.info("Created/retrieved repository workspace="
+ + workspace + " id=" + workspaceId
+ + " for service=" + serviceName
+ + " for tenant=" + tenantBinding.getName());
+ }
}
- }
- }
-
- /**
- * getWorkspaceId for a tenant's service
- * @param tenantId
- * @param serviceName
- * @return workspace id
- */
- public String getWorkspaceId(String tenantId, String serviceName) {
- String tenantService =
- TenantBindingConfigReaderImpl.getTenantQualifiedServiceName(tenantId, serviceName);
- return serviceWorkspaces.get(tenantService);
- }
-
-
- private RepositoryClient getRepositoryClient(String clientName) {
- return RepositoryClientFactory.getInstance().getClient(clientName);
+ }//rof for service binding
}
}
<!-- validator handler(s) to be used to validate the content (need to be in classpath) -->
<!-- validator handler is called for create (POST) and update (PUT) requests only -->
<xs:element name="validatorHandler" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
- <!-- name of the repository client (from service-config.xml) -->
- <xs:element name="repositoryClient" type="xs:string" minOccurs="0" maxOccurs="1"/>
+ <!-- name of the repository domain -->
+ <xs:element name="repositoryDomain" type="xs:string" minOccurs="0" maxOccurs="1"/>
<!-- repositoryWorkspaceId could be workspace id -->
<!-- used only for Nuxeo rest client -->
<xs:element name="repositoryWorkspaceId" type="xs:string" minOccurs="0" maxOccurs="1"/>
You may not use this file except in compliance with this License.
You may obtain a copy of the ECL 2.0 License at
-
+
https://source.collectionspace.org/collection-space/LICENSE.txt
Document : tenant-binding.xsd
Revision : $LastChangedRevision$
Created on : $LastChangedDate$
Description:
-
+
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
- xmlns="http://collectionspace.org/services/common/tenant"
- xmlns:types="http://collectionspace.org/services/common/types"
- xmlns:service="http://collectionspace.org/services/common/service"
- targetNamespace="http://collectionspace.org/services/common/tenant"
- version="0.1"
- elementFormDefault="qualified">
+ xmlns="http://collectionspace.org/services/common/tenant"
+ xmlns:types="http://collectionspace.org/services/common/types"
+ xmlns:service="http://collectionspace.org/services/common/service"
+ targetNamespace="http://collectionspace.org/services/common/tenant"
+ version="0.1"
+ elementFormDefault="qualified">
<xs:import namespace="http://collectionspace.org/services/common/types" schemaLocation="types.xsd" />
<xs:import namespace="http://collectionspace.org/services/common/service" schemaLocation="service.xsd" />
TenantBindingType describes bindings for each tenant in CollectionSpace
-->
<xs:complexType name="TenantBindingType">
+ <xs:annotation>
+ <xs:documentation>Tenant bindings</xs:documentation>
+ </xs:annotation>
<xs:sequence>
- <xs:element name="properties" type="types:PropertyType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="repositoryDomain" type="RepositoryDomainType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="properties" type="types:PropertyType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="serviceBindings" type="service:ServiceBindingType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<!-- tenant id, a UUID -->
<!-- display name as Museum of Moving Images -->
<xs:attribute name="displayName" type="xs:string" use="required"/>
<xs:attribute name="version" type="types:VersionType" use="required"/>
- <!-- repository domain -->
- <xs:attribute name="repositoryDomain" type="xs:string" use="optional" default="default-domain"/>
+
+ </xs:complexType>
+
+ <xs:complexType name="RepositoryDomainType">
+ <xs:annotation>
+ <xs:documentation>Repository domain configuartion</xs:documentation>
+ </xs:annotation>
+ <xs:sequence/>
+ <xs:attribute name="name" type="xs:string" use="required"/>
+ <xs:attribute name="repositoryClient" type="xs:string" use="optional" default="nuxeo-java"/>
</xs:complexType>
</xs:schema>
private String knownResourceId = null;
private String barneyAccountId = null; //active
private String georgeAccountId = null; //inactive
-
/** The logger. */
private final String CLASS_NAME = AuthenticationServiceTest.class.getName();
private final Logger logger = LoggerFactory.getLogger(CLASS_NAME);
-
+
/* (non-Javadoc)
* @see org.collectionspace.services.client.test.AbstractServiceTest#getServicePathComponent()
*/
@Test(dataProvider = "testName", dataProviderClass = AbstractServiceTestImpl.class)
public void createActiveAccount(String testName) throws Exception {
-
+
if (logger.isDebugEnabled()) {
logger.debug(testBanner(testName, CLASS_NAME));
}
// (e.g. CREATE, DELETE), its valid and expected status codes, and
// its associated HTTP method name (e.g. POST, DELETE).
setupCreate();
-
+
AccountClient accountClient = new AccountClient();
accountClient.setAuth(true, "test", true, "test", true);
// Submit the request to the service and store the response.
AccountsCommon account =
- createAccountInstance("barney", "barney08", "barney@dinoland.com", false);
+ createAccountInstance("barney", "barney08", "barney@dinoland.com",
+ accountClient.getTenantId(), false);
ClientResponse<Response> res = accountClient.create(account);
int statusCode = res.getStatus();
@Test(dataProvider = "testName", dataProviderClass = AbstractServiceTestImpl.class)
public void createInactiveAccount(String testName) throws Exception {
-
+
if (logger.isDebugEnabled()) {
logger.debug(testBanner(testName, CLASS_NAME));
}
// Perform setup.
setupCreate();
-
+
AccountClient accountClient = new AccountClient();
accountClient.setAuth(true, "test", true, "test", true);
// Submit the request to the service and store the response.
AccountsCommon account =
- createAccountInstance("george", "george08", "george@curiousland.com", false);
+ createAccountInstance("george", "george08", "george@curiousland.com",
+ accountClient.getTenantId(), false);
ClientResponse<Response> res = accountClient.create(account);
int statusCode = res.getStatus();
}
private AccountsCommon createAccountInstance(String screenName,
- String passwd, String email, boolean invalidTenant) {
+ String passwd, String email, String tenantId, boolean invalidTenant) {
AccountsCommon account = AccountFactory.createAccountInstance(screenName,
- screenName, passwd, email,
- true, true, invalidTenant, true, true);
+ screenName, passwd, email, tenantId,
+ true, invalidTenant, true, true);
List<AccountTenant> atl = account.getTenants();
// Submit the request to the service and store the response.
DimensionClient client = new DimensionClient();
- //default user test/test has delete permission
- client.setAuth(true, "test", true, "test", true);
+
ClientResponse<Response> res = client.delete(knownResourceId);
int statusCode = res.getStatus();
private String createAccount(String userName, String email) {
setupCreate();
- AccountClient accClient = new AccountClient();
+ AccountClient accountClient = new AccountClient();
AccountsCommon account = AccountFactory.createAccountInstance(
- userName, userName, userName, email,
- true, true, false, true, true);
- ClientResponse<Response> res = accClient.create(account);
+ userName, userName, userName, email, accountClient.getTenantId(),
+ true, false, true, true);
+ ClientResponse<Response> res = accountClient.create(account);
int statusCode = res.getStatus();
if (logger.isDebugEnabled()) {
logger.debug("createAccount: userName=" + userName
deleteAccount(av1.getAccountId());
}
}
+
+
+ private String getTenantId(AccountClient client) {
+ return client.getProperty(AccountClient.TENANT_PROPERTY);
+ }
}
+++ /dev/null
--- MySQL Administrator dump 1.4
---
--- ------------------------------------------------------
--- Server version 5.1.31-community
-
-
-/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
-/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
-/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
-/*!40101 SET NAMES utf8 */;
-
-/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
-/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
-/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
-
-
---
--- Create schema cspace
---
-
-CREATE DATABASE IF NOT EXISTS cspace;
-USE cspace;
-
---
--- Definition of table `roles`
---
-
-DROP TABLE IF EXISTS `roles`;
-CREATE TABLE `roles` (
- `rolename` varchar(128) NOT NULL,
- `rolegroup` varchar(128) DEFAULT NULL,
- PRIMARY KEY (`rolename`),
- KEY `rolename_roles` (`rolename`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
---
--- Dumping data for table `roles`
---
-
-/*!40000 ALTER TABLE `roles` DISABLE KEYS */;
-INSERT INTO `roles` (`rolename`,`rolegroup`) VALUES
- ('collections_manager','collections'),
- ('collections_registrar','collections');
-/*!40000 ALTER TABLE `roles` ENABLE KEYS */;
-
-
---
--- Definition of table `users`
---
-
-DROP TABLE IF EXISTS `users`;
-CREATE TABLE `users` (
- `username` varchar(128) NOT NULL,
- `passwd` varchar(128) NOT NULL,
- PRIMARY KEY (`username`),
- KEY `username_users` (`username`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
---
--- Dumping data for table `users`
---
-
-/*!40000 ALTER TABLE `users` DISABLE KEYS */;
-INSERT INTO `users` (`username`,`passwd`) VALUES
- ('test','n4bQgYhMfWWaL+qgxVrQFaO/TxsrC4Is0V1sFbDwCgg=');
-/*!40000 ALTER TABLE `users` ENABLE KEYS */;
-
-
---
--- Definition of table `users_roles`
---
-
-DROP TABLE IF EXISTS `users_roles`;
-CREATE TABLE `users_roles` (
- `username` varchar(128) NOT NULL,
- `rolename` varchar(128) NOT NULL,
- KEY `username_users_roles` (`username`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
---
--- Dumping data for table `users_roles`
---
-
-/*!40000 ALTER TABLE `users_roles` DISABLE KEYS */;
-INSERT INTO `users_roles` (`username`,`rolename`) VALUES
- ('test','collections_manager');
-/*!40000 ALTER TABLE `users_roles` ENABLE KEYS */;
-
-
-
-
-/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
-/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
-/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
-/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
-/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
-/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
-/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;