blob: d4d03217321adeb22acf054b03be9e49378562e0 [file] [log] [blame]
######################################################################
#
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
#
### Fortress Schema version 2.0.0-RC2
### This schema is required for all Apache Fortress Core deployments
### IANA PRIVATE ENTERPRISE NUMBER: 1.3.6.1.4.1.18060.17
### 1. Fortress Attributes: 1.3.6.1.4.1.18060.17.1.*
### 2. Fortress Object Classes: 1.3.6.1.4.1.18060.17.2.*
### 3. Fortress AUX Object Classes: 1.3.6.1.4.1.18060.17.3.*
######################################################################
# Use this as basis for OID's to follow:
objectidentifier ftBase 1.3.6.1.4.1.18060.17
# Attributes:
objectidentifier ftAtId ftBase:1
# Object Classes:
objectidentifier ftObId ftBase:2
# Aux Object Classes:
objectidentifier ftAxId ftBase:3
######################################################################
## 1. OpenLDAP Fortress attribute definitions
######################################################################
# A1: Permission Name, type STRING, SINGLE VALUE
attributetype ( ftAtId:1
NAME 'ftPermName'
DESC 'Fortress Permission Name'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A2: Permission Operation Name, type STRING, SINGLE VALUE
attributetype ( ftAtId:2
NAME 'ftOpNm'
DESC 'Fortress Permission Operation Name'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A3: Permission Object Name, type STRING, SINGLE VALUE
attributetype ( ftAtId:3
NAME 'ftObjNm'
DESC 'Fortress Permission Object Name'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A4: Permission Object ID, type STRING, SINGLE VALUE
attributetype ( ftAtId:4
NAME 'ftObjId'
DESC 'Fortress Permission Object ID'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A5: Role Name, type STRING, SINGLE VALUE
attributetype ( ftAtId:5
NAME 'ftRoleName'
DESC 'Fortress Role Name'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A6: TimeOut, type INTEGER, SINGLE VALUE
attributetype ( ftAtId:6
NAME 'ftTimeOut'
DESC 'Fortress TimeOut'
EQUALITY integerMatch
ORDERING integerOrderingMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
# A7: Group Names, type STRING, MULTI VALUE
attributetype ( ftAtId:7
NAME 'ftGroups'
DESC 'Fortress Group Names'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
# A8: Role Names, type STRING, MULTI VALUE
attributetype ( ftAtId:8
NAME 'ftRoles'
DESC 'Fortress Role Names'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
# A9: User IDs, type STRING, MULTI VALUE
attributetype ( ftAtId:9
NAME 'ftUsers'
DESC 'Fortress User IDs'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
# A10: Properties, type STRING, MULTI VALUE
attributetype ( ftAtId:10
NAME 'ftProps'
DESC 'Fortress Properties'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
# A11: Type Name, type STRING, SINGLE VALUE
attributetype ( ftAtId:11
NAME 'ftType'
DESC 'Fortress Type Name'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A12: Unique ID, type STRING, SINGLE VALUE
attributetype ( ftAtId:12
NAME 'ftId'
DESC 'Fortress Entity Unique ID'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A13: User Temporal Constraint, type STRING, SINGLE VALUE
attributetype ( ftAtId:13
NAME 'ftCstr'
DESC 'Fortress User Temporal Constraint'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A14: User Role Assignments, type STRING, MULTI VALUE
attributetype ( ftAtId:14
NAME 'ftRA'
DESC 'Fortress User Role Assignments'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
# A15: User Role Constraints, type STRING, MULTI VALUE
attributetype ( ftAtId:15
NAME 'ftRC'
DESC 'Fortress User Role Constraints'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
# A16: Separation of Duties Set Name, type STRING, SINGLE VALUE
attributetype ( ftAtId:16
NAME 'ftSetName'
DESC 'Fortress Separation of Duties Set Name'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A17: Separation of Duties Set Cardinality, type INTEGER, SINGLE VALUE
attributetype ( ftAtId:17
NAME 'ftSetCardinality'
DESC 'Fortress Separation of Duties Set Cardinality'
EQUALITY integerMatch
ORDERING integerOrderingMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
# A18: Child to Parent Relationships, type STRING, MULTI VALUE
attributetype ( ftAtId:18
NAME 'ftRels'
DESC 'Fortress Child to Parent Relationships'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
# A19: User Organizational Unit Pool, type STRING, MULTI VALUE
attributetype ( ftAtId:19
NAME 'ftOSU'
DESC 'Fortress User Organizational Unit Pool'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
# A20: Permission Organizational Unit Pool, type STRING, MULTI VALUE
attributetype ( ftAtId:20
NAME 'ftOSP'
DESC 'Fortress Permission Organizational Unit Pool'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
# A21: Admin Role Constraints, type STRING, MULTI VALUE
attributetype ( ftAtId:21
NAME 'ftARC'
DESC 'Fortress Admin Role Constraints'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
# A22: Admin Role Assignments, type STRING, MULTI VALUE
attributetype ( ftAtId:22
NAME 'ftARA'
DESC 'Fortress Admin Role Assignments'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
# A23: Role Hierarchy Range, type STRING
attributetype ( ftAtId:23
NAME 'ftRange'
DESC 'Fortress Role Hierarchy Range'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A24: Audit Modifier Internal UserID, type STRING, SINGLE VALUE
attributetype ( ftAtId:24
NAME 'ftModifier'
DESC 'Fortress Audit Modifier Internal UserID'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A25: Audit Modifier Operation Code, type STRING, SINGLE VALUE
attributetype ( ftAtId:25
NAME 'ftModCode'
DESC 'Fortress Audit Modifier Operation Code'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A26: Audit Modifier Unique ID, type STRING, SINGLE VALUE
attributetype ( ftAtId:26
NAME 'ftModId'
DESC 'Fortress Audit Modifier Unique ID'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A27: System User Flag, type BOOLEAN
attributetype ( ftAtId:27
NAME 'ftSystem'
DESC 'Fortress System User'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE )
# A28: Parent Nodes, type STRING, MULTI VALUE
attributetype ( ftAtId:28
NAME 'ftParents'
DESC 'Fortress Parent Nodes'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
# A29: Protocol, type STRING, MULTI VALUE
attributetype ( ftAtId:29
NAME 'configProtocol'
DESC 'LDAP Group protocol attribute'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
# A30: Config params, type STRING, MULTI VALUE
attributetype ( ftAtId:30
NAME 'configParameter'
DESC 'LDAP Group config properties'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
# A31: User Role Constraints, type STRING, MULTI VALUE
attributetype ( ftAtId:31
NAME 'ftPA'
DESC 'Fortress Permission Attribute Constraints'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
# A32: User Role Constraints, type STRING, MULTI VALUE
attributetype ( ftAtId:32
NAME 'ftPASet'
DESC 'Fortress Permission Attribute Set'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
# A33: User Role Constraints, type STRING, SINGLE VALUE
attributetype ( ftAtId:33
NAME 'ftPADefaultOperator'
DESC 'Fortress Permission Attribute Set Default Operator'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A34: User Role Constraints, type STRING, SINGLE VALUE
attributetype ( ftAtId:34
NAME 'ftPASetType'
DESC 'Fortress Permission Attribute Set Type'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A35: Permission Attribute Data Type, type STRING, SINGLE VALUE
attributetype ( ftAtId:35
NAME 'ftPADataType'
DESC 'Fortress Permission Attribute Data Type'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A36: Permission Attribute Default Value, type STRING, SINGLE VALUE
attributetype ( ftAtId:36
NAME 'ftPADefaultValue'
DESC 'Fortress Permission Attribute Set Default Value'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A37: Permission Attribute Default Strategy, type STRING, SINGLE VALUE
attributetype ( ftAtId:37
NAME 'ftPADefaultStrategy'
DESC 'Fortress Permission Attribute Default Strategy'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
# A38: Permission Attribute Valid Values, type STRING, MULTI VALUE
attributetype ( ftAtId:38
NAME 'ftPAValidVals'
DESC 'Fortress Permission Attribute Valid Values'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
######################################################################
## 2. OpenLDAP Fortress Structural object class definitions
######################################################################
## OC1: Fortress Roles Structural Object Class
objectclass ( ftObId:1
NAME 'ftRls'
DESC 'Fortress Role Structural Object Class'
SUP organizationalrole
STRUCTURAL
MUST (
ftId $
ftRoleName
)
MAY (
description $
ftCstr $
ftParents
)
)
## OC2: Fortress Permission Structural Object Class
objectclass ( ftObId:2
NAME 'ftObject'
DESC 'Fortress Permission Object Class'
SUP organizationalunit
STRUCTURAL
MUST (
ftId $
ftObjNm
)
MAY (
ftType
)
)
## OC3: Fortress Operation Structural Object Class
objectclass ( ftObId:3
NAME 'ftOperation'
DESC 'Fortress Permission Operation Structural Object Class'
SUP organizationalrole
STRUCTURAL
MUST (
ftId $
ftPermName $
ftObjNm $
ftOpNm
)
MAY (
ftObjId $
ftRoles $
ftUsers $
ftType $
ftPASet
)
)
## OC4: Fortress Static Separation of Duties Structural Object Class
objectclass ( ftObId:4
NAME 'ftSSDSet'
DESC 'Fortress Role Static Separation of Duty Set Structural Object Class'
SUP organizationalrole
STRUCTURAL
MUST (
ftId $
ftSetName $
ftSetCardinality
)
MAY (
ftRoles $
description
)
)
## OC5: Fortress Dynamic Separation of Duties Structural Object Class
objectclass ( ftObId:5
NAME 'ftDSDSet'
DESC 'Fortress Role Dynamic Separation of Duty Set Structural Object Class'
SUP organizationalrole
STRUCTURAL
MUST (
ftId $
ftSetName $
ftSetCardinality
)
MAY (
ftRoles $
description
)
)
## OC6: Fortress Organizational Structural Object Class
objectclass ( ftObId:6
NAME 'ftOrgUnit'
DESC 'Fortress OrgUnit Structural Object Class'
SUP organizationalunit
STRUCTURAL
MUST (
ftId
)
MAY (
ftParents
)
)
## OC7: Fortress Hierarchies Structural Object Class
objectclass ( ftObId:7
NAME 'ftHier'
DESC 'Fortress Hierarchy Structural Object Class'
SUP organizationalrole
STRUCTURAL
MUST (
cn
)
MAY (
ftRels $
description
)
)
## OC8: LDAP Configuration Group Structural Object Class
objectClass ( ftObId:8
NAME 'configGroup'
DESC 'LDAP Configuration Group'
SUP groupOfNames
MUST (
configProtocol $
ftType
)
MAY (
configParameter $
ftProps
)
)
## OC9: Fortress Permission Attribute Set Structural Object Class
objectclass ( ftObId:9
NAME 'ftAttributeSet'
DESC 'Fortress Attribute Set Structural Object Class'
SUP organizationalunit
STRUCTURAL
MUST (
ftId $
ftPASet $
cn
)
MAY (
ftPA $
ftPASetType $
description
)
)
## OC10: Fortress Permission Attribute Structural Object Class
objectclass ( ftObId:10
NAME 'ftAttribute'
DESC 'Fortress Attribute Structural Object Class'
SUP organizationalrole
STRUCTURAL
MUST (
ftId $
ftPASet $
ftPA $
cn
)
MAY (
ftPADataType $
ftPADefaultValue $
ftPADefaultStrategy $
ftPADefaultOperator $
ftPAValidVals $
description
)
)
######################################################################
## 3. OpenLDAP Fortress Auxiliary object class definitions
######################################################################
## AC1: Fortress User Attributes Auxiliary Object Class
objectclass ( ftAxId:1
NAME 'ftUserAttrs'
DESC 'Fortress User Attribute AUX Object Class'
AUXILIARY
MUST (
ftId
)
MAY (
ftRC $
ftRA $
ftARC $
ftARA $
ftCstr $
ftSystem
)
)
## AC2: Fortress Properties Auxiliary Object Class
objectclass ( ftAxId:2
NAME 'ftProperties'
DESC 'Fortress Properties AUX Object Class'
AUXILIARY
MAY (
ftProps
)
)
## AC3: Fortress Organizational Pools Auxiliary Object Class
objectclass ( ftAxId:3
NAME 'ftPools'
DESC 'Fortress Pools AUX Object Class'
AUXILIARY
MAY (
ftOSU $
ftOSP $
ftRange
)
)
## AC4: Fortress Audit Modification Auxiliary Object Class
objectclass ( ftAxId:4
NAME 'ftMods'
DESC 'Fortress Modifiers AUX Object Class'
AUXILIARY
MAY (
ftModifier $
ftModCode $
ftModId
)
)