Start with: Common SQL pattern
First six fields can show one at a time when the previous is filled in
- SQL external system ID (required)
- SQL pattern: drop down with options below (show after external system selected)
- entityTable
- init membership structure to notApplicable
- init start with entity table to true
- init start with entity table name to: from_grouper_entity
- init start with entity primary key column: entity_uuid
- init start with entity primary key value: entityUuid
- init start with entity other columns as: subject_id
- init start with entity link false
- entityTableWithAttributeTable
- init membership structure to notApplicable
- same as entity table init
- entity attribute table name init to from_grouper_entity_attr
- foreign key to entity table entity_uuid
- column name which is the attribute name: attribute_name
- column name which is the attribute value: attribute_value
- entityTableWithAttributeTableAndMemberships
- same as entity table init
- same as entitiesTableWithAttributesTable
- membership structure: entityAttributes
- membership attribute: memberOf
- init entityLink to true
- entityTableMembershipTable
- same as entityTable init
- same as membershipTable init
- init start with membership table entity column name: entity_uuid (not subject_id)
- init start with membership table entity column value: entityUuid (not subjectId)
- init entityLink to true
- groupTable
- init membership structure to notApplicable
- init start with group table to true
- init start with group table name to: from_grouper_group
- init start with group primary key column: group_id_index
- init start with group other columns as: groupIdIndex
- init start with group link false
- groupTableWithAttributeTable
- same as groupTable init
- group attribute table name init to from_grouper_group_attr
- foreign key to entity table entity_id_index
- column name which is the attribute name: attribute_name
- column name which is the attribute value: attribute_value
- groupTableWithAttributeTableAndMemberships
- same as groupTableWithAttributeTable init
- membership structure: groupAttributes
- membership attribute: hasMember
- init groupLink to true
- groupTableMembershipTable
- same as groupTable init
- same as membershipTable init
- init start with membership table group column name: group_id_index (not group_name)
- init start with membership table group column value: groupIdIndex (not groupName)
- init groupLink to true
- groupTableEntityTableMembershipTable
- same as groupTable init
- same as entityTable init
- same as membershipTable init
- membership table group column is: group_id_index
- membership table group value is: groupIdIndex
- membership table entity column is: entity_uuid
- membership table entity value is: entityUuid
- init groupLink to true
- init entityLink to true
- membershipTable
- membership structure: membershipObjects
- init start with membership table to true
- init start with membership table name to: from_grouper_mship
- init start with group column: group_name
- init start with group value: groupName
- init start with entity column: subject_id
- init start with entity value: subjectId
- init groupLink to false
- init entityLink to false
- other
- proceed with screen
- entityTable
- User attributes type: drop down with options, required (show after ldap pattern)
- Only uses built in core attributes e.g. subjectId, subjectIdentifier0-2, email, name, description or translations of those (value: core)
- Needs other subject source attributes (value: subjectSource)
- Needs a SQL or LDAP filter, but not other subject attributes. If LDAP this is a different LDAP than the LDAP provisioning to (value: entityResolver)
- Needs subject source source attributes and SQL or LDAP filter. If LDAP this is a different LDAP than the LDAP provisioning to (value: subjectSourceAndEntityResolver)
- Membership structure (default to membershipObjects): entityAttributes, groupAttributes, membershipObjects, notApplicable
- if (user attribute type is subjectSource or subjectSourceAndEntityResolver)
- list those attributes and validate against subject source (textfield, comma separated attributes, required)
- Ask if has group table (default false)
- If has group table, ask for group table name (required, validate on submit) (suggest: from_grouper_group)
- If has group table, ask for group primary key column (suggest group_id_index) (required, validate on submit)
- If has group table, ask for group primary key value (suggest groupIdIndex) (drop down required) (other, script, groupExtension, groupIdIndex, groupName, groupPrimaryKey, groupUuid)
- If has group table, ask for list of other group columns, suggest names: group_uuid, group_name, group_id_index, group_extension, group_display_name, group_display_extension, group_description
- Ask if need group link (optional, grouper will try to deduce this)
- If has group table, ask if has group attribute table (to store multi-valued attributes or memberships, not common)
- If has group attribute table, ask for group attribute table name (required, validate on submit)
- If has group attribute table, ask for column name which is foreign key to group table (suggest group_uuid) (required, validate on submit)
- If has group attribute table, ask for column name which is the attribute name (suggest attribute_name) (required, validate on submit)
- If has group attribute table, ask for column name which is the attribute value (suggest attribute_value) (required, validate on submit)
- If groupAttributes membership structure, ask for the membership attribute name (required)
- If groupAttributes membership structure, ask for membership value (drop down required) (entityPrimaryKey, other, script, subjectId, subjectIdentifier0, subjectIdentifier1, subjectIdentifier2)
- If has group attribute table, ask for other attribute names in attribute table (optional)
- Ask if has entity table (default false)
- If has entity table, ask for entity table name (required, validate on submit)
- If has entity table, ask for entity primary key column (suggest entity_uuid) (required, validate on submit)
- If has entity table, ask for entity primary key value (suggest entityUuid) (drop down required) (other, script, email, entity_uuid, entity_description, entity_name, subject_id, subject_identifier0, subject_identifier1, subject_identifier2)
- If has entity table, ask for list of other entity columns, suggest names: email, entity_uuid, entity_description, entity_name, subject_id, subject_identifier0, subject_identifier1, subject_identifier2
- Ask if need entity link (boolean optional grouper will try to deduce this)
- If has entity table, ask if has entity attribute table (to store multi-valued attributes or memberships, not common)
- If has entity attribute table, ask for entity attribute table name (required, validate on submit)
- If has entity attribute table, ask for column name which is foreign key to entity table (suggest entity_uuid) (required, validate on submit)
- If has entity attribute table, ask for column name which is the attribute name (suggest attribute_name) (required, validate on submit)
- If has entity attribute table, ask for column name which is the attribute value (suggest attribute_value) (required, validate on submit)
- If entityAttributes membership structure, ask for the membership attribute name (required)
- If entityAttributes membership structure, ask for membership value (drop down required) (other, script, groupExtension, groupIdIndex, groupName, groupPrimaryKey, groupUuid)
- If has entity attribute table, ask for other attribute names in attribute table (optional)
- Ask if has membership table (default false)
- Ask for membership table name: (suggest: from_grouper_mship)
- Ask for group column (required, validate on submit)
- Ask for group value (drop down required) (other, script, groupExtension, groupIdIndex, groupName, groupPrimaryKey, groupUuid)
- Ask for entity column (required, validate on submit)
- Ask for entity value (drop down required) (entityPrimaryKey, other, script, subjectId, subjectIdentifier0, subjectIdentifier1, subjectIdentifier2)
- Add disabled full sync daemon? boolean default to true
- Add disabled incremental sync daemon? boolean default to true