eldapCopyright2012-2021EricssonAB.
AllRightsReserved.
eldap1.
2.
9March23,2021Copyright2012-2021EricssonAB.
AllRightsReserved.
LicensedundertheApacheLicense,Version2.
0(the"License");youmaynotusethisfileexceptincompliancewiththeLicense.
YoumayobtainacopyoftheLicenseathttp://www.
apache.
org/licenses/LICENSE-2.
0Unlessrequiredbyapplicablelaworagreedtoinwriting,softwaredistributedundertheLicenseisdistributedonan"ASIS"BASIS,WITHOUTWARRANTIESORCONDITIONSOFANYKIND,eitherexpressorimplied.
SeetheLicenseforthespecificlanguagegoverningpermissionsandlimitationsundertheLicense.
EricssonAB.
AllRightsReserved.
.
March23,20211EldapUser'sGuideTheEldapapplicationprovidesanapiforaccessinganLDAPserver.
TheoriginalcodewasdevelopedbyTorbjrnTrnkvist.
EricssonAB.
AllRightsReserved.
:eldap|12ReferenceManualTheEldapapplicationprovidesanapiforaccessinganLDAPserver.
TheoriginalcodewasdevelopedbyTorbjrnTrnkvist.
2|EricssonAB.
AllRightsReserved.
:eldapeldapeldapErlangmoduleThismoduleprovidesaclientapitotheLightweightDirectoryAccessProtocol(LDAP).
References:RFC4510-RFC4519RFC2830TheabovepublicationscanbefoundatIETF.
DATATYPESTypedefinitionsthatareusedmorethanonceinthismodule:handle()Connectionhandleattribute()={Type=string(),Values=[string()]}modify_op()Seemod_add/2,mod_delete/2,mod_replace/2scope()SeebaseObject/0,singleLevel/0,wholeSubtree/0dereference()SeeneverDerefAliases/0,derefInSearching/0,derefFindingBaseObj/0,derefAlways/0filter()Seepresent/1,substrings/2,equalityMatch/2,greaterOrEqual/2,lessOrEqual/2,approxMatch/2,extensibleMatch/2,'and'/1,'or'/1,'not'/1return_value()=ok|{ok,{referral,referrals()}}|{error,Error}referrals()=[Address=string()]ThecontentsofAddressisserverdependent.
Exportsopen([Host])->{ok,Handle}|{error,Reason}Types:Handle=handle()SetupaconnectiontoanLDAPserver,theHOST'saretriedinorder.
open([Host],[Option])->{ok,Handle}|{error,Reason}Types:Handle=handle()EricssonAB.
AllRightsReserved.
:eldap|3eldapOption={port,integer()}|{log,function()}|{timeout,integer()}|{ssl,boolean()}|{sslopts,list()}|{tcpopts,list()}SetupaconnectiontoanLDAPserver,theHOST'saretriedinorder.
Thelogfunctiontakesthreearguments,fun(Level,FormatString,[FormatArg])end.
Timeoutsetthemaximumtimeinmillisecondsthateachserverrequestmaytake.
AllTCPsocketoptionsareacceptedexceptactive,binary,deliver,list,modeandpacketclose(Handle)->okTypes:Handle=handle()ShutdowntheconnectionaftersendinganunbindRequesttotheserver.
Iftheconnectionistlstheconnectionwillbeclosedwithssl:close/1,otherwisewithgen_tcp:close/1.
start_tls(Handle,Options)->return_value()Sameasstart_tls(Handle,Options,infinity)start_tls(Handle,Options,Timeout)->return_value()Types:Handle=handle()Options=ssl:ssl_options()Timeout=infinity|positive_integer()UpgradetheconnectionassociatedwithHandletoatlsconnectionifpossible.
Theupgradeisdoneintwophases:firsttheserverisaskedforpermissiontoupgrade.
Second,iftherequestisacknowledged,theupgradetotlsisperformed.
Errorresponsesfromphaseonewillnotaffectthecurrentencryptionstateoftheconnection.
Thoseresponsesare:tls_already_startedTheconnectionisalreadyencrypted.
Theconnectionisnotaffected.
{response,ResponseFromServer}TheupgradewasrefusedbytheLDAPserver.
TheResponseFromServerisanatomdeliveredbyttheLDAPserverexplainedinsection2.
3ofrfc2830.
Theconnectionisnotaffected,soitisstillun-encrypted.
Errorsinthesecondphasewillhoweverendtheconnection:ErrorAnyerrorrespondedfromssl:connect/3TheTimeoutparameterisfortheactualtlsupgrade(phase2)whilethetimeoutineldap:open/2isusedfortheinitialnegotiationaboutupgrade(phase1).
simple_bind(Handle,Dn,Password)->return_value()Types:Handle=handle()Dn=string()Password=string()Authenticatetheconnectionusingsimpleauthentication.
4|EricssonAB.
AllRightsReserved.
:eldapeldapadd(Handle,Dn,[Attribute])->return_value()Types:Handle=handle()Dn=string()Attribute=attribute()Addanentry.
Theentrymustnotexist.
add(Handle,"cn=BillValentine,ou=people,o=ExampleOrg,dc=example,dc=com",[{"objectclass",["person"]},{"cn",["BillValentine"]},{"sn",["Valentine"]},{"telephoneNumber",["54555500"]}])delete(Handle,Dn)->return_value()Types:Dn=string()Deleteanentry.
delete(Handle,"cn=BillValentine,ou=people,o=ExampleOrg,dc=example,dc=com")mod_add(Type,[Value])->modify_op()Types:Type=string()Value=string()Createanaddmodificationoperation.
mod_delete(Type,[Value])->modify_op()Types:Type=string()Value=string()Createadeletemodificationoperation.
mod_replace(Type,[Value])->modify_op()Types:Type=string()Value=string()Createareplacemodificationoperation.
modify(Handle,Dn,[ModifyOp])->return_value()Types:Dn=string()ModifyOp=modify_op()Modifyanentry.
EricssonAB.
AllRightsReserved.
:eldap|5eldapmodify(Handle,"cn=BillValentine,ou=people,o=ExampleOrg,dc=example,dc=com",[eldap:mod_replace("telephoneNumber",["55555500"]),eldap:mod_add("description",["LDAPHacker"])])modify_password(Handle,Dn,NewPasswd)->return_value()|{ok,GenPasswd}Types:Dn=string()NewPasswd=string()Modifythepasswordofauser.
Seemodify_password/4.
modify_password(Handle,Dn,NewPasswd,OldPasswd)->return_value()|{ok,GenPasswd}Types:Dn=string()NewPasswd=string()OldPasswd=string()GenPasswd=string()Modifythepasswordofauser.
Dn.
Theusertomodify.
Shouldbe""ifthemodifyrequestisfortheuseroftheLDAPsession.
NewPasswd.
Thenewpasswordtoset.
Shouldbe""iftheserveristogeneratethepassword.
Inthiscase,theresultwillbe{ok,GenPasswd}.
OldPasswd.
Sometimesrequiredbyserverpolicyforausertochangetheirpassword.
Ifnotrequired,usemodify_password/3.
modify_dn(Handle,Dn,NewRDN,DeleteOldRDN,NewSupDN)->return_value()Types:Dn=string()NewRDN=string()DeleteOldRDN=boolean()NewSupDN=string()ModifytheDNofanentry.
DeleteOldRDNindicateswhetherthecurrentRDNshouldberemovedfromtheattributelistaftertheoperation.
NewSupDNisthenewparentthattheRDNshallbemovedto.
Iftheoldparentshouldremainasparent,NewSupDNshallbe"".
modify_dn(Handle,"cn=BillValentine,ou=people,o=ExampleOrg,dc=example,dc=com","cn=BillJrValentine",true,"")search(Handle,SearchOptions)->{ok,#eldap_search_result{}}|{ok,{referral,referrals()}}|{error,Reason}Types:SearchOptions=#eldap_search{}|[SearchOption]SearchOption={base,string()}|{filter,filter()}|{scope,scope()}|{attributes,[string()]}|{deref,dereference(types_only,boolean()}|{timeout,integer()}6|EricssonAB.
AllRightsReserved.
:eldapeldapSearchthedirectorywiththesuppliedtheSearchOptions.
Thebaseandfilteroptionsmustbesupplied.
Defaultvalues:scopeiswholeSubtree(),derefisderefAlways(),types_onlyisfalseandtimeoutis0(meaninginfinity).
Filter=eldap:substrings("cn",[{any,"V"}]),search(Handle,[{base,"dc=example,dc=com"},{filter,Filter},{attributes,["cn"]}]),ThetimeoutoptionintheSearchOptionsisfortheldapserver,whilethetimeoutineldap:open/2isusedforeachindividualrequestinthesearchoperation.
baseObject()->scope()Searchbaseobjectonly.
singleLevel()->scope()Searchthespecifiedlevelonly,i.
e.
donotrecurse.
wholeSubtree()->scope()Searchtheentiresubtree.
neverDerefAliases()->dereference()Neverderefrencealiases,treataliasesasentries.
derefAlways()->dereference()Alwaysderefrencealiases.
derefInSearching()->dereference()Derefrencealiasesonlywhensearching.
derefFindingBaseObj()->dereference()Derefrencealiasesonlyinfindingthebase.
present(Type)->filter()Types:Type=string()Createafilterwhichfiltersonattributetypepresence.
substrings(Type,[SubString])->filter()Types:Type=string()SubString={StringPart,string()}StringPart=initial|any|finalCreateafilterwhichfiltersonsubstrings.
equalityMatch(Type,Value)->filter()Types:Type=string()EricssonAB.
AllRightsReserved.
:eldap|7eldapValue=string()Createaequalityfilter.
greaterOrEqual(Type,Value)->filter()Types:Type=string()Value=string()Createagreaterorequalfilter.
lessOrEqual(Type,Value)->filter()Types:Type=string()Value=string()Createalessorequalfilter.
approxMatch(Type,Value)->filter()Types:Type=string()Value=string()Createaapproximationmatchfilter.
extensibleMatch(MatchValue,OptionalAttrs)->filter()Types:MatchValue=string()OptionalAttrs=[Attr]Attr={matchingRule,string()}|{type,string()}|{dnAttributes,boolean()}Createsanextensiblematchfilter.
Forexample,eldap:extensibleMatch("Bar",[{type,"sn"},{matchingRule,"caseExactMatch"}]))createsafilterwhichperformsacaseExactMatchontheattributesnandmatcheswiththevalue"Bar".
ThedefaultvalueofdnAttributesisfalse.
'and'([Filter])->filter()Types:Filter=filter()CreatesafilterwhereallFiltermustbetrue.
'or'([Filter])->filter()Types:Filter=filter()CreateafilterwhereatleastoneoftheFiltermustbetrue.
8|EricssonAB.
AllRightsReserved.
:eldapeldap'not'(Filter)->filter()Types:Filter=filter()Negateafilter.
EricssonAB.
AllRightsReserved.
:eldap|9 
		  
		  
		      
			  
		  
			  			   
			      
			        
			          
			          digital-vm在日本东京机房当前提供1Gbps带宽、2Gbps带宽、10Gbps带宽接入的独立服务器,每个月自带10T免费流量,一个独立IPv4。支持额外购买流量:20T-$30/月、50T-$150/月、100T-$270美元/月;也支持额外购买IPv4,/29-$5/月、/28-$13/月。独立从下单开始一般24小时内可以上架。官方网站:https://digital-vm.com/de...
			         
			       
				  
			     
							   
			      
			        
			          
			          BuyVM商家属于比较老牌的服务商,早年有提供低价年付便宜VPS主机还记得曾经半夜的时候抢购的。但是由于这个商家风控非常严格,即便是有些是正常的操作也会导致被封账户,所以后来陆续无人去理睬,估计被我们风控的抢购低价VPS主机已经手足无措。这两年商家重新调整,而且风控也比较规范,比如才入手他们新上线的流媒体优化VPS主机也没有不适的提示。目前,BuyVM商家有提供新泽西、迈阿密等四个机房的VPS主机...
			         
			       
				  
			     
							   
			      
			        
			          
			          妮妮云的来历妮妮云是 789 陈总 张总 三方共同投资建立的网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑妮妮云的市场定位妮妮云主要代理市场稳定速度的云服务器产品,避免新手购买云服务器的时候众多商家不知道如何选择,妮妮云就帮你选择好了产品,无需承担购买风险,不用担心出现被跑路 被诈骗的情况。妮妮云的售后保证妮妮云退款 通过于合作商的友好协商,云服务器提供2天内全额退款,超过2天不退款 物...
			         
			       
				  
			     
							
			   
			   
ldapserver为你推荐
	在线代理QQ代理服务器怎么弄啊?地址是指IP,端口是什么?有必要该吗?还有用户,密码,都代表什么啊?美要求解锁iPhone苹果美版有锁和无锁的区别美要求解锁iPhone美版解锁的iphone在大陆怎么用人人视频总部基地落户重庆2019.5.30号以后重庆有了新的迁入户口政策,请问外省户口以一般人才方式迁入重庆,可以按揭买房吗flashfxp下载我想下载一个FlashFXP 4.0.0 Build 1510 简体中文版的软件,可是不知道下载地址,希望大家帮帮我?闪拍网关于闪拍网骗人的情况?店铺统计淘宝店运营每天需要统计哪些数据,我要做个表格论坛版块图标论坛版块图标怎么设置?放图片的链接吗?还是?dedecmsdedecms真那么好用,那么强吗如何设置首页安卓手机怎么设置主页,就是点HOME键的时候我想回到指定的第几页页面,
免费域名注册 域名中介 域名空间购买 联通vps 万网域名证书查询 ftp空间 新加坡服务器 themeforest cdn服务器 嘟牛 个人空间申请 howfile 免费防火墙 腾讯实名认证中心 福建铁通 免费智能解析 如何安装服务器系统 超级服务器 无限流量 免费外链相册 更多