{
	"name": "Dev-dpos Additional Authorization Definition",
	"description": "",
	"policies": [
		{
			"name": "Account Is System Admin",
			"description": "Check the current user has the role systemAdmin",
			"rules": [
				"hasRole('systemAdmin')"
			]
		},
		{
			"name": "Account Is Administrator",
			"description": "Check the current user has the role Administrator",
			"rules": [
				"hasRole('broker') && hasRole('client-manager') && hasRole('broker-manager')"
			]
		},
		{
			"name": "Broker user can create Contract and Client document",
			"description": "Check the current user has permission to create a Contract",
			"target": "#resource instanceof T(com.mgmtp.a12.kernel.md.document.api.IDocument) && (#resource.getDocumentModelId() == 'DnoContract' || #resource.getDocumentModelId() == 'Client')",
			"rules": [
				"hasRole('broker') && hasRole('client-manager')"
			]
		},
		{
			"name": "Broker manager can create and update Broker document",
			"description": "Check user can create Broker document",
			"target": "#resource instanceof T(com.mgmtp.a12.kernel.md.document.api.IDocument) && #resource.getDocumentModelId() == 'Broker'",
			"rules": [
				"hasRole('broker-manager')"
			]
		},
		{
			"name": "Broker user can access Broker document",
			"description": "Broker user is allowed to access Broker document of the same access_filter_attribute",
			"target": "#resource instanceof T(com.mgmtp.a12.dataservices.document.DataServicesDocument) && !hasRole('broker-manager') && hasRole('broker') && hasRole('client-manager') && #resource.getModelName() == 'Broker'",
			"rules": [
				"@dposDocumentResolver.canLoadDocumentDependsOnField(#resource, 'visibility-of-client-and-broker', principal.additionalProperties['access_filter_attribute'])"
			]
		},
		{
			"name": "Broker user can access his her Company Client document and his her created Client document",
			"description": "Broker user is allowed to access Client document created by him/her self",
			"target": "#resource instanceof T(com.mgmtp.a12.dataservices.document.DataServicesDocument) && hasRole('broker') && hasRole('client-manager') && #resource.getModelName() == 'Client'",
			"rules": [
				"(principal.username == #resource.createdBy || @dposDocumentResolver.canLoadDocumentDependsOnField(#resource, 'visibility-of-client-and-broker', principal.additionalProperties['access_filter_attribute']))"
			]
		},
		{
			"name": "Broker users can access Contract documents including his her Company Client and Broker",
			"description": "Broker user is allowed to access Client_Contract document of the same access_filter_attribute",
			"target": "#resource instanceof T(com.mgmtp.a12.dataservices.document.DataServicesDocument) && #resource.getModelName() == 'DnoContract'",
			"rules": [
				"hasRole('broker') && hasRole('client-manager')",
				"@dposDocumentResolver.canLoadDocumentDependsOnField(#resource, 'visibility-of-client-and-broker', principal.additionalProperties['access_filter_attribute'])"
			]
		},
		{
			"name": "Broker user can start camunda process",
			"description": "Check the current broker user is allowed to start camunda process",
			"target": "!hasRole('systemAdmin') && !hasRole('broker-manager') && hasRole('client-manager') && hasRole('broker')",
			"rules": [
				"@dposDocumentResolver.canStartCamundaProcess(#payload)"
			]
		},
		{
			"name": "Contract on offer-created status",
			"description": "Check the contract status to allow users update certain fields",
			"target": "#resource instanceof T(com.mgmtp.a12.kernel.md.document.api.IDocument)",
			"rules": [
				"@dposDocumentResolver.getValueForAnnotatedField(#resource, 'contract-status') == 'offer-created'"
			]
		},
		{
			"name": "Contract on policy-created status",
			"description": "Check the contract status to allow users update certain fields",
			"target": "#resource instanceof T(com.mgmtp.a12.kernel.md.document.api.IDocument)",
			"rules": [
				"@dposDocumentResolver.getValueForAnnotatedField(#resource, 'contract-status') == 'policy-created'"
			]
		},
		{
			"name": "Contract is not on offer-created status",
			"description": "Check the contract status to allow users update certain fields",
			"target": "#resource instanceof T(com.mgmtp.a12.kernel.md.document.api.IDocument)",
			"rules": [
				"@dposDocumentResolver.getValueForAnnotatedField(#resource, 'contract-status') != 'offer-created'"
			]
		},
		{
			"name": "Is Contract Document",
			"description": "Check the contract status to allow users update certain fields",
			"target": "#resource instanceof T(com.mgmtp.a12.kernel.md.document.api.IDocument)",
			"rules": [
				"#resource.getDocumentModelId() == 'DnoContract' || #resource.getDocumentModelId() == 'DnoContract_CDM'"
			]
		},
		{
			"name": "Is Broker Document",
			"description": "",
			"target": "#resource instanceof T(com.mgmtp.a12.kernel.md.document.api.IDocument)",
			"rules": [
				"hasAccessRight('DOCUMENT_UPDATE')",
				"#resource.getDocumentModelId() == 'Broker'"
			]
		},
		{
			"name": "Is Client Document",
			"description": "",
			"target": "#resource instanceof T(com.mgmtp.a12.kernel.md.document.api.IDocument)",
			"rules": [
				"hasAccessRight('DOCUMENT_UPDATE')",
				"#resource.getDocumentModelId() == 'Client'"
			]
		}
	],
	"repositoryPolicies": [
		{
			"name": "BrokerCanSeeHisRelatedDocuments",
			"description": "Broker can see either his created clients or clients that the broker has the same access_filter_attribute",
			"dataPreload": [
				"#filter = @dposDocumentResolver.buildSolrQueryDependsOnFields(#resource, 'visibility-of-client-and-broker', principal.additionalProperties['access_filter_attribute'], 'created_by_KEY:(' + principal.username + ')')"
			],
			"target": "!hasRole('systemAdmin') && !hasRole('broker-manager') && hasRole('client-manager') && hasRole('broker') && (#resource == 'Broker' || #resource == 'DnoContract' || #resource == 'DnoContract_CDM' ||  #resource == 'Client')",
			"templates": [
				"#filter"
			]
		}
	],
	"permissions": [
		{
			"name": "General Document Access by Role",
			"description": "Check the current user has roles which has general access right to read and write documents.",
			"policy-refs": [
				"Account Is System Admin || Account Is Administrator || (Broker user can access Broker document && Broker user can access his her Company Client document and his her created Client document && Broker users can access Contract documents including his her Company Client and Broker)"
			],
			"scopes": [
				"Document Read"
			]
		},
		{
			"name": "Specific Document Read Access by Role",
			"description": "Check the current user has a role which has read access to a specific document.",
			"policy-refs": [
				"Account Is System Admin || Account Is Administrator || (Broker manager can create and update Broker document && Broker user can access his her Company Client document and his her created Client document && Broker users can access Contract documents including his her Company Client and Broker)"
			],
			"scopes": [
				"Document Update"
			]
		},
		{
			"name": "General Document Create by Role",
			"description": "Check the current user has roles which has general access right to read and write documents.",
			"policy-refs": [
				"Account Is System Admin || Account Is Administrator || (Broker manager can create and update Broker document && Broker user can create Contract and Client document)"
			],
			"scopes": [
				"Document Create"
			]
		},
		{
			"name": "Broker Related Document Read Access",
			"description": "",
			"repository-refs": [
				"BrokerCanSeeHisRelatedDocuments"
			],
			"scopes": [
				"Document List"
			]
		},
		{
			"name": "User can start camunda process",
			"description": "",
			"policy-refs": [
				"Account Is System Admin || Account Is Administrator || Broker user can start camunda process"
			],
			"scopes": [
				"Camunda Process"
			]
		}
	],
	"propertyPermissions": [
		{
			"name": "Property rights per: User can only update partially field on offer-created status",
			"description": "",
			"policy-refs": [
				"Is Contract Document",
				"Contract on offer-created status"
			],
			"rights-refs": [
				"Property rights def: User can only update partially field on offer-created status"
			]
		},
		{
			"name": "Property rights per: User can not update offer on policy-created status",
			"description": "",
			"policy-refs": [
				"Is Contract Document",
				"Contract on policy-created status"
			],
			"rights-refs": [
				"Property rights def: User can not update offer on policy-created status"
			]
		},
		{
			"name": "Property rights per: Users can access Contract Document",
			"description": "",
			"policy-refs": [
				"Is Contract Document",
				"Contract is not on offer-created status"
			],
			"rights-refs": [
				"Property rights def: Users can access Contract Document"
			]
		},
		{
			"name": "Property rights per: Users can access Broker Document",
			"description": "",
			"policy-refs":[
				"Is Broker Document",
				"Account Is System Admin || Account Is Administrator || Broker manager can create and update Broker document"
			],
			"rights-refs": [
				"Property rights def: Users can access Broker Document"
			]
		},
		{
			"name": "Property rights per: Users can access Client Document",
			"description": "",
			"policy-refs": [
				"Is Client Document",
				"Account Is System Admin || Account Is Administrator || Broker user can access his her Company Client document and his her created Client document"
			],
			"rights-refs": [
				"Property rights def: Users can access Client Document"
			]
		}
	],
	"propertyRights": [
		{
			"name": "Property rights def: User can only update partially field on offer-created status",
			"description": "",
			"rights": {
				"READ": [
					"DnoContract.GeneralData.ContractNumber",
					"DnoContract.GeneralData.OfferNumber",
					"DnoContract.GeneralData.OfferValidFrom",
					"DnoContract.GeneralData.OfferValidUntil",
					"DnoContract.GeneralData.CreatedBy",
					"DnoContract.GeneralData.ContractStatus",
					"DnoContract.GeneralData.OfferDataConfirmation",
					"DnoContract.GeneralData.ContractInceptionDate",
					"DnoContract.GeneralData.ContractExpiryDate",
					"DnoContract.GeneralData.UnderwritingYearNumber",
					"DnoContract.GeneralData.UnderwritingYear",
					"DnoContract.GeneralData.SuffixContractNumber",
					"DnoContract.GeneralData.UWInCharge.UWName",
					"DnoContract.GeneralData.UWInCharge.UWEmail",
					"DnoContract.GeneralData.OfferCreationDate",
					"DnoContract.GeneralData.ContractCreationDate",
					"DnoContract.GeneralData.BrokerNotes",
					"DnoContract.Preconditions.SanctionCubaIran",
					"DnoContract.Coverage[].Selected",
					"DnoContract.Coverage[].TariffLimit",
					"DnoContract.Coverage[].TariffPremium",
					"DnoContract.Coverage[].Test",
					"DnoContract.Questionnaire.SubsidariesUSACanada",
					"DnoContract.ExcelCalculation.ExcelInput.Amount",
					"DnoContract.ExcelCalculation.ExcelInput.Enumeration",
					"DnoContract.ExcelCalculation.ExcelInput.Boolean",
					"DnoContract.ExcelCalculation.ExcelInput.Date",
					"DnoContract.ExcelCalculation.ExcelInput.String",
					"DnoContract.ExcelCalculation.ExcelOutput.Amount",
					"DnoContract.ExcelCalculation.ExcelOutput.Enumeration",
					"DnoContract.ExcelCalculation.ExcelOutput.Boolean",
					"DnoContract.ExcelCalculation.ExcelOutput.Date",
					"DnoContract.ExcelCalculation.ExcelOutput.String",
					"DnoContract.premiumExtraction.flatPremiumInput1",
					"DnoContract.premiumExtraction.flatPremiumInput2",
					"DnoContract.premiumExtraction.premiumExtractionResult",
					"DnoContract.DocumentData.Documents[].Attachments.original_filename",
					"DnoContract.DocumentData.Documents[].Attachments.internal_filename",
					"DnoContract.DocumentData.Documents[].Attachments.content",
					"DnoContract.DocumentData.Documents[].Attachments.attachment_id",
					"DnoContract.DocumentData.Documents[].Attachments.size",
					"DnoContract.DocumentData.Documents[].Attachments.mime_type",
					"DnoContract.DocumentData.Documents[].Attachments.category",
					"DnoContract.DocumentData.Documents[].Attachments.description",
					"DnoContract.DocumentLanguage",
					"DnoContract.TestStuff.AmountWithDecimals",
					"DnoContract.TestStuff.Enumeration",
					"DnoContract.TestStuff.RepeatableGroup[].Enumeration",
					"DnoContract.TestStuff.ExtEField1",
					"DnoContract.TestStuff.ExtEField2",
					"DnoContract.Metadata.CreatedBy",
					"DnoContract.Metadata.CreatedAt",
					"DnoContract.Metadata.LastModifiedAt",
					"DnoContract.Metadata.LastModifiedBy",
					"DnoContract.ObjectPremium1.Name",
					"DnoContract.ObjectPremium1.Premium.Money",
					"DnoContract.ObjectPremium2.Name",
					"DnoContract.ObjectPremium2.Premium.Money"
				],
				"WRITE": [
					"DnoContract.DocumentData.Documents[].Attachments.original_filename",
					"DnoContract.DocumentData.Documents[].Attachments.internal_filename",
					"DnoContract.DocumentData.Documents[].Attachments.content",
					"DnoContract.DocumentData.Documents[].Attachments.attachment_id",
					"DnoContract.DocumentData.Documents[].Attachments.size",
					"DnoContract.DocumentData.Documents[].Attachments.mime_type",
					"DnoContract.DocumentData.Documents[].Attachments.category",
					"DnoContract.DocumentData.Documents[].Attachments.description",
					"DnoContract.GeneralData.ContractStatus",
					"DnoContract.ExcelCalculation.ExcelOutput.Amount",
					"DnoContract.Metadata.LastModifiedAt",
					"DnoContract.Metadata.LastModifiedBy",
					"DnoContract.GeneralData.UnderwritingYearNumber",
					"DnoContract.GeneralData.SuffixContractNumber",
					"DnoContract.GeneralData.ContractNumber",
					"DnoContract.GeneralData.OfferNumber",
					"DnoContract.GeneralData.OfferCreationDate",
					"DnoContract.GeneralData.ContractCreationDate"
				]
			}
		},
		{
			"name": "Property rights def: User can not update offer on policy-created status",
			"description": "",
			"rights": {
				"READ": [
					"DnoContract.GeneralData.ContractNumber",
					"DnoContract.GeneralData.OfferNumber",
					"DnoContract.GeneralData.OfferValidFrom",
					"DnoContract.GeneralData.OfferValidUntil",
					"DnoContract.GeneralData.CreatedBy",
					"DnoContract.GeneralData.ContractStatus",
					"DnoContract.GeneralData.OfferDataConfirmation",
					"DnoContract.GeneralData.ContractInceptionDate",
					"DnoContract.GeneralData.ContractExpiryDate",
					"DnoContract.GeneralData.UnderwritingYearNumber",
					"DnoContract.GeneralData.UnderwritingYear",
					"DnoContract.GeneralData.SuffixContractNumber",
					"DnoContract.GeneralData.UWInCharge.UWName",
					"DnoContract.GeneralData.UWInCharge.UWEmail",
					"DnoContract.GeneralData.OfferCreationDate",
					"DnoContract.GeneralData.ContractCreationDate",
					"DnoContract.GeneralData.BrokerNotes",
					"DnoContract.Preconditions.SanctionCubaIran",
					"DnoContract.Coverage[].Selected",
					"DnoContract.Coverage[].TariffLimit",
					"DnoContract.Coverage[].TariffPremium",
					"DnoContract.Coverage[].Test",
					"DnoContract.Questionnaire.SubsidariesUSACanada",
					"DnoContract.ExcelCalculation.ExcelInput.Amount",
					"DnoContract.ExcelCalculation.ExcelInput.Enumeration",
					"DnoContract.ExcelCalculation.ExcelInput.Boolean",
					"DnoContract.ExcelCalculation.ExcelInput.Date",
					"DnoContract.ExcelCalculation.ExcelInput.String",
					"DnoContract.ExcelCalculation.ExcelOutput.Amount",
					"DnoContract.ExcelCalculation.ExcelOutput.Enumeration",
					"DnoContract.ExcelCalculation.ExcelOutput.Boolean",
					"DnoContract.ExcelCalculation.ExcelOutput.Date",
					"DnoContract.ExcelCalculation.ExcelOutput.String",
					"DnoContract.premiumExtraction.flatPremiumInput1",
					"DnoContract.premiumExtraction.flatPremiumInput2",
					"DnoContract.premiumExtraction.premiumExtractionResult",
					"DnoContract.DocumentData.Documents[].Attachments.original_filename",
					"DnoContract.DocumentData.Documents[].Attachments.internal_filename",
					"DnoContract.DocumentData.Documents[].Attachments.content",
					"DnoContract.DocumentData.Documents[].Attachments.attachment_id",
					"DnoContract.DocumentData.Documents[].Attachments.size",
					"DnoContract.DocumentData.Documents[].Attachments.mime_type",
					"DnoContract.DocumentData.Documents[].Attachments.category",
					"DnoContract.DocumentData.Documents[].Attachments.description",
					"DnoContract.DocumentLanguage",
					"DnoContract.TestStuff.AmountWithDecimals",
					"DnoContract.TestStuff.Enumeration",
					"DnoContract.TestStuff.RepeatableGroup[].Enumeration",
					"DnoContract.TestStuff.ExtEField1",
					"DnoContract.TestStuff.ExtEField2",
					"DnoContract.Metadata.CreatedBy",
					"DnoContract.Metadata.CreatedAt",
					"DnoContract.Metadata.LastModifiedAt",
					"DnoContract.Metadata.LastModifiedBy",
					"DnoContract.ObjectPremium1.Name",
					"DnoContract.ObjectPremium1.Premium.Money",
					"DnoContract.ObjectPremium2.Name",
					"DnoContract.ObjectPremium2.Premium.Money"
				],
				"WRITE": ["User can not update"]
			}
		},
		{
			"name": "Property rights def: Users can access Contract Document",
			"description": "",
			"rights": {
				"READ": [
					"DnoContract.GeneralData.ContractNumber",
					"DnoContract.GeneralData.OfferNumber",
					"DnoContract.GeneralData.OfferValidFrom",
					"DnoContract.GeneralData.OfferValidUntil",
					"DnoContract.GeneralData.CreatedBy",
					"DnoContract.GeneralData.ContractStatus",
					"DnoContract.GeneralData.OfferDataConfirmation",
					"DnoContract.GeneralData.ContractInceptionDate",
					"DnoContract.GeneralData.ContractExpiryDate",
					"DnoContract.GeneralData.UnderwritingYearNumber",
					"DnoContract.GeneralData.UnderwritingYear",
					"DnoContract.GeneralData.SuffixContractNumber",
					"DnoContract.GeneralData.UWInCharge.UWName",
					"DnoContract.GeneralData.UWInCharge.UWEmail",
					"DnoContract.GeneralData.OfferCreationDate",
					"DnoContract.GeneralData.ContractCreationDate",
					"DnoContract.GeneralData.BrokerNotes",
					"DnoContract.Preconditions.SanctionCubaIran",
					"DnoContract.Coverage[].Selected",
					"DnoContract.Coverage[].TariffLimit",
					"DnoContract.Coverage[].TariffPremium",
					"DnoContract.Coverage[].Test",
					"DnoContract.Questionnaire.SubsidariesUSACanada",
					"DnoContract.ExcelCalculation.ExcelInput.Amount",
					"DnoContract.ExcelCalculation.ExcelInput.Enumeration",
					"DnoContract.ExcelCalculation.ExcelInput.Boolean",
					"DnoContract.ExcelCalculation.ExcelInput.Date",
					"DnoContract.ExcelCalculation.ExcelInput.String",
					"DnoContract.ExcelCalculation.ExcelOutput.Amount",
					"DnoContract.ExcelCalculation.ExcelOutput.Enumeration",
					"DnoContract.ExcelCalculation.ExcelOutput.Boolean",
					"DnoContract.ExcelCalculation.ExcelOutput.Date",
					"DnoContract.ExcelCalculation.ExcelOutput.String",
					"DnoContract.premiumExtraction.flatPremiumInput1",
					"DnoContract.premiumExtraction.flatPremiumInput2",
					"DnoContract.premiumExtraction.premiumExtractionResult",
					"DnoContract.DocumentData.Documents[].Attachments.original_filename",
					"DnoContract.DocumentData.Documents[].Attachments.internal_filename",
					"DnoContract.DocumentData.Documents[].Attachments.content",
					"DnoContract.DocumentData.Documents[].Attachments.attachment_id",
					"DnoContract.DocumentData.Documents[].Attachments.size",
					"DnoContract.DocumentData.Documents[].Attachments.mime_type",
					"DnoContract.DocumentData.Documents[].Attachments.category",
					"DnoContract.DocumentData.Documents[].Attachments.description",
					"DnoContract.DocumentLanguage",
					"DnoContract.TestStuff.AmountWithDecimals",
					"DnoContract.TestStuff.Enumeration",
					"DnoContract.TestStuff.RepeatableGroup[].Enumeration",
					"DnoContract.TestStuff.ExtEField1",
					"DnoContract.TestStuff.ExtEField2",
					"DnoContract.Metadata.CreatedBy",
					"DnoContract.Metadata.CreatedAt",
					"DnoContract.Metadata.LastModifiedAt",
					"DnoContract.Metadata.LastModifiedBy",
					"DnoContract.ObjectPremium1.Name",
					"DnoContract.ObjectPremium1.Premium.Money",
					"DnoContract.ObjectPremium2.Name",
					"DnoContract.ObjectPremium2.Premium.Money"
				],
				"WRITE": [
					"DnoContract.GeneralData.ContractNumber",
					"DnoContract.GeneralData.OfferNumber",
					"DnoContract.GeneralData.OfferValidFrom",
					"DnoContract.GeneralData.OfferValidUntil",
					"DnoContract.GeneralData.CreatedBy",
					"DnoContract.GeneralData.ContractStatus",
					"DnoContract.GeneralData.OfferDataConfirmation",
					"DnoContract.GeneralData.ContractInceptionDate",
					"DnoContract.GeneralData.ContractExpiryDate",
					"DnoContract.GeneralData.UnderwritingYearNumber",
					"DnoContract.GeneralData.UnderwritingYear",
					"DnoContract.GeneralData.SuffixContractNumber",
					"DnoContract.GeneralData.UWInCharge.UWName",
					"DnoContract.GeneralData.UWInCharge.UWEmail",
					"DnoContract.GeneralData.OfferCreationDate",
					"DnoContract.GeneralData.ContractCreationDate",
					"DnoContract.GeneralData.BrokerNotes",
					"DnoContract.Preconditions.SanctionCubaIran",
					"DnoContract.Coverage[].Selected",
					"DnoContract.Coverage[].TariffLimit",
					"DnoContract.Coverage[].TariffPremium",
					"DnoContract.Coverage[].Test",
					"DnoContract.Questionnaire.SubsidariesUSACanada",
					"DnoContract.ExcelCalculation.ExcelInput.Amount",
					"DnoContract.ExcelCalculation.ExcelInput.Enumeration",
					"DnoContract.ExcelCalculation.ExcelInput.Boolean",
					"DnoContract.ExcelCalculation.ExcelInput.Date",
					"DnoContract.ExcelCalculation.ExcelInput.String",
					"DnoContract.ExcelCalculation.ExcelOutput.Amount",
					"DnoContract.ExcelCalculation.ExcelOutput.Enumeration",
					"DnoContract.ExcelCalculation.ExcelOutput.Boolean",
					"DnoContract.ExcelCalculation.ExcelOutput.Date",
					"DnoContract.ExcelCalculation.ExcelOutput.String",
					"DnoContract.premiumExtraction.flatPremiumInput1",
					"DnoContract.premiumExtraction.flatPremiumInput2",
					"DnoContract.premiumExtraction.premiumExtractionResult",
					"DnoContract.DocumentData.Documents[].Attachments.original_filename",
					"DnoContract.DocumentData.Documents[].Attachments.internal_filename",
					"DnoContract.DocumentData.Documents[].Attachments.content",
					"DnoContract.DocumentData.Documents[].Attachments.attachment_id",
					"DnoContract.DocumentData.Documents[].Attachments.size",
					"DnoContract.DocumentData.Documents[].Attachments.mime_type",
					"DnoContract.DocumentData.Documents[].Attachments.category",
					"DnoContract.DocumentData.Documents[].Attachments.description",
					"DnoContract.DocumentLanguage",
					"DnoContract.TestStuff.AmountWithDecimals",
					"DnoContract.TestStuff.Enumeration",
					"DnoContract.TestStuff.RepeatableGroup[].Enumeration",
					"DnoContract.TestStuff.ExtEField1",
					"DnoContract.TestStuff.ExtEField2",
					"DnoContract.Metadata.CreatedBy",
					"DnoContract.Metadata.CreatedAt",
					"DnoContract.Metadata.LastModifiedAt",
					"DnoContract.Metadata.LastModifiedBy",
					"DnoContract.ObjectPremium1.Name",
					"DnoContract.ObjectPremium1.Premium.Money",
					"DnoContract.ObjectPremium2.Name",
					"DnoContract.ObjectPremium2.Premium.Money"
				]
			}
		},
		{
			"name": "Property rights def: Users can access Broker Document",
			"description": "",
			"rights": {
				"READ": [
					"Broker.BrokerData.Name",
					"Broker.BrokerData.BrokerNr",
					"Broker.BrokerData.ActiveFlag",
					"Broker.BrokerData.Address.Street",
					"Broker.BrokerData.Address.City",
					"Broker.BrokerData.Address.ZipCode",
					"Broker.BrokerData.Address.Country",
					"Broker.BrokerData.Address.Telephone",
					"Broker.BrokerData.AccessFilterAttribute",
					"Broker.MetaData.CreatedBy",
					"Broker.MetaData.CreatedAt",
					"Broker.MetaData.LastModifiedAt",
					"Broker.MetaData.LastModifiedBy"
				],
				"WRITE": [
					"Broker.BrokerData.Name",
					"Broker.BrokerData.BrokerNr",
					"Broker.BrokerData.ActiveFlag",
					"Broker.BrokerData.Address.Street",
					"Broker.BrokerData.Address.City",
					"Broker.BrokerData.Address.ZipCode",
					"Broker.BrokerData.Address.Country",
					"Broker.BrokerData.Address.Telephone",
					"Broker.BrokerData.AccessFilterAttribute",
					"Broker.MetaData.CreatedBy",
					"Broker.MetaData.CreatedAt",
					"Broker.MetaData.LastModifiedAt",
					"Broker.MetaData.LastModifiedBy"
				]
			}
		},
		{
			"name": "Property rights def: Users can access Client Document",
			"description": "",
			"rights": {
				"READ": [
					"Client.ClientData.Name",
					"Client.ClientData.NaturalPerson.Salutation",
					"Client.ClientData.NaturalPerson.Title",
					"Client.ClientData.LegalPerson.LegalForm",
					"Client.ClientData.Address.Street",
					"Client.ClientData.Address.ZipCode",
					"Client.ClientData.Address.City",
					"Client.ClientData.Address.Country",
					"Client.ClientData.Address.EmailAddress",
					"Client.ClientData.PartnerType",
					"Client.ClientData.AccessFilterAttribute",
					"Client.MetaData.CreatedBy",
					"Client.MetaData.CreatedAt",
					"Client.MetaData.LastModifiedAt",
					"Client.MetaData.LastModifiedBy",
					"Client.DocumentData.Documents[].Attachments.original_filename",
					"Client.DocumentData.Documents[].Attachments.internal_filename",
					"Client.DocumentData.Documents[].Attachments.content",
					"Client.DocumentData.Documents[].Attachments.attachment_id",
					"Client.DocumentData.Documents[].Attachments.size",
					"Client.DocumentData.Documents[].Attachments.mime_type",
					"Client.DocumentData.Documents[].Attachments.category",
					"Client.DocumentData.Documents[].Attachments.description",
					"Client.DocumentLanguage"
				],
				"WRITE": [
					"Client.ClientData.Name",
					"Client.ClientData.NaturalPerson.Salutation",
					"Client.ClientData.NaturalPerson.Title",
					"Client.ClientData.LegalPerson.LegalForm",
					"Client.ClientData.Address.Street",
					"Client.ClientData.Address.ZipCode",
					"Client.ClientData.Address.City",
					"Client.ClientData.Address.Country",
					"Client.ClientData.Address.EmailAddress",
					"Client.ClientData.PartnerType",
					"Client.ClientData.AccessFilterAttribute",
					"Client.MetaData.CreatedBy",
					"Client.MetaData.CreatedAt",
					"Client.MetaData.LastModifiedAt",
					"Client.MetaData.LastModifiedBy",
					"Client.DocumentData.Documents[].Attachments.original_filename",
					"Client.DocumentData.Documents[].Attachments.internal_filename",
					"Client.DocumentData.Documents[].Attachments.content",
					"Client.DocumentData.Documents[].Attachments.attachment_id",
					"Client.DocumentData.Documents[].Attachments.size",
					"Client.DocumentData.Documents[].Attachments.mime_type",
					"Client.DocumentData.Documents[].Attachments.category",
					"Client.DocumentData.Documents[].Attachments.description",
					"Client.DocumentLanguage"
				]
			}
		}
	]
}
