# MidPoint LDAP Schema
# 
# Copyright (c) 2015 Evolveum
#

objectIdentifier Evolveum 1.3.6.1.4.1.45689

objectIdentifier Ldap Evolveum:1
objectIdentifier Products Ldap:1
objectIdentifier MidPoint Products:1
objectIdentifier MidPointObjectClass MidPoint:1
objectIdentifier MidPointAttributeType MidPoint:2

#----------------------------------------------------------------------
# Attributes
#----------------------------------------------------------------------

#
# All attribute values conform exatly to LDAP schema definition unless
# specified otherwise. For example, all Strings with directory string
# syntax may have national characters (any valid unicode codepoint), may
# contain spaces, etc. - unless that is explicitly constrained by
# comments in this schema definition.
#
# Case sensitivity is determined by EQUALITY matching rule (unless 
# explicitly specified otherwise).
#

# midPointAccountStatus
#
# Description:
#	Activation status of the account. Active accounts behave normally.
#       Inactive accounts still do exist, but any attempts for 
#       authentication/authorization should fail. Access using the inactive
#       accounts much be denied even if they have valid credentials.
#       If this attribute is not present then a default value of "enabled"
#       is assumed (for compatibility).
#
# Format: String enumeration. Valid values:
#	  	"enabled": account is active
#		"disabled": account is inactive
#

attributetype ( MidPointAttributeType:1
    NAME 'midPointAccountStatus'
    DESC 'Activation status of the account'
    SUP name
    SINGLE-VALUE )


#----------------------------------------------------------------------
# Object Classes
#----------------------------------------------------------------------

#
# midPointPerson
#
# Descripton:
#      Auxiliary object class to add to person-like objects to make them 
#      practical represenations of accounts. This is designed for use in
#      Evolveum IAM solutios. It adds features that OpenLDAP normally
#      does not have (such as account activation).
#
# Naming Attribute: not defined (auxiliary object class)
#
# Important Attributes:
#	midPointAccountStatus: Activation status of the account.
#

objectClass ( MidPointObjectClass:1
    NAME 'midPointPerson'
    DESC 'Auxiliary object class to add to person-like objects to make them practical represenations of accounts'
    AUXILIARY
    MAY ( midPointAccountStatus ) )


#----------------------------------------------------------------------
# End of MidPoint schema 
#----------------------------------------------------------------------

