#
# Create an OU to store all the Authentication Sessions. This is an optional OU to keep all Authentication Sessions in
# the same location. If a different location is needed to store sessions, alter the LDIF.
# SearchBase in the "pingfederate/server/default/data/config-store/org.sourceid.saml20.service.session.data.impl.SessionStorageManagerLdapImpl.xml"
# file should point to this OU. eg. <c:item name="SearchBase">OU=AuthenticationSessions,DC=example,DC=global</c:item>
#
# <Your DC Here> should be changed to the location of your full DC. eg. DC=example,DC=global

dn: ou=AuthenticationSessions,<Your DC Here>
changetype: add
objectclass: top
objectclass: organizationalUnit
ou: AuthenticationSessions

#
# Defines the actual objectClasses and attribute types in which Authentication Sessions will be stored.
#
# If any changes are made to the attribute names, the corresponding entry in
# "pingfederate/server/default/data/config-store/org.sourceid.saml20.service.session.data.impl.SessionStorageManagerLdapImpl.xml"
# must also be altered to reflect these changes. Once created, we recommend not to rename these attribute names.
#
# Note: PingDirectory 7.3 starts including attribute types pf-authn-session-group-expiry-time
# and pf-authn-session-group-last-activity-time. When integrating with PingDirectory 7.3
# (or a more recent version), remove them from the LDIF file before making schema changes.

dn: cn=schema
changetype: modify
add: attributeTypes
attributeTypes: ( 1.3.6.1.4.1.28867.9.2.40 
  NAME 'pf-authn-session-group-id' 
  DESC 'PingFederate Authentication Session Group ID' 
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.40
  SINGLE-VALUE
  USAGE userApplications
  X-MIN-VALUE-LENGTH '1' 
  X-MAX-VALUE-LENGTH '32' )
-
add: attributeTypes
attributeTypes: ( 1.3.6.1.4.1.28867.9.2.41 
  NAME 'pf-authn-session-group-hashed-session-id' 
  DESC 'PingFederate Authentication Session Group Hashed Session ID' 
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.40
  SINGLE-VALUE
  USAGE userApplications
  X-MIN-VALUE-LENGTH '1' 
  X-MAX-VALUE-LENGTH '64' )
-
add: attributeTypes
attributeTypes: ( 1.3.6.1.4.1.28867.9.2.42 
  NAME 'pf-authn-session-group-expiry-time' 
  DESC 'PingFederate Authentication Session Group Expiration Time' 
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.24 
  SINGLE-VALUE
  USAGE userApplications )
-
add: attributeTypes
attributeTypes: ( 1.3.6.1.4.1.28867.9.2.43 
  NAME 'pf-authn-session-group-last-activity-time' 
  DESC 'PingFederate Authentication Session Group Last Activity Time' 
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.24 
  SINGLE-VALUE
  USAGE userApplications )
-
add: attributeTypes
attributeTypes: ( 1.3.6.1.4.1.28867.9.2.44 
  NAME 'pf-authn-session-group-parent-id' 
  DESC 'PingFederate Authentication Session Group Parent ID' 
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.40
  SINGLE-VALUE
  USAGE userApplications
  X-MIN-VALUE-LENGTH '0' 
  X-MAX-VALUE-LENGTH '32' )
-
add: attributeTypes
attributeTypes: ( 1.3.6.1.4.1.28867.9.2.45 
  NAME 'pf-authn-session-group-metadata'
  DESC 'PingFederate Authentication Session Group Metadata' 
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 
  SINGLE-VALUE
  USAGE userApplications
  X-MIN-VALUE-LENGTH '0' 
  X-MAX-VALUE-LENGTH '4096' )
-
add: attributeTypes
attributeTypes: ( 1.3.6.1.4.1.28867.9.2.46 
  NAME 'pf-authn-session-group-user-ids' 
  DESC 'PingFederate Authentication Session Group User Ids' 
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.40
  USAGE userApplications
  X-MIN-VALUE-LENGTH '1'
  X-MAX-VALUE-LENGTH '256')
-
add: attributeTypes
attributeTypes: ( 1.3.6.1.4.1.28867.9.2.47 
  NAME 'pf-authn-session-attribute-hash'
  DESC 'PingFederate Authentication Session Hashed Attribute' 
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
  SINGLE-VALUE
  USAGE userApplications
  X-MIN-VALUE-LENGTH '1' 
  X-MAX-VALUE-LENGTH '64' )
-
add: attributeTypes
attributeTypes: ( 1.3.6.1.4.1.28867.9.2.48 
  NAME 'pf-authn-session-data' 
  DESC 'PingFederate Authentication Session Data' 
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 
  SINGLE-VALUE
  USAGE userApplications 
  X-MIN-VALUE-LENGTH '1' 
  X-MAX-VALUE-LENGTH '32768')
-
add: objectClasses
objectClasses: ( 1.3.6.1.4.1.28867.9.1.6 
  NAME 'pf-authn-session-groups' 
  DESC 'PingFederate Authentication Session Groups' 
  SUP top 
  STRUCTURAL 
  MUST
   pf-authn-session-group-id 
  MAY (  pf-authn-session-group-hashed-session-id 
   $  pf-authn-session-group-expiry-time 
   $  pf-authn-session-group-last-activity-time 
   $  pf-authn-session-group-parent-id 
   $  pf-authn-session-group-metadata 
   $  pf-authn-session-group-user-ids) )
-
add: objectClasses
objectClasses: ( 1.3.6.1.4.1.28867.9.1.7 
  NAME 'pf-authn-sessions' 
  DESC 'PingFederate Authentication Sessions' 
  STRUCTURAL 
  MUST pf-authn-session-attribute-hash
  MAY  pf-authn-session-data )
