আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশনে যান । তথ্য
কি
LDAP নীতিমালা প্রদান করে:
- প্রমাণীকরণ : অনুরোধে সরবরাহ করা ব্যবহারকারীর শংসাপত্রগুলি LDAP প্রদানকারীর শংসাপত্রগুলির সাথে যাচাই করা হয়। LDAP নীতি আপনাকে প্রমাণীকরণের ক্ষেত্রে অনেক নমনীয়তা দেয়, আপনাকে পাসওয়ার্ডের সাথে যেকোনো DN মান ব্যবহার করতে দেয়, এমনকি যদি আপনার পছন্দসই DN মান অনুরোধে না থাকে। উদাহরণস্বরূপ, ধরুন প্রমাণীকরণের জন্য আপনাকে ইমেল / পাসওয়ার্ড ব্যবহার করতে হবে। নিম্নলিখিত বিকল্পগুলি সম্ভব:
- যদি ইমেলটি অনুরোধে থাকে, তাহলে আপনি কেবল LDAP প্রমাণীকরণের জন্য পাসওয়ার্ড দিয়ে এটি ব্যবহার করতে পারেন।
- যদি ইমেলটি অনুরোধে না থাকে, কিন্তু অন্য একটি DN বৈশিষ্ট্য (যেমন ফোন নম্বর) থাকে, তাহলে আপনি LDAP থেকে সংশ্লিষ্ট ইমেলটি পেতে ফোন নম্বরটি ব্যবহার করতে পারেন, তারপর প্রমাণীকরণের জন্য ইমেল / পাসওয়ার্ড ব্যবহার করতে পারেন।
- বিশিষ্ট নাম (DN) অনুসন্ধান : প্রমাণীকরণ ছাড়াও, আপনি অনুরোধে থাকা একটি ব্যবহারকারীর বৈশিষ্ট্য সনাক্ত করতে LDAP নীতি ব্যবহার করতে পারেন, যেমন ইমেল, এবং একটি কোয়েরি সম্পাদন করতে পারেন যা সেই ব্যবহারকারীর জন্য LDAP থেকে অন্যান্য DN বৈশিষ্ট্য পুনরুদ্ধার করে। পুনরুদ্ধার করা DN একটি ভেরিয়েবলে সংরক্ষণ করা হয়।
যখন সুরক্ষিত রিসোর্সে অ্যাক্সেস আপনার LDAP প্রদানকারীর ব্যবহারকারীদের মধ্যেই সীমাবদ্ধ থাকা উচিত—যেমন আপনার অ্যাডমিন ব্যবহারকারী, প্রতিষ্ঠানের ব্যবহারকারী এবং ডেভেলপার—বিশেষ করে যখন OAuth টোকেন অ্যাক্সেস হয় অপ্রয়োজনীয় অথবা খুব বেশি ভারী, তখন LDAP নীতি ব্যবহার করুন। API প্রক্সি প্রবাহে ব্যবহারের জন্য ডোমেন নাম মেটাডেটা পুনরুদ্ধারের জন্যও নীতিটি তৈরি করা হয়েছে।
উদাহরণস্বরূপ, আপনি শুধুমাত্র তখনই একটি API কল এক্সিকিউট করতে পারবেন যখন একজন ব্যবহারকারী LDAP-এর বিরুদ্ধে সফলভাবে প্রমাণীকরণ করা হবে; এবং তারপর ঐচ্ছিকভাবে প্রমাণীকরণ সফল হওয়ার পরে ব্যবহারকারীর জন্য DN (ডোমেন নাম) বৈশিষ্ট্যগুলি পুনরুদ্ধার করতে পারবেন।
আরও তথ্যের জন্য, দেখুন:
- API পরিচালনার জন্য ডিফল্ট LDAP পাসওয়ার্ড নীতি পরিচালনা করা
- " আপনার পাসওয়ার্ড নীতি সম্পর্কে গুরুত্বপূর্ণ তথ্য " Apigee কমিউনিটিতে
নমুনা
ব্যবহারকারীর নাম/পাসওয়ার্ড প্রমাণীকরণ
<Ldap name="4GLdapPo>licy<"
Ld>apRes<ourceldap1/Ld>apRe<source
Auth>enticati<on
UserName ref="request.he>ader.use<rname"/
Password ref=">request.<heade>r.passw<ord&qu>ot;/
< Scopesubtree/Scope
>< Bas>e<DN ref="apigee.baseDN"/B>aseDN< !-- default is> d<c=api>gee,dc=com --
/Authentication
/Ldapএই নমুনাটি একটি LDAP প্রদানকারীর বিরুদ্ধে প্রমাণীকরণ প্রদান করে। নীতিটি অনুরোধ থেকে ব্যবহারকারীর নাম এবং পাসওয়ার্ড প্রমাণীকরণের জন্য LDAP-তে প্রেরণ করে।
ডিএন অ্যাট্রিবিউট প্রমাণীকরণ
<Ldap name="LdapPo>licy<"
Ld>apRes<ourceldap1/Ld>apRe<source
Auth>enticati<on
Password ref="request.he>ader.pas<sword">/
SearchQuerymail={<request.head>er.mail}</Sear>chQuery<
> Scopes<ubtree/Scope
BaseDN>< ref=&q>u<ot;apigee.baseDN"/BaseDN !-- >defau<lt is dc=apigee>,d<c=com> --
/Authentication
/Ldapএই নীতিটি অনুরোধ শিরোনামে ইমেল সহ ব্যবহারকারীর DN পায়, তারপর অনুরোধ শিরোনামে প্রদত্ত পাসওয়ার্ড ব্যবহার করে LDAP-এর বিরুদ্ধে ব্যবহারকারীকে প্রমাণীকরণ করে।
LDAP অনুসন্ধান করা হচ্ছে
<Ldap name="LdapPo>licy&<quot; !-- using a custom LDAP p>rovid<er -- LdapConn>ectorClasscom.custom.ldap.<MyProvider/LdapConn>ector<Class Ld>apReso<urceMyLdap/Ld>apRes<ource<>/span> Searc<h BaseDN ref="><;apigee>.<baseDN"/BaseDN !-- default is> dc=apige<e,dc=com --> SearchQuerymail={<request.head>er.mail}/<SearchQuer>y Att<ributes > < Attrib>uteaddress/At<tribute > < Attr>ibutephone/At<tribute > < Attr>ibutetitl<e/Attribute> </Attr><ibutes> < Scope/S‘cope !-’- d>efaul<t is su>b<tree >-- /Search /Ldap
এই নীতিমালাটি একটি কাস্টম LDAP প্রদানকারীকে উল্লেখ করে। এটি ব্যবহারকারীকে সনাক্ত করার জন্য অনুরোধ শিরোনামে থাকা ইমেল ঠিকানা ব্যবহার করে, তারপর LDAP থেকে ব্যবহারকারীর ঠিকানা, ফোন নম্বর এবং শিরোনাম পুনরুদ্ধার করে। পুনরুদ্ধার করা DN বৈশিষ্ট্যগুলি একটি ভেরিয়েবলে সংরক্ষণ করা হয়। "নীতি-নির্দিষ্ট ভেরিয়েবল" দেখুন।
LDAP অনুসন্ধান এবং DN বৈশিষ্ট্যগুলি পুনরুদ্ধার করতে, অনুরোধে প্রশাসকের শংসাপত্র অন্তর্ভুক্ত থাকতে হবে।
উপাদানের রেফারেন্স
LDAP নীতির উপাদান এবং বৈশিষ্ট্যগুলির বর্ণনা নিচে দেওয়া হল।
উপাদান | বিবরণ |
|---|---|
| পলিসির নাম লেখার জন্য একটি নাম বৈশিষ্ট্য সহ প্যারেন্ট এলিমেন্ট। |
| যখন আপনি একটি কাস্টম LDAP প্রদানকারীর সাথে LDAP নীতি ব্যবহার করেন (Apigee দ্বারা সরবরাহিত নয়), তখন সম্পূর্ণরূপে যোগ্য LDAP সংযোগকারী শ্রেণীটি নির্দিষ্ট করুন। এটি সেই শ্রেণী যেখানে আপনি Apigee এর |
| LDAP রিসোর্সের পরিবেশের নাম লিখুন। আরও তথ্যের জন্য একটি LDAP রিসোর্স তৈরি করুন দেখুন। |
| LDAP এর বেস লেভেল যার অধীনে আপনার সমস্ত ডেটা বিদ্যমান। উদাহরণস্বরূপ, Apigee এর LDAP প্রদানকারীতে, সমস্ত ডেটা
|
|
|
প্রমাণীকরণ | |
| আপনার প্রয়োগ করা প্রমাণীকরণ আচরণের জন্য মূল উপাদান। |
| খালি উপাদান যা নিম্নলিখিত বৈশিষ্ট্যগুলির মধ্যে একটি গ্রহণ করে:
যদি আপনি ব্যবহারকারীর নাম দিয়ে প্রমাণীকরণ না করেন, অথবা অনুরোধে ব্যবহারকারীর নাম অন্তর্ভুক্ত না থাকে, তাহলে আপনার এই উপাদানটি অন্তর্ভুক্ত করার প্রয়োজন নেই। যদি অনুরোধে ব্যবহারকারীর নাম থাকে, কিন্তু আপনি ব্যবহারকারীর নাম ছাড়া অন্য কোনও DN বৈশিষ্ট্য, যেমন ইমেল, ব্যবহার করে কোনও ব্যবহারকারীকে প্রমাণীকরণ করতে চান, তাহলে পাসওয়ার্ডের সাথে ব্যবহারকারীর ইমেল যুক্ত করার জন্য একটি |
| খালি উপাদান যা নিম্নলিখিত বৈশিষ্ট্যগুলির মধ্যে একটি গ্রহণ করে:
|
| যদি আপনি ব্যবহারকারীর নাম ছাড়া অন্য কোনও DN বৈশিষ্ট্য ব্যবহার করে প্রমাণীকরণ করতে চান, যেমন ইমেল, তাহলে অনুরোধ থেকে (যেমন ব্যবহারকারীর নাম) একটি DN বৈশিষ্ট্য পেতে LDAP নীতি কনফিগার করুন, যা LDAP-তে ব্যবহারকারীকে সনাক্ত করতে, ইমেলটি পুনরুদ্ধার করতে এবং ব্যবহারকারীকে প্রমাণীকরণ করতে ব্যবহৃত হয়। উদাহরণস্বরূপ, ধরে নিচ্ছি যে LDAP ইমেল ঠিকানা সংরক্ষণের জন্য একটি "মেইল" বৈশিষ্ট্য সংজ্ঞায়িত করে: |
অনুসন্ধান করুন | |
| আপনার প্রয়োগ করা অনুসন্ধান আচরণের জন্য মূল উপাদান। |
| অনুরোধ বা প্রতিক্রিয়ায় মেটাডেটা সহ ব্যবহারকারীকে সনাক্ত করে, আপনি LDAP থেকে ব্যবহারকারীর জন্য অতিরিক্ত DN বৈশিষ্ট্য পুনরুদ্ধার করতে এই উপাদানটি ব্যবহার করতে পারেন। উদাহরণস্বরূপ, যদি অনুরোধে ব্যবহারকারীর ইমেল থাকে এবং আপনার LDAP ব্যবহারকারীর ইমেল ঠিকানা সংরক্ষণের জন্য একটি এই কোয়েরিটি অনুরোধে থাকা ইমেলের সাথে মিলে যাওয়া একটি ইমেলের জন্য LDAP অনুসন্ধান করে এবং নীতিটি এখন অ্যাট্রিবিউট উপাদান ব্যবহার করে সেই ব্যবহারকারীর জন্য অতিরিক্ত DN অ্যাট্রিবিউট পুনরুদ্ধার করতে পারে। |
| ব্যবহারকারীর জন্য যে DN মেটাডেটা পুনরুদ্ধার করতে চান তা সনাক্ত করতে এক বা একাধিক উদাহরণস্বরূপ, অ্যাট্রিবিউট মান হল আপনার LDAP-তে সংজ্ঞায়িত DN অ্যাট্রিবিউটের নাম। <Attributes> <Attribute>address</Attribute> <Attribute>phone</Attribute> <Attribute>title</Attribute> </Attributes> |
ব্যবহারবিধি
Apigee Edge for Private Cloud আপনাকে API কলগুলিতে একটি LDAP প্রদানকারীর সুবিধা নিতে দেয়। LDAP নীতির সাহায্যে, অ্যাপ্লিকেশনগুলি LDAP-তে সংরক্ষিত ব্যবহারকারীদের বিরুদ্ধে শংসাপত্র প্রমাণীকরণ করতে পারে এবং আপনি LDAP থেকে বিশিষ্ট নাম (DN) পুনরুদ্ধার করতে পারেন—প্রতিটি ব্যবহারকারীর সাথে সম্পর্কিত মেটাডেটা, বা বৈশিষ্ট্য, যেমন ইমেল, ঠিকানা এবং ফোন নম্বর। ফিরে আসা DN API প্রক্সি দ্বারা আরও ব্যবহারের জন্য একটি ভেরিয়েবলে সংরক্ষণ করা হয়।
একটি LDAP রিসোর্স তৈরি করুন
LDAP নীতিটি Apigee Edge-এ আপনার তৈরি করা একটি LDAP রিসোর্স ব্যবহার করে। একটি LDAP রিসোর্স আপনার LDAP রিপোজিটরিতে সংযোগের তথ্য সরবরাহ করে।
LDAP রিসোর্স তৈরি এবং পরিচালনা করতে, নিম্নলিখিত API এবং পেলোড ব্যবহার করুন:
এপিআই
একটি LDAP রিসোর্স তৈরি করুন ( POST ) অথবা সমস্ত LDAP রিসোর্স তালিকা ( GET ) করুন:
/v1/organizations/org_name/environments/environment/ldapresources
একটি LDAP রিসোর্সের ( GET ), POST , এবং Delete , ( DELETE ) বিবরণ পান:
/v1/organizations/org_name/environments/environment/ldapresources/ldap_resource_name
পেলোড
ব্যবহারের মন্তব্য সহ একটি নমুনা XML পেলোড নিচে দেওয়া হল।
<LdapResource name="l>dap<1" >Conne<ction> Ho<sts !-- port is optional: defaults to 389 for ldap:// and 636 for l>daps://< -- Host >port=&q<uot;6>36&qu<ot;foo>.com/<Host />Hosts< SSLEna>b<ledfalse/SSLEnabled !-- optional, >defau<lts to >f<alse -- > < Version3/Version !-- optio>nal, <defaults to 3->- <Authentications>i<mple/Authentication !-- optional, only> simp<le supported -- > ConnectionPr<oviderjndi|unboundi>d</ConnectionProv>ider <!-- required >-- ServerSetTypesingle|<round robin|fa>i<lover/ServerSetType !-- not ap>plica<ble for jndi -- !-- If using a custom LDAP provider, the fully> qual<ified class: -- > LdapConnectorClasscom.cu<stom.ldap.MyProvide>r/L<dapConnecto>rCl<ass /Connection Connec>t<Pool enabled="true" !-- enabled is> opti<onal, d>efaul<ts to tr>u<e -- Timeout30000/Timeout !-- optional, in milliseco>nds; <if not >se<t, no ti>m<eout -- Maxsize50/Maxsize !-- optional; if >not s<et, no m>ax< connecti>o<ns -- Prefsize30/Prefsize !-- optiona>l; if< not set><, no pref> <size -- Initsize/Initsize !-- optional>; if <not set,>< defaults> <to 1 -- Protocol/Protocol !-- optional; if not s>et,< defaults to> <39;ss>l pla<in>' -- /ConnectPool A<dmi>n < DNcn=ma>nager,<dc=apigee>,dc<=com/D>N< Password>secret/Password /Admin /LdapResource
কার্ল উদাহরণ: একটি LDAP রিসোর্স তৈরি করুন
নিম্নলিখিত উদাহরণটি ldap1 নামে একটি LDAP রিসোর্স তৈরি করে।
curl -X POST -H "Content-Type: application/xml" \ https://api.enterprise.apigee.com/v1/organizations/myorg/environments/test/ldapresources \ -u apigee_email:passwor<d -d \ 'LdapResourc>e nam<e="ld>ap1&quo<t; > Conne<ctio>n < Host>s < Hostf>oo.com/<Host > /Hos<ts SS>LEnable<dfalse/>S<SLEnable>d < Version3/Vers>ion < Authenticat>ionsimp<le/Authentication > Con<nectionProviderunbo>undid/C<onnectionProv>ider <ServerSetTyper>ound <robin/Serve>rSetT<ype /Connection Co>nnectPo<ol enab>led=&<quot;tru>e"< >Ti<meout300>00/Time<out > <Maxsize50>/Maxsiz<e ><Prefsize3>0/Prefs<ize >< Initsiz>e/Ini<tsize >Proto<col/P>rotocol< > /ConnectPool Admin < > DNcn=<manager,>dc=api<gee,dc=co>m/DN < >Pas<swordsecret/P>assword /Admin /LdapResource'
প্রতিক্রিয়া কোড
পলিসিটি সাফল্য বা ব্যর্থতার জন্য যে HTML প্রতিক্রিয়া কোডগুলি প্রদান করে তা নিম্নরূপ:
- সাফল্য : ২০০
- ব্যর্থতা : 401
এজ ফর প্রাইভেট ক্লাউডে একটি কাস্টম LDAP প্রদানকারী ব্যবহার করা হচ্ছে
একটি কাস্টম LDAP প্রদানকারী ব্যবহার করা
Apigee Edge for Private Cloud-এ একটি LDAP প্রোভাইডার রয়েছে যা ইতিমধ্যেই LDAP পলিসির সাথে ইন্টারঅ্যাক্ট করার জন্য কনফিগার করা আছে। তবে, যদি আপনি একটি কাস্টম LDAP প্রোভাইডার ব্যবহার করেন, তাহলে আপনাকে অবশ্যই প্রোভাইডারকে LDAP পলিসি সমর্থন করার জন্য সক্ষম করতে হবে। এটি করার জন্য:
- আপনার LDAP প্রোভাইডার ক্লাসে,
ExternalLdapConProviderইন্টারফেসটি বাস্তবায়ন করুন।public interface ExternalLdapConProvider { void doAuthentication(LdapBean LlapBean, String userDN, String password, String baseDN); void doSearchAndAuthentication(LdapBean LlapBean, String password, String baseDN, String query, int scope); Collection<Map<String, String[]>> doSearch(LdapBean LlapBean, String query, String baseDN, Collection<String> requiredAttributes, int scope); void closeConnections(); } - পলিসি কনফিগারেশনের
<LdapConnectorClass>এ (পরবর্তী বিভাগগুলিতে), আপনার কাস্টম LDAP প্রদানকারীর সম্পূর্ণরূপে যোগ্য শ্রেণীর নাম যোগ করুন। - এই ফাইলটি ডাউনলোড করুন: custom-ldap.jar_.zip । (আপনাকে ডান-ক্লিক করে Save As নির্বাচন করতে হতে পারে।)
- এটি আনজিপ করুন।
- আপনার পরিবেশে custom-ldap.jar ফাইলটি যোগ করুন এবং নিশ্চিত করুন যে এটি আপনার ক্লাসপাথে আছে।
- আপনার LDAP প্রদানকারীর জন্য একটি পরিবেশগত সম্পদ তৈরি করুন। আপনি LDAP নীতির
<LdapResource>উপাদানে পরিবেশগত সম্পদের নাম ব্যবহার করবেন।
জাভার জন্য UnboundID LDAP SDK ব্যবহার করা
আপনি LDAP নীতির সাথে UnboundID LDAP SDK ব্যবহার করতে পারেন, তবে আপনাকে প্রথমে 2.3.1 সংস্করণ ডাউনলোড করতে হবে এবং এটি আপনার প্রতিটি মেসেজ প্রসেসরের ক্লাসপাথে যুক্ত করতে হবে।
LDAP নীতির সাথে UnboundID LDAP SDK ব্যবহার করতে:
- একটি ব্রাউজার খুলুন এবং UnboundID LDAP SDK এর জন্য Sourceforge ফাইল রিপোজিটরিতে নেভিগেট করুন:
https://sourceforge.net/projects/ldap-sdk/files/
- SDK এর 2.3.1 সংস্করণ (SE অথবা স্ট্যান্ডার্ড সংস্করণ ) খুঁজুন এবং সেই সংস্করণের জন্য ZIP ফাইলটি ডাউনলোড করুন। উদাহরণস্বরূপ, "unboundid-ldapsdk-2.3.1-se.zip" ডাউনলোড করুন।
- SDK ZIP ফাইল থেকে JAR ফাইলটি বের করুন, যেমনটি নিম্নলিখিত উদাহরণে দেখানো হয়েছে:
unzip -j -d ~/tmp ~/Downloads/unboundid-ldapsdk-2.3.1-se.zip unboundid-ldapsdk-2.3.1-se/unboundid-ldapsdk-se.jar
এই কমান্ডটি শুধুমাত্র JAR ফাইলটি ~/tmp ডিরেক্টরিতে এক্সট্র্যাক্ট করে। এটি
-jদিয়ে ডিরেক্টরি স্ট্রাকচারটি ড্রপ করে, যদিও এটি ঐচ্ছিক। - প্রতিটি মেসেজ প্রসেসর নোডে:
- JAR ফাইলটি Message Processor এর
/opt/apigee/edge-gateway/lib/thirdpartyডিরেক্টরিতে কপি করুন। - প্রয়োজনে, Apigee ব্যবহারকারীকে JAR ফাইলে অনুমতি দিন যাতে মেসেজ প্রসেসর এটি অ্যাক্সেস করতে পারে।
এজ
/opt/apigee/edge-gateway/lib/thirdpartyডিরেক্টরিতে থাকা সমস্ত তৃতীয় পক্ষের লাইব্রেরি ক্লাসপাথে যোগ করে। - JAR ফাইলটি Message Processor এর
- মেসেজ প্রসেসর পুনরায় চালু করুন:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
প্রবাহ ভেরিয়েবল
একটি SearchQuery দ্বারা পূরণ করা LDAP পলিসি ভেরিয়েবলগুলি নিম্নরূপ।
পরিবর্তনশীল | বিবরণ |
|---|---|
ldap.policyName.execution.success | পলিসিটি কার্যকর হওয়ার পর, ফলাফলের উপর নির্ভর করে এই ফ্লো ভেরিয়েবলে "true" বা "false" এর একটি মান থাকে। |
ldap.policyName.search.result[index]. attribute.attrName[index]=value | এই চলকের নমনীয় বিন্যাস, বিশেষ করে সূচক: একাধিক বৈশিষ্ট্যের জন্য হিসাব করে, সেইসাথে একাধিক মান সহ বৈশিষ্ট্যের জন্যও। সূচক হল এমন একটি সংখ্যা যা 1 থেকে শুরু হয়। যদি কোনও সূচক সংখ্যা প্রদান না করা হয়, তাহলে ডিফল্ট সূচক সংখ্যা হল 1। যদি পলিসি ঠিকানা, ফোন এবং ইমেল ফেরত দেয়, তাহলে আপনি এই ভেরিয়েবলগুলি ব্যবহার করে প্রথম বৈশিষ্ট্য এবং মান পুনরুদ্ধার করতে পারেন: ldap.policyName.search.result.attribute.address ldap.policyName.search.result.attribute.phone ldap.policyName.search.result.attribute.email যদি আপনি অনুসন্ধান ফলাফলে তৃতীয় ঠিকানা বৈশিষ্ট্যটি পুনরুদ্ধার করতে চান, তাহলে আপনি এটি ব্যবহার করবেন: ldap.policyName.search.result[3].attribute.address যদি কোন অ্যাট্রিবিউটের একাধিক মান থাকে (উদাহরণস্বরূপ, যদি কোন ব্যবহারকারীর একাধিক ইমেল ঠিকানা থাকে), তাহলে আপনি এই ফলাফল থেকে দ্বিতীয় ইমেল ঠিকানাটি পুনরুদ্ধার করতে পারবেন: ldap.policyName.search.result.attribute.mail[2] |
ত্রুটি কোড
এজ নীতি থেকে ফিরে আসা ত্রুটিগুলি ত্রুটি কোড রেফারেন্সে বর্ণিত একটি সামঞ্জস্যপূর্ণ বিন্যাস অনুসরণ করে।
এই নীতি নিম্নলিখিত ত্রুটি কোড ব্যবহার করে:
| ভুল সংকেত | বার্তা |
|---|---|
InvalidAttributeName | Invalid attribute name {0}. |
InvalidSearchBase | Search base can not be empty. |
InvalidValueForPassword | Invalid value for password field. It can not be empty. |
InvalidSearchScope | Invalid scope {0}. Allowed scopes are {1}. |
InvalidUserCredentials | Invalid user credentials. |
InvalidExternalLdapReference | Invalid external ldap reference {0}. |
LdapResourceNotFound | Ldap resource {0} not found. |
BaseDNRequired | Base DN required. |
OnlyReferenceOrValueIsAllowed | Only value or reference is allowed for {0}. |
AttributesRequired | At least one attribute required for search action. |
UserNameIsNull | User name is null. |
SearchQueryAndUserNameCannotBePresent | Both search query and username can not be present in the authentication action. Please specify either one of them. |