Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Grouper -> v5.13.5; read imported configs from files rather than hard…
…coded gsh
credman committed Oct 30, 2024
1 parent 51c0fb5 commit b80dfff
Showing 8 changed files with 424 additions and 452 deletions.
2 changes: 1 addition & 1 deletion base/Dockerfile
@@ -3,7 +3,7 @@ FROM i2incommon/shib-idp:4.3.3_20240715_rocky8_multiarch AS idp
#FROM i2incommon/grouper:4.10.2 as grouper4

# Grouper version for the entire GTE
FROM i2incommon/grouper:5.13.0
FROM i2incommon/grouper:5.13.5

# Disable docker HEALTHCHECK inherited from tier/shib-sp
HEALTHCHECK NONE
51 changes: 0 additions & 51 deletions base/container_files/grouper/conf/grouper.properties

This file was deleted.

456 changes: 56 additions & 400 deletions ex101/ex101.1.1/container_files/grouper/bootstrap.gsh

Large diffs are not rendered by default.

@@ -0,0 +1,199 @@
provisioner.eduPersonAffiliation.class = edu.internet2.middleware.grouper.app.ldapProvisioning.LdapSync
provisioner.eduPersonAffiliation.customizeGroupCrud = true
provisioner.eduPersonAffiliation.deleteGroups = false
provisioner.eduPersonAffiliation.entityAttributeValueCache0entityAttribute = ldap_dn
provisioner.eduPersonAffiliation.entityAttributeValueCache0has = true
provisioner.eduPersonAffiliation.entityAttributeValueCache0source = target
provisioner.eduPersonAffiliation.entityAttributeValueCache0type = entityAttribute
provisioner.eduPersonAffiliation.entityAttributeValueCacheHas = true
provisioner.eduPersonAffiliation.entityMatchingAttribute0name = uid
provisioner.eduPersonAffiliation.entityMatchingAttributeCount = 1
provisioner.eduPersonAffiliation.entityMembershipAttributeName = eduPersonAffiliation
provisioner.eduPersonAffiliation.entityMembershipAttributeValue = groupAttributeValueCache0
provisioner.eduPersonAffiliation.groupAttributeValueCache0groupAttribute = affiliation
provisioner.eduPersonAffiliation.groupAttributeValueCache0has = true
provisioner.eduPersonAffiliation.groupAttributeValueCache0source = grouper
provisioner.eduPersonAffiliation.groupAttributeValueCache0type = groupAttribute
provisioner.eduPersonAffiliation.groupAttributeValueCacheHas = true
provisioner.eduPersonAffiliation.hasTargetEntityLink = true
provisioner.eduPersonAffiliation.insertGroups = false
provisioner.eduPersonAffiliation.ldapExternalSystemConfigId = demo
provisioner.eduPersonAffiliation.numberOfEntityAttributes = 4
provisioner.eduPersonAffiliation.numberOfGroupAttributes = 1
provisioner.eduPersonAffiliation.operateOnGrouperEntities = true
provisioner.eduPersonAffiliation.operateOnGrouperGroups = true
provisioner.eduPersonAffiliation.operateOnGrouperMemberships = true
provisioner.eduPersonAffiliation.provisioningType = entityAttributes
provisioner.eduPersonAffiliation.selectAllEntities = true
provisioner.eduPersonAffiliation.selectGroups = false
provisioner.eduPersonAffiliation.startWith = this is start with read only
provisioner.eduPersonAffiliation.subjectSourcesToProvision = eduLDAP
provisioner.eduPersonAffiliation.targetEntityAttribute.0.name = ldap_dn
provisioner.eduPersonAffiliation.targetEntityAttribute.1.multiValued = true
provisioner.eduPersonAffiliation.targetEntityAttribute.1.name = eduPersonAffiliation
provisioner.eduPersonAffiliation.targetEntityAttribute.1.showAdvancedAttribute = true
provisioner.eduPersonAffiliation.targetEntityAttribute.1.showAttributeValueSettings = true
provisioner.eduPersonAffiliation.targetEntityAttribute.2.name = uid
provisioner.eduPersonAffiliation.targetEntityAttribute.2.translateExpressionType = grouperProvisioningEntityField
provisioner.eduPersonAffiliation.targetEntityAttribute.2.translateFromGrouperProvisioningEntityField = subjectIdentifier0
provisioner.eduPersonAffiliation.targetEntityAttribute.3.multiValued = true
provisioner.eduPersonAffiliation.targetEntityAttribute.3.name = objectClass
provisioner.eduPersonAffiliation.targetEntityAttribute.3.showAdvancedAttribute = true
provisioner.eduPersonAffiliation.targetEntityAttribute.3.showAttributeValueSettings = true
provisioner.eduPersonAffiliation.targetEntityAttribute.3.translateExpressionType = staticValues
provisioner.eduPersonAffiliation.targetEntityAttribute.3.translateFromStaticValues = eduPerson
provisioner.eduPersonAffiliation.targetGroupAttribute.0.name = affiliation
provisioner.eduPersonAffiliation.targetGroupAttribute.0.translateExpressionType = grouperProvisioningGroupField
provisioner.eduPersonAffiliation.targetGroupAttribute.0.translateFromGrouperProvisioningGroupField = extension
provisioner.eduPersonAffiliation.updateGroups = false
provisioner.eduPersonAffiliation.userSearchBaseDn = ou=people,dc=internet2,dc=edu
changeLog.consumer.provisioner_incremental_eduPersonAffiliation.class = edu.internet2.middleware.grouper.changeLog.esb.consumer.EsbConsumer
changeLog.consumer.provisioner_incremental_eduPersonAffiliation.provisionerConfigId = eduPersonAffiliation
changeLog.consumer.provisioner_incremental_eduPersonAffiliation.publisher.class = edu.internet2.middleware.grouper.app.provisioning.ProvisioningConsumer
changeLog.consumer.provisioner_incremental_eduPersonAffiliation.publisher.debug = false
changeLog.consumer.provisioner_incremental_eduPersonAffiliation.quartzCron = 0 * * * * ?
otherJob.provisioner_full_eduPersonAffiliation.class = edu.internet2.middleware.grouper.app.provisioning.GrouperProvisioningFullSyncJob
otherJob.provisioner_full_eduPersonAffiliation.provisionerConfigId = eduPersonAffiliation
otherJob.provisioner_full_eduPersonAffiliation.quartzCron = 0 8 4 * * ?

provisioner.eduPersonEntitlement.class = edu.internet2.middleware.grouper.app.ldapProvisioning.LdapSync
provisioner.eduPersonEntitlement.configureMetadata = true
provisioner.eduPersonEntitlement.customizeGroupCrud = true
provisioner.eduPersonEntitlement.deleteGroups = false
provisioner.eduPersonEntitlement.entityAttributeValueCache0entityAttribute = ldap_dn
provisioner.eduPersonEntitlement.entityAttributeValueCache0has = true
provisioner.eduPersonEntitlement.entityAttributeValueCache0source = target
provisioner.eduPersonEntitlement.entityAttributeValueCache0type = entityAttribute
provisioner.eduPersonEntitlement.entityAttributeValueCacheHas = true
provisioner.eduPersonEntitlement.entityMatchingAttribute0name = uid
provisioner.eduPersonEntitlement.entityMatchingAttributeCount = 1
provisioner.eduPersonEntitlement.entityMembershipAttributeName = eduPersonEntitlement
provisioner.eduPersonEntitlement.entityMembershipAttributeValue = groupAttributeValueCache0
provisioner.eduPersonEntitlement.groupAttributeValueCache0groupAttribute = entitlement_string
provisioner.eduPersonEntitlement.groupAttributeValueCache0has = true
provisioner.eduPersonEntitlement.groupAttributeValueCache0source = grouper
provisioner.eduPersonEntitlement.groupAttributeValueCache0type = groupAttribute
provisioner.eduPersonEntitlement.groupAttributeValueCacheHas = true
provisioner.eduPersonEntitlement.hasTargetEntityLink = true
provisioner.eduPersonEntitlement.insertGroups = false
provisioner.eduPersonEntitlement.ldapExternalSystemConfigId = demo
provisioner.eduPersonEntitlement.metadata.0.formElementType = text
provisioner.eduPersonEntitlement.metadata.0.name = md_entitlementValue
provisioner.eduPersonEntitlement.metadata.0.showForGroup = true
provisioner.eduPersonEntitlement.metadata.0.valueType = string
provisioner.eduPersonEntitlement.metadata.0.canChange = true
provisioner.eduPersonEntitlement.metadata.0.canUpdate = true
provisioner.eduPersonEntitlement.numberOfEntityAttributes = 4
provisioner.eduPersonEntitlement.numberOfGroupAttributes = 1
provisioner.eduPersonEntitlement.numberOfMetadata = 1
provisioner.eduPersonEntitlement.operateOnGrouperEntities = true
provisioner.eduPersonEntitlement.operateOnGrouperGroups = true
provisioner.eduPersonEntitlement.operateOnGrouperMemberships = true
provisioner.eduPersonEntitlement.provisioningType = entityAttributes
provisioner.eduPersonEntitlement.selectAllEntities = true
provisioner.eduPersonEntitlement.selectGroups = false
provisioner.eduPersonEntitlement.startWith = this is start with read only
provisioner.eduPersonEntitlement.subjectSourcesToProvision = eduLDAP
provisioner.eduPersonEntitlement.targetEntityAttribute.0.name = ldap_dn
provisioner.eduPersonEntitlement.targetEntityAttribute.1.name = eduPersonEntitlement
provisioner.eduPersonEntitlement.targetEntityAttribute.2.name = uid
provisioner.eduPersonEntitlement.targetEntityAttribute.2.translateExpressionType = grouperProvisioningEntityField
provisioner.eduPersonEntitlement.targetEntityAttribute.2.translateFromGrouperProvisioningEntityField = subjectIdentifier0
provisioner.eduPersonEntitlement.targetEntityAttribute.3.multiValued = true
provisioner.eduPersonEntitlement.targetEntityAttribute.3.name = objectClass
provisioner.eduPersonEntitlement.targetEntityAttribute.3.showAdvancedAttribute = true
provisioner.eduPersonEntitlement.targetEntityAttribute.3.showAttributeValueSettings = true
provisioner.eduPersonEntitlement.targetEntityAttribute.3.translateExpressionType = staticValues
provisioner.eduPersonEntitlement.targetEntityAttribute.3.translateFromStaticValues = eduPerson
provisioner.eduPersonEntitlement.targetGroupAttribute.0.name = entitlement_string
provisioner.eduPersonEntitlement.targetGroupAttribute.0.translateExpression = ${grouperUtil.defaultIfBlank(grouperProvisioningGroup.retrieveAttributeValueString('md_entitlementValue') , grouperProvisioningGroup.name )}
provisioner.eduPersonEntitlement.targetGroupAttribute.0.translateExpressionType = translationScript
provisioner.eduPersonEntitlement.updateGroups = false
provisioner.eduPersonEntitlement.userSearchBaseDn = ou=people,dc=internet2,dc=edu

changeLog.consumer.provisioner_incremental_eduPersonEntitlement.class = edu.internet2.middleware.grouper.changeLog.esb.consumer.EsbConsumer
changeLog.consumer.provisioner_incremental_eduPersonEntitlement.provisionerConfigId = eduPersonEntitlement
changeLog.consumer.provisioner_incremental_eduPersonEntitlement.publisher.class = edu.internet2.middleware.grouper.app.provisioning.ProvisioningConsumer
changeLog.consumer.provisioner_incremental_eduPersonEntitlement.publisher.debug = false
changeLog.consumer.provisioner_incremental_eduPersonEntitlement.quartzCron = 0 * * * * ?
otherJob.provisioner_full_eduPersonEntitlement.class = edu.internet2.middleware.grouper.app.provisioning.GrouperProvisioningFullSyncJob
otherJob.provisioner_full_eduPersonEntitlement.provisionerConfigId = eduPersonEntitlement
otherJob.provisioner_full_eduPersonEntitlement.quartzCron = 0 16 4 * * ?

provisioner.groupOfNames.class = edu.internet2.middleware.grouper.app.ldapProvisioning.LdapSync
provisioner.groupOfNames.entityAttributeValueCache0entityAttribute = ldap_dn
provisioner.groupOfNames.entityAttributeValueCache0has = true
provisioner.groupOfNames.entityAttributeValueCache0source = target
provisioner.groupOfNames.entityAttributeValueCache0type = entityAttribute
provisioner.groupOfNames.entityAttributeValueCacheHas = true
provisioner.groupOfNames.entityMatchingAttribute0name = uid
provisioner.groupOfNames.entityMatchingAttributeCount = 1
provisioner.groupOfNames.groupAttributeValueCache0groupAttribute = ldap_dn
provisioner.groupOfNames.groupAttributeValueCache0has = true
provisioner.groupOfNames.groupAttributeValueCache0source = target
provisioner.groupOfNames.groupAttributeValueCache0type = groupAttribute
provisioner.groupOfNames.groupAttributeValueCacheHas = true
provisioner.groupOfNames.groupDnType = flat
provisioner.groupOfNames.groupMatchingAttribute0name = cn
provisioner.groupOfNames.groupMatchingAttributeCount = 1
provisioner.groupOfNames.groupMembershipAttributeName = member
provisioner.groupOfNames.groupMembershipAttributeValue = entityAttributeValueCache0
provisioner.groupOfNames.groupRdnAttribute = cn
provisioner.groupOfNames.groupSearchBaseDn = ou=groups,dc=internet2,dc=edu
provisioner.groupOfNames.hasTargetEntityLink = true
provisioner.groupOfNames.hasTargetGroupLink = true
provisioner.groupOfNames.ldapExternalSystemConfigId = demo
provisioner.groupOfNames.numberOfEntityAttributes = 3
provisioner.groupOfNames.numberOfGroupAttributes = 5
provisioner.groupOfNames.operateOnGrouperEntities = true
provisioner.groupOfNames.operateOnGrouperGroups = true
provisioner.groupOfNames.operateOnGrouperMemberships = true
provisioner.groupOfNames.provisioningType = groupAttributes
provisioner.groupOfNames.selectAllEntities = false
provisioner.groupOfNames.startWith = this is start with read only
provisioner.groupOfNames.subjectSourcesToProvision = eduLDAP
provisioner.groupOfNames.targetEntityAttribute.0.name = ldap_dn
provisioner.groupOfNames.targetEntityAttribute.1.name = uid
provisioner.groupOfNames.targetEntityAttribute.1.translateExpressionType = grouperProvisioningEntityField
provisioner.groupOfNames.targetEntityAttribute.1.translateFromGrouperProvisioningEntityField = subjectIdentifier0
provisioner.groupOfNames.targetEntityAttribute.2.multiValued = true
provisioner.groupOfNames.targetEntityAttribute.2.name = objectClass
provisioner.groupOfNames.targetEntityAttribute.2.showAdvancedAttribute = true
provisioner.groupOfNames.targetEntityAttribute.2.showAttributeValueSettings = true
provisioner.groupOfNames.targetEntityAttribute.2.translateExpressionType = staticValues
provisioner.groupOfNames.targetEntityAttribute.2.translateFromStaticValues = eduPerson
provisioner.groupOfNames.targetGroupAttribute.0.name = ldap_dn
provisioner.groupOfNames.targetGroupAttribute.1.name = cn
provisioner.groupOfNames.targetGroupAttribute.1.translateExpressionType = grouperProvisioningGroupField
provisioner.groupOfNames.targetGroupAttribute.1.translateFromGrouperProvisioningGroupField = name
provisioner.groupOfNames.targetGroupAttribute.2.defaultValue = <emptyString>
provisioner.groupOfNames.targetGroupAttribute.2.multiValued = true
provisioner.groupOfNames.targetGroupAttribute.2.name = member
provisioner.groupOfNames.targetGroupAttribute.2.showAdvancedAttribute = true
provisioner.groupOfNames.targetGroupAttribute.2.showAttributeValueSettings = true
provisioner.groupOfNames.targetGroupAttribute.3.multiValued = true
provisioner.groupOfNames.targetGroupAttribute.3.name = objectClass
provisioner.groupOfNames.targetGroupAttribute.3.showAdvancedAttribute = true
provisioner.groupOfNames.targetGroupAttribute.3.showAttributeValueSettings = true
provisioner.groupOfNames.targetGroupAttribute.3.translateExpressionType = staticValues
provisioner.groupOfNames.targetGroupAttribute.3.translateFromStaticValues = top,groupOfNames
provisioner.groupOfNames.targetGroupAttribute.4.name = description
provisioner.groupOfNames.targetGroupAttribute.4.translateExpressionType = grouperProvisioningGroupField
provisioner.groupOfNames.targetGroupAttribute.4.translateFromGrouperProvisioningGroupField = description
provisioner.groupOfNames.userSearchBaseDn = ou=people,dc=internet2,dc=edu
changeLog.consumer.provisioner_incremental_groupOfNames.class = edu.internet2.middleware.grouper.changeLog.esb.consumer.EsbConsumer
changeLog.consumer.provisioner_incremental_groupOfNames.provisionerConfigId = groupOfNames
changeLog.consumer.provisioner_incremental_groupOfNames.publisher.class = edu.internet2.middleware.grouper.app.provisioning.ProvisioningConsumer
changeLog.consumer.provisioner_incremental_groupOfNames.publisher.debug = false
changeLog.consumer.provisioner_incremental_groupOfNames.quartzCron = 0 * * * * ?
otherJob.provisioner_full_groupOfNames.class = edu.internet2.middleware.grouper.app.provisioning.GrouperProvisioningFullSyncJob
otherJob.provisioner_full_groupOfNames.provisionerConfigId = groupOfNames
otherJob.provisioner_full_groupOfNames.quartzCron = 0 24 4 * * ?


otherJob.dataProviderHR.class = edu.internet2.middleware.grouper.dataField.GrouperDataProviderFullSyncJob
otherJob.dataProviderHR.dataProviderConfigId = hr_data
otherJob.dataProviderHR.quartzCron = 0 0 5 * * ?
otherJob.dataProviderHR_incremental.class = edu.internet2.middleware.grouper.dataField.GrouperDataProviderIncrementalSyncJob
otherJob.dataProviderHR_incremental.dataProviderConfigId = hr_data
otherJob.dataProviderHR_incremental.quartzCron = 35 * * * * ?
@@ -0,0 +1,165 @@
grouperIncludeExclude.use = true
grouperIncludeExclude.requireGroups.use = true
reporting.file.system.path = /tmp

grouper.ui.url = https://localhost:8443/grouper/

mail.smtp.server = localhost
mail.smtp.port = 1025
mail.smtp.ssl = false
mail.smtp.starttls.enable = false
mail.smtp.from.address = grouper@internet2.edu.invalid
mail.smtp.externalSystemTestToType = emailAddress
mail.smtp.externalSystemTestToAddress = grouper@internet2.edu.invalid
mail.smtp.externalSystemTestSubject = Test of Grouper mail
mail.smtp.externalSystemTestBody = This is a test of grouper mail

grouper.lockoutGroup.name.0 = ref:iam:global_deny
grouper.requireGroup.name.0 = ref:role:all_facstaff
grouper.membership.customComposite.uiKey.0 = customCompositeAllFacStaff
grouper.membership.customComposite.compositeType.0 = intersection
grouper.membership.customComposite.groupName.0 = ref:role:all_facstaff
grouper.membership.customComposite.uiKey.1 = customCompositeMinusFacStaff
grouper.membership.customComposite.compositeType.1 = complement
grouper.membership.customComposite.groupName.1 = ref:role:all_facstaff

grouperPrivacyRealm.hr_employees.privacyRealmName = hr_employees
grouperPrivacyRealm.hr_employees.privacyRealmPublic = true
grouperPrivacyRealm.sis_courses.privacyRealmName = sis_courses
grouperPrivacyRealm.sis_courses.privacyRealmPublic = true
grouperPrivacyRealm.sis_programs.privacyRealmName = sis_programs
grouperPrivacyRealm.sis_programs.privacyRealmPublic = true
grouperDataField.hr_dept_abbrev.descriptionHtml = HR Department Code
grouperDataField.hr_dept_abbrev.fieldAliases = dept_code
grouperDataField.hr_dept_abbrev.fieldDataAssignableTo = individuals
grouperDataField.hr_dept_abbrev.fieldDataStorePit = false
grouperDataField.hr_dept_abbrev.fieldDataStructure = rowColumn
grouperDataField.hr_dept_abbrev.fieldDataType = string
grouperDataField.hr_dept_abbrev.fieldDataUse = informational
grouperDataField.hr_dept_abbrev.fieldMultiValued = true
grouperDataField.hr_dept_abbrev.fieldPrivacyRealm = hr_employees
grouperDataField.hr_dept_id.descriptionHtml = HR 5-digit Department ID
grouperDataField.hr_dept_id.fieldAliases = dept_id
grouperDataField.hr_dept_id.fieldDataAssignableTo = individuals
grouperDataField.hr_dept_id.fieldDataStorePit = false
grouperDataField.hr_dept_id.fieldDataStructure = rowColumn
grouperDataField.hr_dept_id.fieldDataType = string
grouperDataField.hr_dept_id.fieldDataUse = informational
grouperDataField.hr_dept_id.fieldMultiValued = true
grouperDataField.hr_dept_id.fieldPrivacyRealm = hr_employees
grouperDataField.hr_dept_name.descriptionHtml = HR Department Name
grouperDataField.hr_dept_name.fieldAliases = dept_name
grouperDataField.hr_dept_name.fieldDataAssignableTo = individuals
grouperDataField.hr_dept_name.fieldDataStorePit = false
grouperDataField.hr_dept_name.fieldDataStructure = rowColumn
grouperDataField.hr_dept_name.fieldDataType = string
grouperDataField.hr_dept_name.fieldDataUse = informational
grouperDataField.hr_dept_name.fieldMultiValued = true
grouperDataField.hr_dept_name.fieldPrivacyRealm = hr_employees
grouperDataField.hr_org_abbrev.descriptionHtml = Umbrella Org Short Code
grouperDataField.hr_org_abbrev.fieldAliases = org_code
grouperDataField.hr_org_abbrev.fieldDataAssignableTo = individuals
grouperDataField.hr_org_abbrev.fieldDataStorePit = false
grouperDataField.hr_org_abbrev.fieldDataStructure = rowColumn
grouperDataField.hr_org_abbrev.fieldDataType = string
grouperDataField.hr_org_abbrev.fieldDataUse = informational
grouperDataField.hr_org_abbrev.fieldMultiValued = true
grouperDataField.hr_org_abbrev.fieldPrivacyRealm = hr_employees
grouperDataField.hr_org_name.descriptionHtml = Umbrella Org Name
grouperDataField.hr_org_name.fieldAliases = org_name
grouperDataField.hr_org_name.fieldDataAssignableTo = individuals
grouperDataField.hr_org_name.fieldDataStorePit = false
grouperDataField.hr_org_name.fieldDataStructure = rowColumn
grouperDataField.hr_org_name.fieldDataType = string
grouperDataField.hr_org_name.fieldDataUse = informational
grouperDataField.hr_org_name.fieldMultiValued = true
grouperDataField.hr_org_name.fieldPrivacyRealm = hr_employees
grouperDataField.hr_parent_dept_abbrev.descriptionHtml = HR Parent Dept Code
grouperDataField.hr_parent_dept_abbrev.fieldAliases = parent_dept_code
grouperDataField.hr_parent_dept_abbrev.fieldDataAssignableTo = individuals
grouperDataField.hr_parent_dept_abbrev.fieldDataStorePit = false
grouperDataField.hr_parent_dept_abbrev.fieldDataStructure = rowColumn
grouperDataField.hr_parent_dept_abbrev.fieldDataType = string
grouperDataField.hr_parent_dept_abbrev.fieldDataUse = informational
grouperDataField.hr_parent_dept_abbrev.fieldMultiValued = true
grouperDataField.hr_parent_dept_abbrev.fieldPrivacyRealm = hr_employees
grouperDataField.hr_parent_dept_id.descriptionHtml = HR 5-digit Parent Dept Id
grouperDataField.hr_parent_dept_id.fieldAliases = parent_dept_id
grouperDataField.hr_parent_dept_id.fieldDataAssignableTo = individuals
grouperDataField.hr_parent_dept_id.fieldDataStorePit = false
grouperDataField.hr_parent_dept_id.fieldDataStructure = rowColumn
grouperDataField.hr_parent_dept_id.fieldDataType = string
grouperDataField.hr_parent_dept_id.fieldDataUse = informational
grouperDataField.hr_parent_dept_id.fieldMultiValued = true
grouperDataField.hr_parent_dept_id.fieldPrivacyRealm = hr_employees
grouperDataField.hr_position_id.descriptionHtml = The Position ID
grouperDataField.hr_position_id.fieldAliases = position_id
grouperDataField.hr_position_id.fieldDataAssignableTo = individuals
grouperDataField.hr_position_id.fieldDataStorePit = false
grouperDataField.hr_position_id.fieldDataStructure = rowColumn
grouperDataField.hr_position_id.fieldDataType = string
grouperDataField.hr_position_id.fieldDataUse = informational
grouperDataField.hr_position_id.fieldMultiValued = true
grouperDataField.hr_position_id.fieldPrivacyRealm = hr_employees
grouperDataField.hr_role.descriptionHtml = HR Role (staff, faculty, etc))
grouperDataField.hr_role.fieldAliases = role
grouperDataField.hr_role.fieldDataAssignableTo = individuals
grouperDataField.hr_role.fieldDataStorePit = false
grouperDataField.hr_role.fieldDataStructure = rowColumn
grouperDataField.hr_role.fieldDataType = string
grouperDataField.hr_role.fieldDataUse = informational
grouperDataField.hr_role.fieldMultiValued = true
grouperDataField.hr_role.fieldPrivacyRealm = hr_employees
grouperDataProvider.hr_data.name = hr_data
grouperDataProvider.sis_data.name = sis_data
grouperDataProviderQuery.hr_person_positions.providerConfigId = hr_data
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.0.providerDataFieldAttribute = position_id
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.0.providerDataFieldConfigId = hr_position_id
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.0.providerDataFieldMappingType = attribute
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.1.providerDataFieldAttribute = role
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.1.providerDataFieldConfigId = hr_role
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.1.providerDataFieldMappingType = attribute
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.2.providerDataFieldAttribute = dept_id
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.2.providerDataFieldConfigId = hr_dept_id
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.2.providerDataFieldMappingType = attribute
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.3.providerDataFieldAttribute = dept_name
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.3.providerDataFieldConfigId = hr_dept_name
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.3.providerDataFieldMappingType = attribute
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.4.providerDataFieldAttribute = parent_dept_id
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.4.providerDataFieldConfigId = hr_parent_dept_id
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.4.providerDataFieldMappingType = attribute
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.5.providerDataFieldAttribute = parent_dept_abbrev
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.5.providerDataFieldConfigId = hr_parent_dept_abbrev
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.5.providerDataFieldMappingType = attribute
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.6.providerDataFieldAttribute = org_abbrev
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.6.providerDataFieldConfigId = hr_org_abbrev
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.6.providerDataFieldMappingType = attribute
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.7.providerDataFieldAttribute = org_name
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.7.providerDataFieldConfigId = hr_org_name
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.7.providerDataFieldMappingType = attribute
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.8.providerDataFieldAttribute = dept_abbrev
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.8.providerDataFieldConfigId = hr_dept_abbrev
grouperDataProviderQuery.hr_person_positions.providerQueryDataField.8.providerDataFieldMappingType = attribute
grouperDataProviderQuery.hr_person_positions.providerQueryDataStructure = row
grouperDataProviderQuery.hr_person_positions.providerQueryNumberOfDataFields = 9
grouperDataProviderQuery.hr_person_positions.providerQueryRowConfigId = hr_positions
grouperDataProviderQuery.hr_person_positions.providerQuerySqlConfigId = hr
grouperDataProviderQuery.hr_person_positions.providerQuerySqlQuery = select J.person_id, P.position_id, P.role, D.dept_id, D.abbrev as dept_abbrev, D.name as dept_name, PD.dept_id as parent_dept_id, PD.abbrev as parent_dept_abbrev, Org.abbrev as org_abbrev, OrgDept.name as org_name from hr_jobs J join hr_positions P on J.position_id = P.position_id join hr_depts D on P.dept_id = D.dept_id left join hr_depts PD on D.parent_dept_id = PD.dept_id left join hr_orgs Org on D.dept_id between Org.min_dept_id and Org.max_dept_id left join hr_depts OrgDept on Org.dept_id = OrgDept.dept_id
grouperDataProviderQuery.hr_person_positions.providerQuerySubjectIdAttribute = person_id
grouperDataProviderQuery.hr_person_positions.providerQuerySubjectIdType = subjectId
grouperDataProviderQuery.hr_person_positions.providerQuerySubjectSourceId = eduLDAP
grouperDataProviderQuery.hr_person_positions.providerQueryType = sql
grouperDataRow.hr_positions.descriptionHtml = HR job assignments
grouperDataRow.hr_positions.rowAliases = hr_positions
grouperDataRow.hr_positions.rowDataField.0.colDataFieldConfigId = hr_position_id
grouperDataRow.hr_positions.rowDataField.0.rowKeyField = true
grouperDataRow.hr_positions.rowDataField.1.colDataFieldConfigId = hr_role
grouperDataRow.hr_positions.rowDataField.2.colDataFieldConfigId = hr_dept_id
grouperDataRow.hr_positions.rowDataField.3.colDataFieldConfigId = hr_dept_name
grouperDataRow.hr_positions.rowDataField.4.colDataFieldConfigId = hr_parent_dept_id
grouperDataRow.hr_positions.rowDataField.5.colDataFieldConfigId = hr_parent_dept_abbrev
grouperDataRow.hr_positions.rowDataField.6.colDataFieldConfigId = hr_dept_abbrev
grouperDataRow.hr_positions.rowDataField.7.colDataFieldConfigId = hr_org_abbrev
grouperDataRow.hr_positions.rowDataField.8.colDataFieldConfigId = hr_org_name
grouperDataRow.hr_positions.rowNumberOfDataFields = 9
grouperDataRow.hr_positions.rowPrivacyRealm = hr_employees
@@ -2,3 +2,6 @@
customCompositeAllFacStaff = Entities who are current faculty or staff
customCompositeMinusFacStaff = Entities who are not faculty or staff
customCompositeMinusActive = Entities who are not active at the institution

md_entitlementValue_eduPersonEntitlement_label = Entitlement String
md_entitlementValue_eduPersonEntitlement_description = Static string value to use as the entitlement. Will use the group name if not set

0 comments on commit b80dfff

Please sign in to comment.