...
The attribute framework is used for attaching metadata to various objects in the registry. One example is here.
Table of Contents |
---|
Features
- Attributes have a definition (attributeDef), and a name (attributeName or aka attributeDefName). There
- There is a one-to-many relationship between attributeDef and attributeName.
- The The definition has all the configuration, and the name is assigned to the object
Gliffy Diagram name attributeDefToNameOneToMany pagePin 5
- Attributes can be assigned to groups, memberships (immediate or effective), members (i.e. subjects), folders, other attributes, and attribute assignments (one level deep)
Gliffy Diagram name attributeAssignTo pagePin 2
- Attribute assignments that are permissions have an optional "action" qualifier for permission type attributes. This is a free form string which is configured per attribute definition
Gliffy Diagram name attributePermissionAction pagePin 1
- Attributes could have free-form values, multi-valued, multi-assigned, limits as to where they can be applied, validation on values (TODO on validation), etc
Gliffy Diagram name attributeAssignAndValueTypes pagePin 1
- Attributes can have enabled/disabled dates.
...
Code Block |
---|
# comma separated names of attribute defs will not be audited or change log or point in time # same as ${edu.internet2.middleware.grouper.cfg.GrouperConfig.retrieveConfig().propertyValueStringRequired('grouper.attribute.rootStem')} grouper.attribute.namesOfAttributeDefsToIgnoreAuditsChangeLogPit.elConfig = $$grouper.attribute.rootStem$$:userData:grouperUserDataValueDef,$$grouper.attribute.rootStem$$:instrumentationData:instrumentationDataInstanceCountsDef,$$grouper.attribute.rootStem$$:instrumentationData:instrumentationDataInstanceDetailsDef,$$grouper.attribute.rootStem$$:instrumentationData:instrumentationDataCollectorDetailsDef # comma separated names of attribute def names will not be audited or change log or point in time grouper.attribute.namesOfAttributeDefNamesToIgnoreAuditsChangeLogPit.elConfig = $$grouper.attribute.rootStem$$:attestation:attestationCalculatedDaysLeft,$$grouper.attribute.rootStem$$:attestation:attestationLastEmailedDate,$$grouper.attribute.rootStem$$:loaderMetadata:grouperLoaderMetadataLastFullMillisSince1970,$$grouper.attribute.rootStem$$:loaderMetadata:grouperLoaderMetadataLastIncrementalMillisSince1970,$$grouper.attribute.rootStem$$:loaderMetadata:grouperLoaderMetadataLastSummary |
See Also
- Attribute Framework UI
- Attribute Based Access Control (ABAC)
- Provisioning Groups Using Attribute Framework
- Presentation that includes an example of the attribute framework
- Attribute Framework UI