LDAP নীতি

আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশনে যান
তথ্য

কি

LDAP নীতিমালা প্রদান করে:

  • প্রমাণীকরণ : অনুরোধে সরবরাহ করা ব্যবহারকারীর শংসাপত্রগুলি LDAP প্রদানকারীর শংসাপত্রগুলির সাথে যাচাই করা হয়। LDAP নীতি আপনাকে প্রমাণীকরণের ক্ষেত্রে অনেক নমনীয়তা দেয়, আপনাকে পাসওয়ার্ডের সাথে যেকোনো DN মান ব্যবহার করতে দেয়, এমনকি যদি আপনার পছন্দসই DN মান অনুরোধে না থাকে। উদাহরণস্বরূপ, ধরুন প্রমাণীকরণের জন্য আপনাকে ইমেল / পাসওয়ার্ড ব্যবহার করতে হবে। নিম্নলিখিত বিকল্পগুলি সম্ভব:
    • যদি ইমেলটি অনুরোধে থাকে, তাহলে আপনি কেবল LDAP প্রমাণীকরণের জন্য পাসওয়ার্ড দিয়ে এটি ব্যবহার করতে পারেন।
    • যদি ইমেলটি অনুরোধে না থাকে, কিন্তু অন্য একটি DN বৈশিষ্ট্য (যেমন ফোন নম্বর) থাকে, তাহলে আপনি LDAP থেকে সংশ্লিষ্ট ইমেলটি পেতে ফোন নম্বরটি ব্যবহার করতে পারেন, তারপর প্রমাণীকরণের জন্য ইমেল / পাসওয়ার্ড ব্যবহার করতে পারেন।
  • বিশিষ্ট নাম (DN) অনুসন্ধান : প্রমাণীকরণ ছাড়াও, আপনি অনুরোধে থাকা একটি ব্যবহারকারীর বৈশিষ্ট্য সনাক্ত করতে LDAP নীতি ব্যবহার করতে পারেন, যেমন ইমেল, এবং একটি কোয়েরি সম্পাদন করতে পারেন যা সেই ব্যবহারকারীর জন্য LDAP থেকে অন্যান্য DN বৈশিষ্ট্য পুনরুদ্ধার করে। পুনরুদ্ধার করা DN একটি ভেরিয়েবলে সংরক্ষণ করা হয়।

যখন সুরক্ষিত রিসোর্সে অ্যাক্সেস আপনার LDAP প্রদানকারীর ব্যবহারকারীদের মধ্যেই সীমাবদ্ধ থাকা উচিত—যেমন আপনার অ্যাডমিন ব্যবহারকারী, প্রতিষ্ঠানের ব্যবহারকারী এবং ডেভেলপার—বিশেষ করে যখন OAuth টোকেন অ্যাক্সেস হয় অপ্রয়োজনীয় অথবা খুব বেশি ভারী, তখন LDAP নীতি ব্যবহার করুন। API প্রক্সি প্রবাহে ব্যবহারের জন্য ডোমেন নাম মেটাডেটা পুনরুদ্ধারের জন্যও নীতিটি তৈরি করা হয়েছে।

উদাহরণস্বরূপ, আপনি শুধুমাত্র তখনই একটি API কল এক্সিকিউট করতে পারবেন যখন একজন ব্যবহারকারী LDAP-এর বিরুদ্ধে সফলভাবে প্রমাণীকরণ করা হবে; এবং তারপর ঐচ্ছিকভাবে প্রমাণীকরণ সফল হওয়ার পরে ব্যবহারকারীর জন্য DN (ডোমেন নাম) বৈশিষ্ট্যগুলি পুনরুদ্ধার করতে পারবেন।

আরও তথ্যের জন্য, দেখুন:

নমুনা

ব্যবহারকারীর নাম/পাসওয়ার্ড প্রমাণীকরণ

<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

পলিসির নাম লেখার জন্য একটি নাম বৈশিষ্ট্য সহ প্যারেন্ট এলিমেন্ট।

LdapConnectorClass

যখন আপনি একটি কাস্টম LDAP প্রদানকারীর সাথে LDAP নীতি ব্যবহার করেন (Apigee দ্বারা সরবরাহিত নয়), তখন সম্পূর্ণরূপে যোগ্য LDAP সংযোগকারী শ্রেণীটি নির্দিষ্ট করুন। এটি সেই শ্রেণী যেখানে আপনি Apigee এর ExternalLdapConProvider ইন্টারফেসটি বাস্তবায়ন করেছেন।

LdapResource

LDAP রিসোর্সের পরিবেশের নাম লিখুন। আরও তথ্যের জন্য একটি LDAP রিসোর্স তৈরি করুন দেখুন।

BaseDN

LDAP এর বেস লেভেল যার অধীনে আপনার সমস্ত ডেটা বিদ্যমান। উদাহরণস্বরূপ, Apigee এর LDAP প্রদানকারীতে, সমস্ত ডেটা dc=apigee,dc=com অধীনে থাকে।

  • ref : apigee.baseDN এর মতো BaseDN মান ধারণকারী একটি ফ্লো ভেরিয়েবল নির্দিষ্ট করতে ব্যবহার করুন। একটি স্পষ্ট BaseDN মানের চেয়ে ref অগ্রাধিকার পায়। যদি আপনি ref এবং value উভয়ই নির্দিষ্ট করেন, তাহলে ref অগ্রাধিকার পাবে। যদি রানটাইমে ref সমাধান না করে, তাহলে value ব্যবহার করা হবে।

Scope

  • অবজেক্ট : প্রমাণীকরণ বা অনুসন্ধান শুধুমাত্র LDAP এর বেস লেভেলে ঘটে।
  • onelevel : প্রমাণীকরণ বা অনুসন্ধান বেস লেভেলের এক স্তর নীচে ঘটে।
  • সাবট্রি (ডিফল্ট): প্রমাণীকরণ বা অনুসন্ধান বেস স্তরে এবং বেসের নীচে সম্পূর্ণরূপে পুনরাবৃত্তভাবে ঘটে।

প্রমাণীকরণ

Authentication

আপনার প্রয়োগ করা প্রমাণীকরণ আচরণের জন্য মূল উপাদান।

UserName

খালি উপাদান যা নিম্নলিখিত বৈশিষ্ট্যগুলির মধ্যে একটি গ্রহণ করে:

  • রেফারেন্স : অনুরোধে ব্যবহারকারীর নাম উল্লেখ করা, যেমন request.header.username
  • মান : ব্যবহারকারীর নাম নিজেই

যদি আপনি ব্যবহারকারীর নাম দিয়ে প্রমাণীকরণ না করেন, অথবা অনুরোধে ব্যবহারকারীর নাম অন্তর্ভুক্ত না থাকে, তাহলে আপনার এই উপাদানটি অন্তর্ভুক্ত করার প্রয়োজন নেই।

যদি অনুরোধে ব্যবহারকারীর নাম থাকে, কিন্তু আপনি ব্যবহারকারীর নাম ছাড়া অন্য কোনও DN বৈশিষ্ট্য, যেমন ইমেল, ব্যবহার করে কোনও ব্যবহারকারীকে প্রমাণীকরণ করতে চান, তাহলে পাসওয়ার্ডের সাথে ব্যবহারকারীর ইমেল যুক্ত করার জন্য একটি SearchQuery অন্তর্ভুক্ত করুন। LDAP নীতিটি সংশ্লিষ্ট ইমেল ঠিকানার জন্য LDAP প্রদানকারীকে জিজ্ঞাসা করার জন্য ব্যবহারকারীর নাম ব্যবহার করে, যা পরে প্রমাণীকরণের জন্য ব্যবহৃত হয়।

Password

খালি উপাদান যা নিম্নলিখিত বৈশিষ্ট্যগুলির মধ্যে একটি গ্রহণ করে:

  • রেফারেন্স : অনুরোধে থাকা পাসওয়ার্ডের একটি রেফারেন্স, যেমন request.header.password
  • মান : এনক্রিপ্ট করা পাসওয়ার্ড নিজেই

SearchQuery

যদি আপনি ব্যবহারকারীর নাম ছাড়া অন্য কোনও DN বৈশিষ্ট্য ব্যবহার করে প্রমাণীকরণ করতে চান, যেমন ইমেল, তাহলে অনুরোধ থেকে (যেমন ব্যবহারকারীর নাম) একটি DN বৈশিষ্ট্য পেতে LDAP নীতি কনফিগার করুন, যা LDAP-তে ব্যবহারকারীকে সনাক্ত করতে, ইমেলটি পুনরুদ্ধার করতে এবং ব্যবহারকারীকে প্রমাণীকরণ করতে ব্যবহৃত হয়।

উদাহরণস্বরূপ, ধরে নিচ্ছি যে LDAP ইমেল ঠিকানা সংরক্ষণের জন্য একটি "মেইল" বৈশিষ্ট্য সংজ্ঞায়িত করে:

<SearchQuery>mail={request.header.mail}</SearchQuery>

অনুসন্ধান করুন

Search

আপনার প্রয়োগ করা অনুসন্ধান আচরণের জন্য মূল উপাদান।

SearchQuery

অনুরোধ বা প্রতিক্রিয়ায় মেটাডেটা সহ ব্যবহারকারীকে সনাক্ত করে, আপনি LDAP থেকে ব্যবহারকারীর জন্য অতিরিক্ত DN বৈশিষ্ট্য পুনরুদ্ধার করতে এই উপাদানটি ব্যবহার করতে পারেন। উদাহরণস্বরূপ, যদি অনুরোধে ব্যবহারকারীর ইমেল থাকে এবং আপনার LDAP ব্যবহারকারীর ইমেল ঠিকানা সংরক্ষণের জন্য একটি mail বৈশিষ্ট্য সংজ্ঞায়িত করে, তাহলে আপনি নিম্নলিখিত সেটিংটি ব্যবহার করবেন:

<SearchQuery>mail={request.header.mail}</SearchQuery>

এই কোয়েরিটি অনুরোধে থাকা ইমেলের সাথে মিলে যাওয়া একটি ইমেলের জন্য LDAP অনুসন্ধান করে এবং নীতিটি এখন অ্যাট্রিবিউট উপাদান ব্যবহার করে সেই ব্যবহারকারীর জন্য অতিরিক্ত DN অ্যাট্রিবিউট পুনরুদ্ধার করতে পারে।

Attributes

ব্যবহারকারীর জন্য যে DN মেটাডেটা পুনরুদ্ধার করতে চান তা সনাক্ত করতে এক বা একাধিক <Attribute> উপাদান ব্যবহার করুন। কমপক্ষে একটি বৈশিষ্ট্য প্রয়োজন।

উদাহরণস্বরূপ, SearchQuery ব্যবহারকারীকে শনাক্ত করার পর, নীতিটি এখন ব্যবহারকারীর জন্য ঠিকানা, ফোন নম্বর এবং ব্যবহারকারীর শিরোনামের মতো 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 পলিসি সমর্থন করার জন্য সক্ষম করতে হবে। এটি করার জন্য:

  1. আপনার 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();
    }
  2. পলিসি কনফিগারেশনের <LdapConnectorClass> এ (পরবর্তী বিভাগগুলিতে), আপনার কাস্টম LDAP প্রদানকারীর সম্পূর্ণরূপে যোগ্য শ্রেণীর নাম যোগ করুন।
  3. এই ফাইলটি ডাউনলোড করুন: custom-ldap.jar_.zip । (আপনাকে ডান-ক্লিক করে Save As নির্বাচন করতে হতে পারে।)
  4. এটি আনজিপ করুন।
  5. আপনার পরিবেশে custom-ldap.jar ফাইলটি যোগ করুন এবং নিশ্চিত করুন যে এটি আপনার ক্লাসপাথে আছে।
  6. আপনার LDAP প্রদানকারীর জন্য একটি পরিবেশগত সম্পদ তৈরি করুন। আপনি LDAP নীতির <LdapResource> উপাদানে পরিবেশগত সম্পদের নাম ব্যবহার করবেন।

জাভার জন্য UnboundID LDAP SDK ব্যবহার করা

আপনি LDAP নীতির সাথে UnboundID LDAP SDK ব্যবহার করতে পারেন, তবে আপনাকে প্রথমে 2.3.1 সংস্করণ ডাউনলোড করতে হবে এবং এটি আপনার প্রতিটি মেসেজ প্রসেসরের ক্লাসপাথে যুক্ত করতে হবে।

LDAP নীতির সাথে UnboundID LDAP SDK ব্যবহার করতে:

  1. একটি ব্রাউজার খুলুন এবং UnboundID LDAP SDK এর জন্য Sourceforge ফাইল রিপোজিটরিতে নেভিগেট করুন:
    https://sourceforge.net/projects/ldap-sdk/files/
  2. SDK এর 2.3.1 সংস্করণ (SE অথবা স্ট্যান্ডার্ড সংস্করণ ) খুঁজুন এবং সেই সংস্করণের জন্য ZIP ফাইলটি ডাউনলোড করুন। উদাহরণস্বরূপ, "unboundid-ldapsdk-2.3.1-se.zip" ডাউনলোড করুন।
  3. 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 দিয়ে ডিরেক্টরি স্ট্রাকচারটি ড্রপ করে, যদিও এটি ঐচ্ছিক।

  4. প্রতিটি মেসেজ প্রসেসর নোডে:
    1. JAR ফাইলটি Message Processor এর /opt/apigee/edge-gateway/lib/thirdparty ডিরেক্টরিতে কপি করুন।
    2. প্রয়োজনে, Apigee ব্যবহারকারীকে JAR ফাইলে অনুমতি দিন যাতে মেসেজ প্রসেসর এটি অ্যাক্সেস করতে পারে।
    3. এজ /opt/apigee/edge-gateway/lib/thirdparty ডিরেক্টরিতে থাকা সমস্ত তৃতীয় পক্ষের লাইব্রেরি ক্লাসপাথে যোগ করে।

    4. মেসেজ প্রসেসর পুনরায় চালু করুন:
      /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.