অ্যাপাচি নিফাই (Apache NiFi) একটি শক্তিশালী ডেটা ইন্টিগ্রেশন প্ল্যাটফর্ম যা ডেটা প্রোসেসিং এবং ম্যানেজমেন্টের জন্য ব্যবহৃত হয়। এর নিরাপত্তা ব্যবস্থাপনা আরও শক্তিশালী করতে, নিফাই LDAP (Lightweight Directory Access Protocol) এবং Kerberos ইন্টিগ্রেশন সমর্থন করে। LDAP এবং Kerberos দুটি গুরুত্বপূর্ণ প্রযুক্তি যা ব্যবহারকারীর অথেনটিকেশন এবং অথরাইজেশনের জন্য ব্যবহৃত হয়। নিফাই এই দুটি প্রযুক্তির সঙ্গে ইন্টিগ্রেশন করে নিরাপদ ডেটা ফ্লো পরিচালনা করতে সক্ষম হয়।
এই গাইডে, আমরা LDAP এবং Kerberos এর সঙ্গে নিফাই ইন্টিগ্রেশন করার প্রক্রিয়া আলোচনা করব।
LDAP একটি নেটওয়ার্ক প্রোটোকল যা ব্যবহারকারীদের এবং অন্যান্য সংস্থার তথ্যকে সংগ্রহ ও পরিচালনা করতে ব্যবহৃত হয়। এটি ডিরেক্টরি সার্ভিস যেমন Microsoft Active Directory (AD) এবং OpenLDAP ব্যবহার করে নিরাপদ অথেনটিকেশন এবং অথরাইজেশন সুবিধা প্রদান করে।
নিফাই নিরাপত্তা কনফিগারেশন
প্রথমে, নিফাইয়ের নিরাপত্তা কনফিগারেশন ফাইল (conf/login-identity-providers.xml
) এ LDAP কানেকশন কনফিগার করতে হবে।
<identity-provider>
<identifier>ldap-provider</identifier>
<class>org.apache.nifi.ldap.LdapLoginIdentityProvider</class>
<ldap-url>ldap://<LDAP_SERVER>:<PORT></ldap-url>
<search-base>ou=users,dc=example,dc=com</search-base>
<search-filter>(uid={0})</search-filter>
<user-search-filter>(&(uid={0})(objectClass=person))</user-search-filter>
<group-search-filter>(&(objectClass=groupOfNames)(member={0}))</group-search-filter>
<bind-dn>cn=admin,dc=example,dc=com</bind-dn>
<bind-password>password</bind-password>
</identity-provider>
কনফিগারেশন ব্যাখ্যা:
ldap-url
: LDAP সার্ভারের URL এবং পোর্ট।search-base
: LDAP ডিরেক্টরির বেস DN (Distinguished Name) যেখানে ইউজারদের অনুসন্ধান করা হবে।user-search-filter
: ইউজারদের অনুসন্ধান করার জন্য LDAP ফিল্টার।group-search-filter
: গ্রুপ অনুসন্ধানের জন্য ফিল্টার।bind-dn
এবং bind-password
: LDAP সার্ভারে লগইন করার জন্য ব্যবহৃত অ্যাডমিন ক্রেডেনশিয়াল।নিফাই সার্ভিস রিস্টার্ট করা
কনফিগারেশন সম্পন্ন হলে নিফাই সার্ভিসটি রিস্টার্ট করতে হবে:
./bin/nifi.sh restart
Kerberos একটি নেটওয়ার্ক অথেনটিকেশন প্রোটোকল যা ক্লায়েন্ট এবং সার্ভারের মধ্যে নিরাপদ অথেনটিকেশন এবং যোগাযোগের জন্য ব্যবহৃত হয়। এটি একটি অত্যন্ত নিরাপদ প্রোটোকল, যা টোকেন ব্যবহার করে ব্যবহারকারীদের শনাক্ত করে এবং তাদের জন্য অ্যাক্সেস অনুমোদন প্রদান করে।
Kerberos Client Configuration (krb5.conf)
প্রথমে, আপনাকে নিফাইয়ের সার্ভারের জন্য Kerberos কনফিগারেশন ফাইল (krb5.conf
) কনফিগার করতে হবে, যাতে Kerberos সার্ভারের তথ্য এবং ডোমেইন জানা যায়। এই ফাইলটি সাধারণত /etc/krb5.conf
বা নির্দিষ্ট কনফিগারেশন ডিরেক্টরিতে থাকে।
উদাহরণ:
[libdefaults]
default_realm = EXAMPLE.COM
dns_lookup_realm = false
dns_lookup_kdc = false
[realms]
EXAMPLE.COM = {
kdc = kerberos.example.com
admin_server = kerberos.example.com
}
[domain_realm]
.example.com = EXAMPLE.COM
example.com = EXAMPLE.COM
Kerberos Authentication Configuration in NiFi
নিফাইতে Kerberos ইন্টিগ্রেশন করতে হলে nifi.properties
ফাইলে নিম্নলিখিত কনফিগারেশন করতে হবে:
nifi.security.user.kerberos.realm=EXAMPLE.COM
nifi.security.user.kerberos.keytab=/path/to/kerberos.keytab
nifi.security.user.kerberos.principal=nifi/hostname@EXAMPLE.COM
nifi.security.auth.provider.class=org.apache.nifi.kerberos.KerberosAuthenticationProvider
কনফিগারেশন ব্যাখ্যা:
kerberos.realm
: Kerberos ডোমেইনের নাম।kerberos.keytab
: ব্যবহারকারী বা সার্ভারের জন্য Kerberos কীট্যাব ফাইলের পাথ।kerberos.principal
: নিফাই সার্ভিসের Kerberos প্রিন্সিপাল (উদাহরণস্বরূপ, nifi/hostname@EXAMPLE.COM
)।নিফাই সার্ভিস রিস্টার্ট
কনফিগারেশন সম্পন্ন হলে নিফাই সার্ভিস পুনরায় রিস্টার্ট করতে হবে:
./bin/nifi.sh restart
nifi.properties
কনফিগারেশন ঠিকভাবে সেট করেন, তবে লগইন প্রক্রিয়া Kerberos প্রটোকল ব্যবহার করবে।বৈশিষ্ট্য | LDAP | Kerberos |
---|---|---|
প্রকার | প্রাথমিকভাবে অথেনটিকেশন এবং ডিরেক্টরি সার্ভিস | শক্তিশালী নেটওয়ার্ক অথেনটিকেশন প্রোটোকল |
প্রক্রিয়া | ইউজার এবং গ্রুপ তথ্য সংগ্রহ এবং যাচাই | সিকিউর টোকেনের মাধ্যমে ব্যবহারকারীর প্রমাণীকরণ |
ইন্টিগ্রেশন | ডিরেক্টরি সার্ভিসের সঙ্গে সহজে ইন্টিগ্রেশন | নিরাপদ সেশন প্রতিষ্ঠা এবং টোকেন অথেনটিকেশন |
ব্যবহার | Active Directory, OpenLDAP ইত্যাদি | শক্তিশালী নেটওয়ার্ক নিরাপত্তা, ডিস্ট্রিবিউটেড অ্যাপ্লিকেশন |
অ্যাপাচি নিফাই LDAP এবং Kerberos ইন্টিগ্রেশন সমর্থন করে, যা ইউজার অথেনটিকেশন এবং অথরাইজেশন নিরাপদভাবে পরিচালনা করতে সাহায্য করে। LDAP ব্যবহারকারীদের তথ্য পরিচালনা এবং প্রক্রিয়া করার জন্য একটি ডিরেক্টরি সার্ভিস ব্যবহার করে, যেখানে Kerberos নেটওয়ার্কে নিরাপদ অথেনটিকেশন সরবরাহ করে টোকেন ভিত্তিক প্রমাণীকরণ মাধ্যমে। নিফাই এই দুই প্রযুক্তির ইন্টিগ্রেশনকে সহজ করে, যার মাধ্যমে বড় স্কেল অ্যাপ্লিকেশন এবং ডেটা ফ্লো নিরাপদ এবং স্কেলেবল হতে পারে।
common.read_more