आंतरिक सुरक्षा
विहंगावलोकन
आंतरिक सुरक्षा इलम में एक आंतरिक प्राधिकरण और प्रमाणीकरण प्रणाली है जिसे इलम कोर द्वारा प्रबंधित किया जाता है। यह सुरक्षित रूप से सभी उपयोगकर्ता डेटा को डेटाबेस में संग्रहीत करता है और इसका उपयोग इलम कोर सर्वर वातावरण में किया जाता है।
इलम की आंतरिक सुरक्षा प्रणाली प्रदान करती है भूमिका-आधारित अभिगम नियंत्रण (RBAC), इलम कोर सर्वर पर हर क्रिया को एक विशिष्ट अनुमति के लिए मैप करने की अनुमति देता है। यह अत्यधिक सटीक पहुँच प्रबंधन सक्षम करता है।
अनुमति असाइनमेंट को सरल बनाने के लिए, आप ऐसी उपयोगकर्ता भूमिकाएँ और समूह बना सकते हैं जो इन भूमिकाओं या समूहों से संबद्ध उपयोगकर्ताओं के लिए अनुमतियाँ निर्धारित करें.
Declarative Resource Management
Ilum Core provides a declarative way to manage users and their roles through Helm configuration.
An example of a Helm configuration for user management is provided below.
इलम कोर:
प्रतिभूति:
आंतरिक:
उपयोगकर्ताओं:
- उपयोगकर्ता नाम: शासन
पासवर्ड: someNewSecurePassword # A simple way to change the initial password of the default admin user
भूमिकाओं:
- शासन # Assigning the ADMIN role to the user
- उपयोगकर्ता नाम: orgUser
पासवर्ड: उपयोगकर्ता पासवर्ड # Set the initial password for the user
भूमिकाओं:
- उपभोक्ता # Assigning the USER role to the user
उदाहरण
आइए एक उपयोगकर्ता बनाएं जो डेटा को पुनः प्राप्त करने और विश्लेषण करने के लिए मौजूदा डेटा आर्किटेक्चर तक पहुंच सकता है लेकिन अनुमति नहीं है नए पॉड्स जोड़कर इसे संशोधित करने के लिए।
पहला कदम एक भूमिका बनाना है। यह बार-बार असाइन करने की आवश्यकता से बचकर प्रक्रिया को सुव्यवस्थित करने में मदद करता है एकाधिक उपयोगकर्ताओं के लिए अनुमतियां।
- सुरक्षा-> भूमिकाओं पर नेविगेट करें और क्लिक करें भूमिका जोड़ें घुंडी।
- नाम और विवरण सहित भूमिका विवरण भरें। जाँच करना याद रखें सक्षम भूमिका को सक्रिय करने के लिए चेकबॉक्स.

- इसके बाद, अनुमतियाँ और भूमिका के लिए उपयुक्त अनुमतियाँ असाइन करें.

इस उदाहरण के लिए, हम निम्नलिखित मान्यताओं के आधार पर अनुमतियों को कॉन्फ़िगर करेंगे:
- उपयोगकर्ता को प्रभावी ढंग से उपयोग करने के लिए डेटा आर्किटेक्चर के बारे में जानकारी तक पूर्ण पहुंच होनी चाहिए। सौंपना पढ़ना निम्न संसाधनों के लिए अनुमतियाँ: नौकरियां, सेवाएं, शेड्यूल, क्लस्टर और नौकरी अनुरोध.
- उपयोगकर्ता को सिस्टम के महत्वपूर्ण भागों को बदले बिना डेटा को बदलने के लिए डेटा आर्किटेक्चर के भीतर काम करने में सक्षम होना चाहिए। सौंपना अमल के लिए अनुमति सेवा संसाधन। सौंपना बनाना के लिए अनुमति नौकरी संसाधन।
- उपयोगकर्ता के पास इलम घटकों तक पहुंच होनी चाहिए जैसे कि फ़ाइल एक्सप्लोरर, वंश, टेबल एक्सप्लोरर, इतिहास सर्वर, सुपरसेट, ज्यूपिटर या ज़ेपेलिन नोटबुक और इलम एसक्यूएल. अनुदान पढ़ना इन घटकों में से प्रत्येक का उपयोग करने की अनुमति।
- उपयोगकर्ता को अपने विशेषाधिकारों के बारे में पता होना चाहिए लेकिन उन्हें संशोधित करने की क्षमता नहीं होनी चाहिए। सौंपना पढ़ना के लिए अनुमतियाँ समूह, भूमिकाएँ और उपयोगकर्ता
भूमिका बनाने के बाद, अगला कदम उपयोगकर्ता बनाना है।
- सुरक्षा -> उपयोगकर्ताओं पर नेविगेट करें और क्लिक करें उपयोगकर्ता जोड़ें घुंडी।
- उपयोगकर्ता विवरण भरें और चेक करके खाते को सक्षम करें सक्षम चेक बॉक्स।

- अगला, असाइन करें अनुमतियाँ उपयोगकर्ता के लिए।
ऐसा करने का सबसे आसान तरीका आपके द्वारा पहले बनाई गई भूमिका को असाइन करना है। यह स्वचालित रूप से उपयोगकर्ता को सभी वांछित अनुमतियाँ प्रदान करेगा।

यदि भूमिका में दी गई अनुमतियों के अलावा अतिरिक्त अनुमतियों की आवश्यकता होती है, तो आप उन्हें आवश्यकतानुसार सीधे उपयोगकर्ता को असाइन कर सकते हैं.

अंत में, उपयोगकर्ता तैयार है। आप इसके उपयोगकर्ता नाम और पासवर्ड का उपयोग करके एप्लिकेशन में लॉग इन कर सकते हैं।
अभिगम नियंत्रण
Ilum Core में प्रत्येक क्रिया के लिए एक विशिष्ट अनुमति की आवश्यकता होती है। इस लेख को लिखने के समय तक, 48 अलग-अलग अनुमतियाँ हैं जिन्हें असाइन किया जा सकता है। अभिगम नियंत्रण को सरल बनाने के लिए, समूहों और भूमिकाओं का उपयोग करने की अनुशंसा की जाती है।
समूहों अपने संगठन में उपयोगकर्ताओं के संग्रह का प्रतिनिधित्व करें. किसी उपयोगकर्ता को किसी समूह में असाइन करके, वह उपयोगकर्ता स्वचालित रूप से समूह से संबद्ध सभी अनुमतियाँ इनहेरिट करता है. समूह अनुमतियाँ सीधे और साथ ही समूह को असाइन की गई भूमिकाओं के माध्यम से दी जा सकती हैं।
एक उपभोक्ता कई समूहों से संबंधित हो सकते हैं और उन्हें कई भूमिकाएँ सौंपी जा सकती हैं। इसका मतलब है कि उपयोगकर्ता उन समूहों और भूमिकाओं द्वारा दी गई सभी अनुमतियों को विरासत में प्राप्त करेगा। साथ ही, आप उपयोगकर्ता को सीधे अनुमतियाँ असाइन कर सकते हैं। इलम कोर तब उपयोगकर्ता को सीधे सौंपे गए लोगों पर विचार करके अनुमतियों की जांच करेगा, साथ ही उन समूहों और भूमिकाओं से जो वे संबंधित हैं, जिनमें समूहों को सौंपी गई भूमिकाएं भी शामिल हैं।
नोट: आप भूमिकाओं और समूहों को अक्षम कर सकते हैं, जो उपयोगकर्ताओं को उनसे अनुमतियाँ इनहेरिट करने से रोकेंगे. इसी तरह, उपयोगकर्ताओं को अक्षम करने से उन्हें एप्लिकेशन के भीतर कुछ भी एक्सेस करने से रोका जा सकेगा।
अनुमतियाँ
Ilum Core में प्रत्येक क्रिया के लिए इसकी अपनी अनुमति की आवश्यकता होती है।
1. इलम जॉब अनुमतियां:
- JOB_READ
- JOB_CREATE
- JOB_DELETE - नौकरियां हटाने के लिए
- REQUEST_READ
नोट: JOB_READ अनुमति आपको नौकरी के बारे में सब कुछ पढ़ने की सुविधा देती है: इसकी त्रुटि और सफलता संदेश, इसके लॉग, मैट्रिक्स आदि के साथ इसका अवलोकन REQUEST_READ अनुमति आपको सभी अनुरोधों की सूची और उनमें से प्रत्येक के विवरण को पढ़ने की सुविधा देती है
2. इलम सेवा अनुमतियां:
- SERVICE_CREATE
- SERVICE_DELETEARCHIVE
- SERVICE_EDIT
- SERVICE_PAUSERESUME
- SERVICE_EXECUTE
- SERVICE_READ
3. अनुमतियां शेड्यूल करें:
- SCHEDULE_READ
- SCHEDULE_CREATE
- SCHEDULE_EDIT
- SCHEDULE_DELETE
- SCHEDULE_PAUSERESUME
4. क्लस्टर अनुमतियां:
- CLUSTER_READ
- CLUSTER_EDIT
- CLUSTER_CREATE
- CLUSTER_DELETE
नोट: CLUSTER_READ क्लस्टर के अंदर सेवाओं, शेड्यूल और नौकरियों को पढ़ने के लिए पहुंच प्रदान नहीं करता है। SERVICE_READ, SCHEDULE_READ और JOB_READ आवश्यक है
5. मॉड्यूल का उपयोग।
प्रत्येक मॉड्यूल को इसे एक्सेस करने की अनुमति की आवश्यकता होती है। यह अनुमति मॉड्यूल तक पूर्ण पहुँच प्रदान करती है।
- NOTEBOOK_READ: ज्यूपिटर और टसेपेल्लिन
- LINEAGE_READ
- SUPERSET_READ
- HISTORYSERVER_READ
- MINIO_READ
- AIRFLOW_READ
- MLFLOW_READ
- SQL_READ
- TABLEEXPLORER_READ
- FILEEXPLORER_READ
6. सुरक्षा प्रबंधन
ये उपयोगकर्ताओं, भूमिकाओं और समूहों को देखने, अपडेट करने, हटाने, सक्षम और अक्षम करने के लिए आवश्यक अनुमतियाँ हैं। इसके अलावा, गतिविधियों के इतिहास को देखने और इसे साफ़ करने की अनुमतियाँ हैं।
- USER_CREATE
- USER_EDIT_PASSWORD (उपयोगकर्ता पासवर्ड रीसेट करने के लिए)
- USER_EDIT_DETAILS (उपयोगकर्ता नाम, विवरण, पूरा नाम, विभाग, ईमेल संपादित करने के लिए)
- USER_EDIT_ACCESS (उपयोगकर्ता अनुमतियों, भूमिकाओं और समूहों को संपादित करने के लिए)
- USER_DELETE
- USER_ENABLEDISABLE
- USER_READ
- USERROLE_CREATE
- USERROLE_READ
- USERROLE_DELETE
- USERROLE_EDIT
- USERROLE_ENABLEDISABLE
- GROUP_READ
- GROUP_DELETE
- GROUP_CREATE
- GROUP_EDIT
- GROUP_ENABLEDISABLE
- ACTIVITY_READ
- ACTIVITY_DELETE
डिफ़ॉल्ट भूमिकाएँ
डिफ़ॉल्ट रूप से इलम कोर आपको 4 भूमिकाएँ प्रदान करता है:
- शासन: सभी अनुमतियों तक पहुंच है
- उपभोक्ता: MLFlow, Minio, Ilum sql, Airlfow और Notebooks को छोड़कर केवल पढ़ने की अनुमति है। अनुमति USER_EDIT_DETAILS है
- DATA_ENGINEER: सुरक्षा अनुमतियों को छोड़कर सभी अनुमतियों तक पहुँच है। अनुमति USER_EDIT_DETAILS है
- DATA_SCIENTIST: MLFlow और Airflow को छोड़कर सभी पठन अनुमतियाँ हैं। SERVICE_EXECUTE और JOB_CREATE अनुमतियाँ हैं। अनुमति USER_EDIT_DETAILS है
गतिविधियों
इलम उपयोगकर्ता संचालन का इतिहास रखता है, जिसे में देखा जा सकता है सुरक्षा -> गतिविधियाँ फ़ोल्डर। यहां, आप प्रदर्शन की गई प्रत्येक क्रिया का संक्षिप्त विवरण देख सकते हैं, साथ ही उपयोग किए गए समापन बिंदु, सभी संबद्ध पथ चर और इसके टाइमस्टैम्प के साथ।

आप गतिविधि लॉग बाय फ़िल्टर कर सकते हैं नाम या द्वारा समापन बिंदु प्रासंगिक जानकारी को जल्दी से खोजने के लिए।
परिनियोजन
इलम 3 सुरक्षा प्रकार प्रदान करता है और आप उस समय उनमें से केवल एक को चुन सकते हैं।
आंतरिक सुरक्षा चुनने के लिए आपको संबंधित हेल्म कॉन्फ़िगरेशन को सेट करना चाहिए आंतरिक नीचे के रूप में:
हेल्म अपग्रेड इलम इलम / \\
--अस्त हो ilum-core.security.internal.enabled=सच्चा \\
--अस्त हो ilum-core.security.type=internal --reuse-values
साथ ही, आप अपने अनुप्रयोग में प्रारंभिक उपयोगकर्ताओं को जोड़ने के लिए हेल्म कॉन्फ़िगरेशन का उपयोग कर सकते हैं। हेल्म कॉन्फ़िगरेशन के माध्यम से जोड़े गए उपयोगकर्ताओं को एप्लिकेशन स्टार्टअप के दौरान बनाया जाएगा और रूट उपयोगकर्ता के रूप में लेबल किया जाएगा।
रूट उपयोगकर्ता कुछ प्रतिबंधों के साथ आओ: आप उनके उपयोगकर्ता नाम को हटा नहीं सकते, अक्षम नहीं कर सकते, बदल सकते हैं या उनकी पहुंच को प्रतिबंधित नहीं कर सकते हैं। हालाँकि, आप उनके विवरण अपडेट कर सकते हैं, जैसे उनका पूरा नाम, ईमेल, विवरण या उनका पासवर्ड रीसेट करना। यह सुनिश्चित करता है कि आपके पास हमेशा अपने आवेदन तक पहुंच की गारंटी है।
यदि आपको प्रारंभिक उपयोगकर्ताओं को अपडेट करने की आवश्यकता है, तो बस अपने हेल्म कॉन्फ़िगरेशन को संशोधित करें। Ilum स्वचालित रूप से अद्यतन कॉन्फ़िगरेशन लागू करेगा और अगले एप्लिकेशन स्टार्टअप पर रूट उपयोगकर्ताओं को अपडेट करेगा।
बस एक अनुस्मारक: प्रारंभिक सेटअप के बाद संपूर्ण उपयोगकर्ता प्रबंधन के लिए UI/API का उपयोग करें। जब आप पहली बार लॉग इन करते हैं तो अपना पासवर्ड बदलना सबसे अच्छा अभ्यास है।
आप इसके साथ प्रारंभिक उपयोगकर्ताओं को जोड़ सकते हैं configuration.yaml:
इलम कोर:
प्रतिभूति:
आंतरिक:
उपयोगकर्ताओं:
- उपयोगकर्ता नाम: "व्यवस्थापक2"
पासवर्ड: "व्यवस्थापक"
भूमिकाओं:
- "व्यवस्थापक"
- उपयोगकर्ता नाम: "उपयोगकर्ता2"
पासवर्ड: "व्यवस्थापक"
भूमिकाओं:
- "उपयोगकर्ता"
हेल्म अपग्रेड इलम इलम / -स्त्री-विषयक configuration.yaml --reuse-values
आप नीचे दिए गए उदाहरण की तरह पतवार में उपयोगकर्ता के सभी फ़ील्ड कॉन्फ़िगर कर सकते हैं:
इलम कोर:
प्रतिभूति:
आंतरिक:
उपयोगकर्ताओं:
- उपयोगकर्ता नाम: "मेरा उपयोगकर्ता"
ईमेल: "ईमेल"
पूरा नाम: "पूरा नाम"
मंत्रालय: "विभाग"
या क़िस्म: "विवरण"
पासवर्ड: "पासवर्ड"
भूमिकाओं:
- "भूमिका 1"
- "भूमिका 2"
- "भूमिका 3"
अनुमतियाँ:
- "SERVICE_CREATE"
- "SERVICE_EXECUTE"
समूहों:
- "ग्रुपआईडी1"
राज्य: सक्षम
rootState: गलत
नोट: यदि आप नहीं चाहते कि आपका प्रारंभिक उपयोगकर्ता रूट उपयोगकर्ता हो, तो आप rootState ध्वज को false पर सेट कर सकते हैं