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 start with entity table to true
- init start with entity table name to: from_grouper_entity
- init start with entity primary key column: entity_id_index
- init start with entity other columns as: subject_id
- init start with entity link false
- entityTableWithAttributeTable
- same as entity table init
- attribute table name init to from_grouper_entity_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
- entityTableWithAttributeTableAndMemberships
- same as entity table init
- same as entitiesTableWithAttributesTable
- membership structure: entityAttributes
- membership attribute: member
- entityTableMembershipTable
- same as entityTable init
- 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
- groupTable
- groupTableWithAttributeTable
- groupTableWithAttributeTableAndMemberships
- groupTableMembershipTable
- groupTableEntityTableMembershipTable
- membershipTable
- init start with membership table to true
- init start with membership table name to: from_grouper_mship
- 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)
- If has group table, ask for group primary key column (suggest group_id_index) (required, validate on submit)
- 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_id_index) (required, validate on submit)
- If has entity table, ask for list of other entity columns, suggest names: email, entity_uuid, entity_name, entity_description, 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 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