mirror of https://github.com/asterisk/asterisk
(closes issue #5768) Reported by: mguesdon Patches: res_config_ldap-v0.7.tar.gz uploaded by mguesdon (license 121) res_ldap.conf.sample uploaded by suretec (license 70) asterisk-v3.1.4.ldif uploaded by suretec (license 70) asterisk-v3.1.4.schema uploaded by suretec (license 70) Tested by: oej, mguesdon, suretec, cthorner git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@99696 65c4cc65-6c06-0410-ace0-fbb531ad65f31.6.0
parent
e956900bc5
commit
cfa0ec1f97
@ -0,0 +1,141 @@
|
||||
;
|
||||
; Configuration file for res_config_ldap
|
||||
;
|
||||
|
||||
; Sample Asterisk config file for res_config_ldap
|
||||
; in extconfig.conf you can use it like this:
|
||||
; sipusers = ldap,"dc=myDomain,dc=myDomainExt",sip
|
||||
; sippeers = ldap,"dc=myDomain,dc=myDomainExt",sip
|
||||
; extensions = ldap,"dc=myDomain,dc=myDomainExt",extensions
|
||||
; sip.conf = ldap,"dc=myDomain,dc=myDomainExt",config
|
||||
|
||||
|
||||
[_general]
|
||||
;host=192.168.1.1,ldap.mydomain.com ; LDAP host(s)
|
||||
;protocol=3 ; Version of the LDAP protocol to use default is 3.
|
||||
;basedn=MyRootDN ; Base DN
|
||||
;pass=MyPassword ; Bind password
|
||||
;user=MyDN ; Bind DN
|
||||
|
||||
; Configuration Table
|
||||
[config]
|
||||
; addtional filter - This specifies an additional set of criteria to be used
|
||||
; when querying the LDAP server.
|
||||
additionalFilter=(objectClass=PBXConfig)
|
||||
; Attributes mapping (asterisk variable name = ldap attribute name)
|
||||
; When Asterisk requests the variable by the name of the value on the left,
|
||||
; this module will look up the attribute listed on the right.
|
||||
filename = PBXConfigFilename
|
||||
category = PBXConfigCategory
|
||||
variable_name = PBXConfigVariableName
|
||||
variable_value = PBXConfigVariableValue
|
||||
cat_metric = PBXConfigCategoryMetric
|
||||
commented = PBXConfigCommented
|
||||
|
||||
; Extensions Table
|
||||
[extensions]
|
||||
context = PBXExtensionContext
|
||||
exten = PBXExtensionExten
|
||||
priority = PBXExtensionPriority
|
||||
app = PBXExtensionApplication
|
||||
appdata = PBXExtensionApplicationData
|
||||
additionalFilter=(objectClass=PBXExtension)
|
||||
|
||||
; Sip Users Table
|
||||
[sip]
|
||||
name = uid
|
||||
amaflags = PBXAccountAMAFlags
|
||||
callgroup = PBXAccountCallGroup
|
||||
callerid = PBXAccountCallerID
|
||||
canreinvite = PBXAccountCanReinvite
|
||||
context = PBXAccountContext
|
||||
dtmfmode = PBXAccountDTMFMode
|
||||
fromuser = PBXAccountFromUser
|
||||
fromdomain = PBXAccountFromDomain
|
||||
fullcontact = PBXAccountFullContact
|
||||
fullcontact = gecos
|
||||
host = PBXAccountHost
|
||||
insecure = PBXAccountInsecure
|
||||
mailbox = PBXAccountMailbox
|
||||
md5secret = realmedPassword
|
||||
nat = PBXAccountNAT
|
||||
deny = PBXAccountDeny
|
||||
permit = PBXAccountPermit
|
||||
pickupgroup = PBXAccountPickupGroup
|
||||
port = PBXAccountPort
|
||||
qualify = PBXAccountQualify
|
||||
restrictcid = PBXAccountRestrictCID
|
||||
rtptimeout = PBXAccountRTPTimeout
|
||||
rtpholdtimeout = PBXAccountRTPHoldTimeout
|
||||
type = PBXAccountType
|
||||
disallow = PBXAccountDisallowedCodec
|
||||
allow = PBXAccountAllowedCodec
|
||||
MusicOnHold = PBXAccountMusicOnHold
|
||||
regseconds = PBXAccountExpirationTimestamp
|
||||
regcontext = PBXAccountRegistrationContext
|
||||
regexten = PBXAccountRegistrationExten
|
||||
CanCallForward = PBXAccountCanCallForward
|
||||
additionalFilter=(objectClass=PBXAccountSIP)
|
||||
|
||||
; IAX Users Table
|
||||
[iax]
|
||||
amaflags = PBXAccountAMAFlags
|
||||
callerid = PBXAccountCallerID
|
||||
context = PBXAccountContext
|
||||
fullcontact = PBXAccountFullContact
|
||||
fullcontact = gecos
|
||||
host = PBXAccountHost
|
||||
mailbox = PBXAccountMailbox
|
||||
md5secret = realmedPassword
|
||||
deny = PBXAccountDeny
|
||||
permit = PBXAccountPermit
|
||||
port = PBXAccountPort
|
||||
qualify = PBXAccountQualify
|
||||
type = PBXAccountType
|
||||
disallow = PBXAccountDisallowedCodec
|
||||
allow = PBXAccountAllowedCodec
|
||||
regseconds = PBXAccountExpirationTimestamp
|
||||
regcontext = PBXAccountRegistrationContext
|
||||
regexten = PBXAccountRegistrationExten
|
||||
notransfer = PBXAccountNoTransfer
|
||||
additionalFilter=(objectClass=PBXAccountIAX)
|
||||
|
||||
; A Test Family
|
||||
[testfamily]
|
||||
MyUSERID = uid
|
||||
additionalFilter=(objectClass=*)
|
||||
|
||||
[accounts]
|
||||
amaflags = PBXAccountAMAFlags
|
||||
callgroup = PBXAccountCallGroup
|
||||
callerid = PBXAccountCallerID
|
||||
canreinvite = PBXAccountCanReinvite
|
||||
context = PBXAccountContext
|
||||
dtmfmode = PBXAccountDTMFMode
|
||||
fromuser = PBXAccountFromUser
|
||||
fromdomain = PBXAccountFromDomain
|
||||
fullcontact = PBXAccountFullContact
|
||||
fullcontact = gecos
|
||||
host = PBXAccountHost
|
||||
insecure = PBXAccountInsecure
|
||||
mailbox = PBXAccountMailbox
|
||||
md5secret = realmedPassword
|
||||
nat = PBXAccountNAT
|
||||
deny = PBXAccountDeny
|
||||
permit = PBXAccountPermit
|
||||
pickupgroup = PBXAccountPickupGroup
|
||||
port = PBXAccountPort
|
||||
qualify = PBXAccountQualify
|
||||
restrictcid = PBXAccountRestrictCID
|
||||
rtptimeout = PBXAccountRTPTimeout
|
||||
rtpholdtimeout = PBXAccountRTPHoldTimeout
|
||||
type = PBXAccountType
|
||||
disallow = PBXAccountDisallowedCodec
|
||||
allow = PBXAccountAllowedCodec
|
||||
MusicOnHold = PBXAccountMusicOnHold
|
||||
regseconds = PBXAccountExpirationTimestamp
|
||||
regcontext = PBXAccountRegistrationContext
|
||||
regexten = PBXAccountRegistrationExten
|
||||
CanCallForward = PBXAccountCanCallForward
|
||||
additionalFilter=(objectClass=PBXAccount)
|
||||
|
@ -0,0 +1,562 @@
|
||||
#
|
||||
# Copyright (c) 2007 Suretec Systems Ltd. - <http://www.suretecsystems.com/>
|
||||
#
|
||||
# Asterisk LDAP Schema
|
||||
#
|
||||
# Digium root OID (http://www.iana.org/assignments/enterprise-numbers)
|
||||
#
|
||||
# 1.3.6.1.4.1.22736
|
||||
# 1.3.6.1.4.1.22736.5 LDAP elements
|
||||
# 1.3.6.1.4.1.22736.5.4 Attribute Types
|
||||
# 1.3.6.1.4.1.22736.5.5 Object Classes
|
||||
#
|
||||
objectIdentifier AsteriskRoot 1.3.6.1.4.1.22736
|
||||
objectIdentifier AsteriskLDAP AsteriskRoot:5
|
||||
|
||||
#############################################################################
|
||||
# Attribute group OIDs. e.g.: objectIdentifier AstAttrType AsteriskLDAP:4
|
||||
#############################################################################
|
||||
objectIdentifier AstAttrType AsteriskLDAP:4
|
||||
|
||||
|
||||
#############################################################################
|
||||
# Attribute OIDs e.g.: objectIdentifier AstContext AstAttrType:1
|
||||
#############################################################################
|
||||
objectIdentifier AstContext AstAttrType:1
|
||||
objectIdentifier AstExtension AstAttrType:2
|
||||
objectIdentifier AstPriority AstAttrType:3
|
||||
objectIdentifier AstApplication AstAttrType:4
|
||||
objectIdentifier AstApplicationData AstAttrType:5
|
||||
objectIdentifier AstAccountAMAFlags AstAttrType:6
|
||||
objectIdentifier AstAccountCallerID AstAttrType:7
|
||||
objectIdentifier AstAccountContext AstAttrType:8
|
||||
objectIdentifier AstAccountMailbox AstAttrType:9
|
||||
objectIdentifier AstMD5secret AstAttrType:10
|
||||
objectIdentifier AstAccountDeny AstAttrType:11
|
||||
objectIdentifier AstAccountPermit AstAttrType:12
|
||||
objectIdentifier AstAccountQualify AstAttrType:13
|
||||
objectIdentifier AstAccountType AstAttrType:14
|
||||
objectIdentifier AstAccountDisallowedCodec AstAttrType:15
|
||||
objectIdentifier AstAccountExpirationTimestamp AstAttrType:16
|
||||
objectIdentifier AstAccountRegistrationContext AstAttrType:17
|
||||
objectIdentifier AstAccountRegistrationExten AstAttrType:18
|
||||
objectIdentifier AstAccountNoTransfer AstAttrType:19
|
||||
objectIdentifier AstAccountCallGroup AstAttrType:20
|
||||
objectIdentifier AstAccountCanReinvite AstAttrType:21
|
||||
objectIdentifier AstAccountDTMFMode AstAttrType:22
|
||||
objectIdentifier AstAccountFromUser AstAttrType:23
|
||||
objectIdentifier AstAccountFromDomain AstAttrType:24
|
||||
objectIdentifier AstAccountFullContact AstAttrType:25
|
||||
objectIdentifier AstAccountHost AstAttrType:26
|
||||
objectIdentifier AstAccountInsecure AstAttrType:27
|
||||
objectIdentifier AstAccountNAT AstAttrType:28
|
||||
objectIdentifier AstAccountPickupGroup AstAttrType:29
|
||||
objectIdentifier AstAccountPort AstAttrType:30
|
||||
objectIdentifier AstAccountRestrictCID AstAttrType:31
|
||||
objectIdentifier AstAccountRTPTimeout AstAttrType:32
|
||||
objectIdentifier AstAccountRTPHoldTimeout AstAttrType:33
|
||||
objectIdentifier AstAccountRealmedPassword AstAttrType:34
|
||||
objectIdentifier AstAccountAllowedCodec AstAttrType:35
|
||||
objectIdentifier AstAccountMusicOnHold AstAttrType:36
|
||||
objectIdentifier AstAccountCanCallForward AstAttrType:37
|
||||
objectIdentifier AstAccountSecret AstAttrType:38
|
||||
objectIdentifier AstAccountName AstAttrType:39
|
||||
objectIdentifier AstConfigFilename AstAttrType:40
|
||||
objectIdentifier AstConfigCategory AstAttrType:41
|
||||
objectIdentifier AstConfigCategoryMetric AstAttrType:42
|
||||
objectIdentifier AstConfigVariableName AstAttrType:43
|
||||
objectIdentifier AstConfigVariableValue AstAttrType:44
|
||||
objectIdentifier AstConfigCommented AstAttrType:45
|
||||
|
||||
|
||||
#############################################################################
|
||||
# Object Class OIDs
|
||||
#############################################################################
|
||||
objectIdentifier AstObjectClass AsteriskLDAP:2
|
||||
objectIdentifier AsteriskExtension AstObjectClass:1
|
||||
objectIdentifier AsteriskIAXUser AstObjectClass:2
|
||||
objectIdentifier AsteriskSIPUser AstObjectClass:3
|
||||
objectIdentifier AsteriskConfig AstObjectClass:4
|
||||
|
||||
|
||||
#############################################################################
|
||||
# attribute definitions
|
||||
#
|
||||
# OID (the first arg) comes from the objectIdentifier defined above
|
||||
#
|
||||
# NAME should be the same as objectIdentifier
|
||||
#
|
||||
# DESC should be the description of the attribute
|
||||
#
|
||||
# EQUALITY is the rule to use when doing a search/compare for an
|
||||
# attribute value.
|
||||
#
|
||||
# SUBSTR is the rule to use when doing a substring search (*foo*)
|
||||
#
|
||||
# SYNTAX is the syntax (i.e., type) of the attribute. We should
|
||||
# probably stick to syntaxes:
|
||||
#
|
||||
# 1.3.6.1.4.1.1466.115.121.1.15 -> directoryString (UTF-8 string)
|
||||
# 1.3.6.1.4.1.1466.115.121.1.26 -> IA5String (ASCII String)
|
||||
# 1.3.6.1.4.1.1466.115.121.1.27 -> integer (Integer value)
|
||||
#
|
||||
# SINGLE-VALUE should be present if only one instance of this
|
||||
# attribute is allowed within an entry.
|
||||
#
|
||||
# {32} is the allowed length
|
||||
#
|
||||
# e.g.:
|
||||
#
|
||||
# attributetype ( AstExample
|
||||
# NAME ( 'AstExample' )
|
||||
# DESC 'Asterisk Example Attribute'
|
||||
# EQUALITY caseIgnoreMatch
|
||||
# SUBSTR caseIgnoreSubstringsMatch
|
||||
# SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32}
|
||||
# SINGLE-VALUE )
|
||||
#
|
||||
#############################################################################
|
||||
|
||||
attributetype ( AstContext
|
||||
NAME 'AstContext'
|
||||
DESC 'Asterisk Context'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstExtension
|
||||
NAME 'AstExtension'
|
||||
DESC 'Asterisk Extension'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstPriority
|
||||
NAME 'AstPriority'
|
||||
DESC 'Asterisk Priority'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstApplication
|
||||
NAME 'AstApplication'
|
||||
DESC 'Asterisk Application'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstApplicationData
|
||||
NAME 'AstApplicationData'
|
||||
DESC 'Asterisk Application Data'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountAMAFlags
|
||||
NAME 'AstAccountAMAFlags'
|
||||
DESC 'Asterisk Account AMA Flags'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountCallerID
|
||||
NAME 'AstAccountCallerID'
|
||||
DESC 'Asterisk Account CallerID'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountContext
|
||||
NAME 'AstAccountContext'
|
||||
DESC 'Asterisk Account Context'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountMailbox
|
||||
NAME 'AstAccountMailbox'
|
||||
DESC 'Asterisk Account Mailbox'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstMD5secret
|
||||
NAME 'AstMD5secret'
|
||||
DESC 'Asterisk Account MD5 Secret'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountDeny
|
||||
NAME 'AstAccountDeny'
|
||||
DESC 'Asterisk Account Deny'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountPermit
|
||||
NAME 'AstAccountPermit'
|
||||
DESC 'Asterisk Account Permit'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountQualify
|
||||
NAME 'AstAccountQualify'
|
||||
DESC 'Asterisk Account Qualify'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountType
|
||||
NAME 'AstAccountType'
|
||||
DESC 'Asterisk Account Type'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountDisallowedCodec
|
||||
NAME 'AstAccountDisallowedCodec'
|
||||
DESC 'Asterisk Account Disallowed Codec'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountExpirationTimestamp
|
||||
NAME 'AstAccountExpirationTimestamp'
|
||||
DESC 'Asterisk Account Allowed Codec'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountRegistrationContext
|
||||
NAME 'AstAccountRegistrationContext'
|
||||
DESC 'Asterisk Account AMA Flags'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountRegistrationExten
|
||||
NAME 'AstAccountRegistrationExten'
|
||||
DESC 'Asterisk Account AMA Flags'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountNoTransfer
|
||||
NAME 'AstAccountNoTransfer'
|
||||
DESC 'Asterisk Account AMA Flags'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountCallGroup
|
||||
NAME 'AstAccountCallGroup'
|
||||
DESC 'Asterisk Account Call Group'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountCanReinvite
|
||||
NAME 'AstAccountCanReinvite'
|
||||
DESC 'Asterisk Account Can Reinvite'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountDTMFMode
|
||||
NAME 'AstAccountDTMFMode'
|
||||
DESC 'Asterisk Account DTMF Flags'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountFromUser
|
||||
NAME 'AstAccountFromUser'
|
||||
DESC 'Asterisk Account From User'
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountFromDomain
|
||||
NAME 'AstAccountFromDomain'
|
||||
DESC 'Asterisk Account From Domain'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountFullContact
|
||||
NAME 'AstAccountFullContact'
|
||||
DESC 'Asterisk Account Full Contact'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountHost
|
||||
NAME 'AstAccountHost'
|
||||
DESC 'Asterisk Account Host'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountInsecure
|
||||
NAME 'AstAccountInsecure'
|
||||
DESC 'Asterisk Account Insecure'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountNAT
|
||||
NAME 'AstAccountNAT'
|
||||
DESC 'Asterisk Account NAT'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountPickupGroup
|
||||
NAME 'AstAccountPickupGroup'
|
||||
DESC 'Asterisk Account PickupGroup'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountPort
|
||||
NAME 'AstAccountPort'
|
||||
DESC 'Asterisk Account Port'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountRestrictCID
|
||||
NAME 'AstAccountRestrictCID'
|
||||
DESC 'Asterisk Restrict CallerID'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountRTPTimeout
|
||||
NAME 'AstAccountRTPTimeout'
|
||||
DESC 'Asterisk RTP Timeout'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountRTPHoldTimeout
|
||||
NAME 'AstAccountRTPHoldTimeout'
|
||||
DESC 'Asterisk RTP Hold Timeout'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountRealmedPassword
|
||||
NAME 'AstAccountRealmedPassword'
|
||||
DESC 'Asterisk RTP Hold Timeout'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountAllowedCodec
|
||||
NAME 'AstAccountAllowedCodec'
|
||||
DESC 'Asterisk Account Allowed Codec'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountMusicOnHold
|
||||
NAME 'AstAccountMusicOnHold'
|
||||
DESC 'Asterisk Account Allowed Codec'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountCanCallForward
|
||||
NAME 'AstAccountCanCallForward'
|
||||
DESC 'Asterisk Can CAll Forward'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountSecret
|
||||
NAME 'AstAccountSecret'
|
||||
DESC 'Asterisk Can CAll Forward'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstAccountName
|
||||
NAME 'AstAccountName'
|
||||
DESC 'Asterisk Account Username'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstConfigFilename
|
||||
NAME 'AstConfigFilename'
|
||||
DESC 'Asterisk LDAP Configuration Filename'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstConfigCategory
|
||||
NAME 'AstConfigCategory'
|
||||
DESC 'Asterisk LDAP Configuration Category'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstConfigCategoryMetric
|
||||
NAME 'AstConfigCategoryMetric'
|
||||
DESC 'Asterisk LDAP Configuration Category Metric'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstConfigVariableName
|
||||
NAME 'AstConfigVariableName'
|
||||
DESC 'Asterisk LDAP Configuration Variable Name'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstConfigVariableValue
|
||||
NAME 'AstConfigVariableValue'
|
||||
DESC 'Asterisk LDAP Configuration Variable Value'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
attributetype ( AstConfigCommented
|
||||
NAME 'AstConfigCommented'
|
||||
DESC 'Asterisk LDAP Configuration Commented'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
|
||||
#############################################################################
|
||||
# Object Class definitions
|
||||
#
|
||||
# This is where to define the object classes. Object classes are used
|
||||
# to define which attribute MAY (optional) or MUST (required) belong
|
||||
# to an entry.
|
||||
#
|
||||
# Classes can be AUXILIARY or STRUCTURAL. An entry in the directory
|
||||
# must have one and only one structural class, but can have many
|
||||
# AUXILIARY classes.
|
||||
#
|
||||
#############################################################################
|
||||
|
||||
objectclass ( AsteriskExtension
|
||||
NAME 'AsteriskExtension'
|
||||
DESC 'PBX Extension Information for Asterisk'
|
||||
SUP top AUXILIARY
|
||||
MUST cn
|
||||
MAY (
|
||||
AstContext $
|
||||
AstExtension $
|
||||
AstPriority $
|
||||
AstApplication $
|
||||
AstApplicationData
|
||||
)
|
||||
)
|
||||
|
||||
#############################################################################
|
||||
#
|
||||
# AsteriskIAXUser and AsteriskSIPUser extend AsteriskExtension. These
|
||||
# represent real accounts in Asterisk.
|
||||
#
|
||||
# NOTE: They are defined as AUXILIARY in case they need to be mixed with an
|
||||
# existing directory deployment.
|
||||
#
|
||||
#############################################################################
|
||||
|
||||
objectclass ( AsteriskIAXUser
|
||||
NAME 'AsteriskIAXUser'
|
||||
DESC 'IAX2 User information for Asterisk'
|
||||
SUP AsteriskExtension AUXILIARY
|
||||
MUST cn
|
||||
MAY (
|
||||
AstAccountAMAFlags $
|
||||
AstAccountCallerID $
|
||||
AstAccountContext $
|
||||
AstAccountFullContact $
|
||||
AstAccountHost $
|
||||
AstAccountMailbox $
|
||||
AstMD5secret $
|
||||
AstAccountDeny $
|
||||
AstAccountPermit $
|
||||
AstAccountPort $
|
||||
AstAccountQualify $
|
||||
AstAccountType $
|
||||
AstAccountDisallowedCodec $
|
||||
AstAccountExpirationTimestamp $
|
||||
AstAccountRegistrationContext$
|
||||
AstAccountRegistrationExten $
|
||||
AstAccountNoTransfer $
|
||||
AstAccountName
|
||||
)
|
||||
)
|
||||
|
||||
objectclass ( AsteriskSIPUser
|
||||
NAME 'AsteriskSIPUser'
|
||||
DESC 'SIP User information for Asterisk'
|
||||
SUP AsteriskExtension AUXILIARY
|
||||
MUST cn
|
||||
MAY (
|
||||
AstAccountAMAFlags $
|
||||
AstAccountCallGroup $
|
||||
AstAccountCallerID $
|
||||
AstAccountCanReinvite $
|
||||
AstAccountContext $
|
||||
AstAccountDTMFMode $
|
||||
AstAccountFromUser $
|
||||
AstAccountFromDomain $
|
||||
AstAccountFullContact $
|
||||
AstAccountHost $
|
||||
AstAccountInsecure $
|
||||
AstAccountMailbox $
|
||||
AstAccountRealmedPassword $
|
||||
AstAccountNAT $
|
||||
AstAccountDeny $
|
||||
AstAccountPermit $
|
||||
AstAccountPickupGroup $
|
||||
AstAccountPort $
|
||||
AstAccountQualify $
|
||||
AstAccountRestrictCID $
|
||||
AstAccountRTPTimeout $
|
||||
AstAccountRTPHoldTimeout $
|
||||
AstAccountType $
|
||||
AstAccountDisallowedCodec $
|
||||
AstAccountAllowedCodec $
|
||||
AstAccountMusicOnHold $
|
||||
AstAccountExpirationTimestamp $
|
||||
AstAccountRegistrationContext $
|
||||
AstAccountRegistrationExten $
|
||||
AstAccountCanCallForward $
|
||||
AstAccountSecret $
|
||||
AstAccountName
|
||||
)
|
||||
)
|
||||
|
||||
#############################################################################
|
||||
#
|
||||
# AsteriskIAXUser and AsteriskSIPUser extend AsteriskExtension. These
|
||||
# represent real accounts in Asterisk.
|
||||
#
|
||||
# NOTE: They are defined as AUXILIARY in case they need to be mixed with an
|
||||
# existing directory deployment.
|
||||
#
|
||||
#############################################################################
|
||||
|
||||
objectclass ( AsteriskConfig
|
||||
NAME 'AsteriskConfig'
|
||||
DESC 'Asterisk configuration Information'
|
||||
SUP top AUXILIARY
|
||||
MUST cn
|
||||
MAY (
|
||||
AstConfigFilename $
|
||||
AstConfigCategory $
|
||||
AstConfigCategoryMetric $
|
||||
AstConfigVariableName $
|
||||
AstConfigVariableValue $
|
||||
AstConfigCommented
|
||||
)
|
||||
)
|
||||
|
@ -0,0 +1,567 @@
|
||||
#
|
||||
# Copyright (c) 2007 Suretec Systems Ltd. - <http://www.suretecsystems.com/>
|
||||
#
|
||||
# Asterisk LDAP Schema ldif
|
||||
#
|
||||
# Digium root OID (http://www.iana.org/assignments/enterprise-numbers)
|
||||
#
|
||||
# 1.3.6.1.4.1.22736
|
||||
# 1.3.6.1.4.1.22736.5 LDAP elements
|
||||
# 1.3.6.1.4.1.22736.5.4 Attribute Types
|
||||
# 1.3.6.1.4.1.22736.5.5 Object Classes
|
||||
#
|
||||
dn: cn=asterisk,cn=schema,cn=config
|
||||
objectClass: olcSchemaConfig
|
||||
cn: asterisk
|
||||
#
|
||||
olcObjectIdentifier: AsteriskRoot 1.3.6.1.4.1.22736
|
||||
olcObjectIdentifier: AsteriskLDAP AsteriskRoot:5
|
||||
#
|
||||
#############################################################################
|
||||
# Attribute group OIDs. e.g.: olcObjectIdentifier: AstAttrType AsteriskLDAP:4
|
||||
#############################################################################
|
||||
olcObjectIdentifier: AstAttrType AsteriskLDAP:4
|
||||
#
|
||||
#
|
||||
#############################################################################
|
||||
# Attribute OIDs e.g.: olcObjectIdentifier: AstContext AstAttrType:1
|
||||
#############################################################################
|
||||
olcObjectIdentifier: AstContext AstAttrType:1
|
||||
olcObjectIdentifier: AstExtension AstAttrType:2
|
||||
olcObjectIdentifier: AstPriority AstAttrType:3
|
||||
olcObjectIdentifier: AstApplication AstAttrType:4
|
||||
olcObjectIdentifier: AstApplicationData AstAttrType:5
|
||||
olcObjectIdentifier: AstAccountAMAFlags AstAttrType:6
|
||||
olcObjectIdentifier: AstAccountCallerID AstAttrType:7
|
||||
olcObjectIdentifier: AstAccountContext AstAttrType:8
|
||||
olcObjectIdentifier: AstAccountMailbox AstAttrType:9
|
||||
olcObjectIdentifier: AstMD5secret AstAttrType:10
|
||||
olcObjectIdentifier: AstAccountDeny AstAttrType:11
|
||||
olcObjectIdentifier: AstAccountPermit AstAttrType:12
|
||||
olcObjectIdentifier: AstAccountQualify AstAttrType:13
|
||||
olcObjectIdentifier: AstAccountType AstAttrType:14
|
||||
olcObjectIdentifier: AstAccountDisallowedCodec AstAttrType:15
|
||||
olcObjectIdentifier: AstAccountExpirationTimestamp AstAttrType:16
|
||||
olcObjectIdentifier: AstAccountRegistrationContext AstAttrType:17
|
||||
olcObjectIdentifier: AstAccountRegistrationExten AstAttrType:18
|
||||
olcObjectIdentifier: AstAccountNoTransfer AstAttrType:19
|
||||
olcObjectIdentifier: AstAccountCallGroup AstAttrType:20
|
||||
olcObjectIdentifier: AstAccountCanReinvite AstAttrType:21
|
||||
olcObjectIdentifier: AstAccountDTMFMode AstAttrType:22
|
||||
olcObjectIdentifier: AstAccountFromUser AstAttrType:23
|
||||
olcObjectIdentifier: AstAccountFromDomain AstAttrType:24
|
||||
olcObjectIdentifier: AstAccountFullContact AstAttrType:25
|
||||
olcObjectIdentifier: AstAccountHost AstAttrType:26
|
||||
olcObjectIdentifier: AstAccountInsecure AstAttrType:27
|
||||
olcObjectIdentifier: AstAccountNAT AstAttrType:28
|
||||
olcObjectIdentifier: AstAccountPickupGroup AstAttrType:29
|
||||
olcObjectIdentifier: AstAccountPort AstAttrType:30
|
||||
olcObjectIdentifier: AstAccountRestrictCID AstAttrType:31
|
||||
olcObjectIdentifier: AstAccountRTPTimeout AstAttrType:32
|
||||
olcObjectIdentifier: AstAccountRTPHoldTimeout AstAttrType:33
|
||||
olcObjectIdentifier: AstAccountRealmedPassword AstAttrType:34
|
||||
olcObjectIdentifier: AstAccountAllowedCodec AstAttrType:35
|
||||
olcObjectIdentifier: AstAccountMusicOnHold AstAttrType:36
|
||||
olcObjectIdentifier: AstAccountCanCallForward AstAttrType:37
|
||||
olcObjectIdentifier: AstAccountSecret AstAttrType:38
|
||||
olcObjectIdentifier: AstAccountName AstAttrType:39
|
||||
olcObjectIdentifier: AstConfigFilename AstAttrType:40
|
||||
olcObjectIdentifier: AstConfigCategory AstAttrType:41
|
||||
olcObjectIdentifier: AstConfigCategoryMetric AstAttrType:42
|
||||
olcObjectIdentifier: AstConfigVariableName AstAttrType:43
|
||||
olcObjectIdentifier: AstConfigVariableValue AstAttrType:44
|
||||
olcObjectIdentifier: AstConfigCommented AstAttrType:45
|
||||
#
|
||||
#
|
||||
#############################################################################
|
||||
# Object Class OIDs
|
||||
#############################################################################
|
||||
olcObjectIdentifier: AstObjectClass AsteriskLDAP:2
|
||||
olcObjectIdentifier: AsteriskExtension AstObjectClass:1
|
||||
olcObjectIdentifier: AsteriskIAXUser AstObjectClass:2
|
||||
olcObjectIdentifier: AsteriskSIPUser AstObjectClass:3
|
||||
olcObjectIdentifier: AsteriskConfig AstObjectClass:4
|
||||
#
|
||||
#
|
||||
#############################################################################
|
||||
# attribute definitions
|
||||
#
|
||||
# OID (the first arg) comes from the olcObjectIdentifier: defined above
|
||||
#
|
||||
# NAME should be the same as olcObjectIdentifier:
|
||||
#
|
||||
# DESC should be the description of the attribute
|
||||
#
|
||||
# EQUALITY is the rule to use when doing a search/compare for an
|
||||
# attribute value.
|
||||
#
|
||||
# SUBSTR is the rule to use when doing a substring search (*foo*)
|
||||
#
|
||||
# SYNTAX is the syntax (i.e., type) of the attribute. We should
|
||||
# probably stick to syntaxes:
|
||||
#
|
||||
# 1.3.6.1.4.1.1466.115.121.1.15 -> directoryString (UTF-8 string)
|
||||
# 1.3.6.1.4.1.1466.115.121.1.26 -> IA5String (ASCII String)
|
||||
# 1.3.6.1.4.1.1466.115.121.1.27 -> integer (Integer value)
|
||||
#
|
||||
# SINGLE-VALUE should be present if only one instance of this
|
||||
# attribute is allowed within an entry.
|
||||
#
|
||||
# {32} is the allowed length
|
||||
#
|
||||
# e.g.:
|
||||
#
|
||||
# olcAttributeTypes: ( AstExample
|
||||
# NAME ( 'AstExample' )
|
||||
# DESC 'Asterisk Example Attribute'
|
||||
# EQUALITY caseIgnoreMatch
|
||||
# SUBSTR caseIgnoreSubstringsMatch
|
||||
# SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32}
|
||||
# SINGLE-VALUE )
|
||||
#
|
||||
#############################################################################
|
||||
#
|
||||
olcAttributeTypes: ( AstContext
|
||||
NAME 'AstContext'
|
||||
DESC 'Asterisk Context'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstExtension
|
||||
NAME 'AstExtension'
|
||||
DESC 'Asterisk Extension'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstPriority
|
||||
NAME 'AstPriority'
|
||||
DESC 'Asterisk Priority'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstApplication
|
||||
NAME 'AstApplication'
|
||||
DESC 'Asterisk Application'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstApplicationData
|
||||
NAME 'AstApplicationData'
|
||||
DESC 'Asterisk Application Data'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountAMAFlags
|
||||
NAME 'AstAccountAMAFlags'
|
||||
DESC 'Asterisk Account AMA Flags'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountCallerID
|
||||
NAME 'AstAccountCallerID'
|
||||
DESC 'Asterisk Account CallerID'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountContext
|
||||
NAME 'AstAccountContext'
|
||||
DESC 'Asterisk Account Context'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountMailbox
|
||||
NAME 'AstAccountMailbox'
|
||||
DESC 'Asterisk Account Mailbox'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstMD5secret
|
||||
NAME 'AstMD5secret'
|
||||
DESC 'Asterisk Account MD5 Secret'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountDeny
|
||||
NAME 'AstAccountDeny'
|
||||
DESC 'Asterisk Account Deny'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountPermit
|
||||
NAME 'AstAccountPermit'
|
||||
DESC 'Asterisk Account Permit'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountQualify
|
||||
NAME 'AstAccountQualify'
|
||||
DESC 'Asterisk Account Qualify'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountType
|
||||
NAME 'AstAccountType'
|
||||
DESC 'Asterisk Account Type'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountDisallowedCodec
|
||||
NAME 'AstAccountDisallowedCodec'
|
||||
DESC 'Asterisk Account Disallowed Codec'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountExpirationTimestamp
|
||||
NAME 'AstAccountExpirationTimestamp'
|
||||
DESC 'Asterisk Account Allowed Codec'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountRegistrationContext
|
||||
NAME 'AstAccountRegistrationContext'
|
||||
DESC 'Asterisk Account AMA Flags'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountRegistrationExten
|
||||
NAME 'AstAccountRegistrationExten'
|
||||
DESC 'Asterisk Account AMA Flags'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountNoTransfer
|
||||
NAME 'AstAccountNoTransfer'
|
||||
DESC 'Asterisk Account AMA Flags'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountCallGroup
|
||||
NAME 'AstAccountCallGroup'
|
||||
DESC 'Asterisk Account Call Group'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountCanReinvite
|
||||
NAME 'AstAccountCanReinvite'
|
||||
DESC 'Asterisk Account Can Reinvite'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountDTMFMode
|
||||
NAME 'AstAccountDTMFMode'
|
||||
DESC 'Asterisk Account DTMF Flags'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountFromUser
|
||||
NAME 'AstAccountFromUser'
|
||||
DESC 'Asterisk Account From User'
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountFromDomain
|
||||
NAME 'AstAccountFromDomain'
|
||||
DESC 'Asterisk Account From Domain'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountFullContact
|
||||
NAME 'AstAccountFullContact'
|
||||
DESC 'Asterisk Account Full Contact'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountHost
|
||||
NAME 'AstAccountHost'
|
||||
DESC 'Asterisk Account Host'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountInsecure
|
||||
NAME 'AstAccountInsecure'
|
||||
DESC 'Asterisk Account Insecure'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountNAT
|
||||
NAME 'AstAccountNAT'
|
||||
DESC 'Asterisk Account NAT'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountPickupGroup
|
||||
NAME 'AstAccountPickupGroup'
|
||||
DESC 'Asterisk Account PickupGroup'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountPort
|
||||
NAME 'AstAccountPort'
|
||||
DESC 'Asterisk Account Port'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountRestrictCID
|
||||
NAME 'AstAccountRestrictCID'
|
||||
DESC 'Asterisk Restrict CallerID'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountRTPTimeout
|
||||
NAME 'AstAccountRTPTimeout'
|
||||
DESC 'Asterisk RTP Timeout'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountRTPHoldTimeout
|
||||
NAME 'AstAccountRTPHoldTimeout'
|
||||
DESC 'Asterisk RTP Hold Timeout'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountRealmedPassword
|
||||
NAME 'AstAccountRealmedPassword'
|
||||
DESC 'Asterisk RTP Hold Timeout'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountAllowedCodec
|
||||
NAME 'AstAccountAllowedCodec'
|
||||
DESC 'Asterisk Account Allowed Codec'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountMusicOnHold
|
||||
NAME 'AstAccountMusicOnHold'
|
||||
DESC 'Asterisk Account Allowed Codec'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountCanCallForward
|
||||
NAME 'AstAccountCanCallForward'
|
||||
DESC 'Asterisk Can CAll Forward'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountSecret
|
||||
NAME 'AstAccountSecret'
|
||||
DESC 'Asterisk Can CAll Forward'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstAccountName
|
||||
NAME 'AstAccountName'
|
||||
DESC 'Asterisk Account Username'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstConfigFilename
|
||||
NAME 'AstConfigFilename'
|
||||
DESC 'Asterisk LDAP Configuration Filename'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstConfigCategory
|
||||
NAME 'AstConfigCategory'
|
||||
DESC 'Asterisk LDAP Configuration Category'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstConfigCategoryMetric
|
||||
NAME 'AstConfigCategoryMetric'
|
||||
DESC 'Asterisk LDAP Configuration Category Metric'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstConfigVariableName
|
||||
NAME 'AstConfigVariableName'
|
||||
DESC 'Asterisk LDAP Configuration Variable Name'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstConfigVariableValue
|
||||
NAME 'AstConfigVariableValue'
|
||||
DESC 'Asterisk LDAP Configuration Variable Value'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
olcAttributeTypes: ( AstConfigCommented
|
||||
NAME 'AstConfigCommented'
|
||||
DESC 'Asterisk LDAP Configuration Commented'
|
||||
EQUALITY caseIgnoreMatch
|
||||
SUBSTR caseIgnoreSubstringsMatch
|
||||
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
|
||||
#
|
||||
#############################################################################
|
||||
# Object Class definitions
|
||||
#
|
||||
# This is where to define the object classes. Object classes are used
|
||||
# to define which attribute MAY (optional) or MUST (required) belong
|
||||
# to an entry.
|
||||
#
|
||||
# Classes can be AUXILIARY or STRUCTURAL. An entry in the directory
|
||||
# must have one and only one structural class, but can have many
|
||||
# AUXILIARY classes.
|
||||
#
|
||||
#############################################################################
|
||||
#
|
||||
olcObjectClasses: ( AsteriskExtension
|
||||
NAME 'AsteriskExtension'
|
||||
DESC 'PBX Extension Information for Asterisk'
|
||||
SUP top AUXILIARY
|
||||
MUST cn
|
||||
MAY (
|
||||
AstContext $
|
||||
AstExtension $
|
||||
AstPriority $
|
||||
AstApplication $
|
||||
AstApplicationData
|
||||
)
|
||||
)
|
||||
#
|
||||
#############################################################################
|
||||
#
|
||||
# AsteriskIAXUser and AsteriskSIPUser extend AsteriskExtension. These
|
||||
# represent real accounts in Asterisk.
|
||||
#
|
||||
# NOTE: They are defined as AUXILIARY in case they need to be mixed with an
|
||||
# existing directory deployment.
|
||||
#
|
||||
#############################################################################
|
||||
#
|
||||
olcObjectClasses: ( AsteriskIAXUser
|
||||
NAME 'AsteriskIAXUser'
|
||||
DESC 'IAX2 User information for Asterisk'
|
||||
SUP AsteriskExtension AUXILIARY
|
||||
MUST cn
|
||||
MAY (
|
||||
AstAccountAMAFlags $
|
||||
AstAccountCallerID $
|
||||
AstAccountContext $
|
||||
AstAccountFullContact $
|
||||
AstAccountHost $
|
||||
AstAccountMailbox $
|
||||
AstMD5secret $
|
||||
AstAccountDeny $
|
||||
AstAccountPermit $
|
||||
AstAccountPort $
|
||||
AstAccountQualify $
|
||||
AstAccountType $
|
||||
AstAccountDisallowedCodec $
|
||||
AstAccountExpirationTimestamp $
|
||||
AstAccountRegistrationContext$
|
||||
AstAccountRegistrationExten $
|
||||
AstAccountNoTransfer $
|
||||
AstAccountName
|
||||
)
|
||||
)
|
||||
#
|
||||
olcObjectClasses: ( AsteriskSIPUser
|
||||
NAME 'AsteriskSIPUser'
|
||||
DESC 'SIP User information for Asterisk'
|
||||
SUP AsteriskExtension AUXILIARY
|
||||
MUST cn
|
||||
MAY (
|
||||
AstAccountAMAFlags $
|
||||
AstAccountCallGroup $
|
||||
AstAccountCallerID $
|
||||
AstAccountCanReinvite $
|
||||
AstAccountContext $
|
||||
AstAccountDTMFMode $
|
||||
AstAccountFromUser $
|
||||
AstAccountFromDomain $
|
||||
AstAccountFullContact $
|
||||
AstAccountHost $
|
||||
AstAccountInsecure $
|
||||
AstAccountMailbox $
|
||||
AstAccountRealmedPassword $
|
||||
AstAccountNAT $
|
||||
AstAccountDeny $
|
||||
AstAccountPermit $
|
||||
AstAccountPickupGroup $
|
||||
AstAccountPort $
|
||||
AstAccountQualify $
|
||||
AstAccountRestrictCID $
|
||||
AstAccountRTPTimeout $
|
||||
AstAccountRTPHoldTimeout $
|
||||
AstAccountType $
|
||||
AstAccountDisallowedCodec $
|
||||
AstAccountAllowedCodec $
|
||||
AstAccountMusicOnHold $
|
||||
AstAccountExpirationTimestamp $
|
||||
AstAccountRegistrationContext $
|
||||
AstAccountRegistrationExten $
|
||||
AstAccountCanCallForward $
|
||||
AstAccountSecret $
|
||||
AstAccountName
|
||||
)
|
||||
)
|
||||
#
|
||||
#############################################################################
|
||||
#
|
||||
# AsteriskIAXUser and AsteriskSIPUser extend AsteriskExtension. These
|
||||
# represent real accounts in Asterisk.
|
||||
#
|
||||
# NOTE: They are defined as AUXILIARY in case they need to be mixed with an
|
||||
# existing directory deployment.
|
||||
#
|
||||
#############################################################################
|
||||
#
|
||||
olcObjectClasses: ( AsteriskConfig
|
||||
NAME 'AsteriskConfig'
|
||||
DESC 'Asterisk configuration Information'
|
||||
SUP top AUXILIARY
|
||||
MUST cn
|
||||
MAY (
|
||||
AstConfigFilename $
|
||||
AstConfigCategory $
|
||||
AstConfigCategoryMetric $
|
||||
AstConfigVariableName $
|
||||
AstConfigVariableValue $
|
||||
AstConfigCommented
|
||||
)
|
||||
)
|
||||
#
|
||||
|
@ -0,0 +1,65 @@
|
||||
Asterisk Realtime LDAP Driver
|
||||
---------------------------
|
||||
|
||||
With this driver Asterisk can retrieve information from a LDAP drectory, including
|
||||
sip/iax users, extensions and configuration.
|
||||
|
||||
See configs/res_ldap.conf.sample for a configuration file sample
|
||||
|
||||
|
||||
Here is a LDAP dif sample:
|
||||
|
||||
# Base SIP Phones Entry
|
||||
dn: uid=phone-base,dc=myDomain,dc=myDomainExt
|
||||
objectClass: top
|
||||
objectClass: AstAccount
|
||||
objectClass: AstAccountSIP
|
||||
uid: phone-base
|
||||
AstAccountAccountingCode: baseacccode
|
||||
AstAccountHost: dynamic
|
||||
preferredLanguage: FR
|
||||
AstAccountAMAFlags: billing
|
||||
AstAccountContext: ldaptest
|
||||
|
||||
|
||||
# A Phone. realmedPassword md5 hash should be the result of
|
||||
# echo -n "UID:SIPRealm:Password" | md5sum
|
||||
dn: uid=phone-test,dc=myDomain,dc=myDomainExt
|
||||
objectClass: top
|
||||
objectClass: AstAccount
|
||||
objectClass: AstAccountSIP
|
||||
uid: phone-test
|
||||
AstAccountAccountingCode: acc-phone-base
|
||||
AstAccountFullContact: Noone <1234>
|
||||
AstAccountCallerID: 1234
|
||||
AstAccountBaseDN: uid=phone-base,dc=myDomain,dc=myDomainExt
|
||||
realmedPassword: {MD5}f67965da780bf9c70d6e337f938cee6f
|
||||
|
||||
|
||||
# extensions,
|
||||
dn: ou=extensions,dc=myDomain,dc=myDomainExt
|
||||
ou: extensions
|
||||
objectClass: top
|
||||
objectClass: organizationalUnit
|
||||
|
||||
# Extension 100 Priority 1 in context ldaptest
|
||||
dn: cn=100-1,ou=extensions,dc=myDomain,dc=myDomainExt
|
||||
AstExtensionApplication: NoOp
|
||||
AstExtensionApplicationData: TEST LDAP
|
||||
objectClass: top
|
||||
objectClass: AstExtension
|
||||
AstExtensionExten: 100
|
||||
AstExtensionContext: ldaptest
|
||||
cn: 100-1
|
||||
AstExtensionPriority: 1
|
||||
|
||||
# Extension 100 Priority 1 in context ldaptest
|
||||
dn: cn=100-2,ou=extensions,dc=myDomain,dc=myDomainExt
|
||||
objectClass: top
|
||||
objectClass: AstExtension
|
||||
AstExtensionExten: 100
|
||||
AstExtensionContext: ldaptest
|
||||
cn: 100-2
|
||||
AstExtensionPriority: 2
|
||||
AstExtensionApplication: hangup
|
||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in new issue