1. परिचय
खास जानकारी
इस लैब में, एआई डेवलपमेंट एनवायरमेंट के इन्फ़्रास्ट्रक्चर को होने वाले सामान्य खतरों को कम किया जाता है. आपने सुरक्षा से जुड़े ऐसे कंट्रोल लागू किए हों जो इस एनवायरमेंट के मुख्य कॉम्पोनेंट की सुरक्षा के लिए बनाए गए हों.
Context
आपकी डेवलपमेंट टीम में, सुरक्षा से जुड़े मामलों के विशेषज्ञ हैं. आपका लक्ष्य ऐसा एनवायरमेंट बनाना है जिसमें इस्तेमाल करने में कम से कम रुकावटें आएं और सामान्य खतरों से सुरक्षा भी मिले.
नीचे दी गई टेबल में, उन खतरों के बारे में बताया गया है जिनसे आपको सबसे ज़्यादा खतरा है. इस लैब में, हर खतरे से निपटने के लिए एक टास्क दिया गया है:
धमकी | गड़बड़ी की गंभीरता को कम करना | टास्क पूरा हुआ |
खुले पोर्ट का गलत इस्तेमाल करके, नेटवर्क में अनधिकृत तरीके से घुसपैठ करना. | एक प्राइवेट वीपीसी बनाएं और Vertex AI के ऐक्सेस को एक ऐसे उपयोगकर्ता तक सीमित करें जिसे Google Cloud के ज़रिए प्रॉक्सी किया गया है. इसके लिए, सार्वजनिक आईपी पते का इस्तेमाल न करें. | सुरक्षित नेटवर्क फ़ाउंडेशन कॉन्फ़िगर करना |
ज़्यादा अनुमतियों वाले क्रेडेंशियल का इस्तेमाल करके, किसी कंप्रोमाइज़ किए गए कंप्यूट इंस्टेंस से प्रिविलेज एस्कलेशन. | Vertex AI इंस्टेंस के लिए, कम से कम विशेषाधिकार वाला सेवा खाता बनाएं और असाइन करें. | सुरक्षित Vertex AI Workbench इंस्टेंस डिप्लॉय करना |
कंप्यूट रिसॉर्स का इंस्टेंस टेकओवर कर लिया गया है. इससे सिस्टम में छेड़छाड़ की जा सकती है. | रूट ऐक्सेस बंद करके और सुरक्षित बूट चालू करके, इंस्टेंस को सुरक्षित करें. | सुरक्षित Vertex AI Workbench इंस्टेंस डिप्लॉय करना |
स्टोरेज को गलत तरीके से कॉन्फ़िगर करने की वजह से, ट्रेनिंग डेटा और मॉडल सार्वजनिक तौर पर दिख रहे हैं. | बकेट पर सार्वजनिक ऐक्सेस को रोकने की सुविधा लागू करें और यूनिफ़ॉर्म बकेट-लेवल के ऐक्सेस कंट्रोल का इस्तेमाल करें. | सुरक्षित Cloud Storage बकेट डिप्लॉय करना |
डेटासेट और मॉडल आर्टफ़ैक्ट को जान-बूझकर या गलती से मिटाना या उनमें छेड़छाड़ करना. | डेटा को वापस पाने के लिए, ऑब्जेक्ट वर्शनिंग की सुविधा चालू करें. साथ ही, सभी गतिविधियों के ऑडिट ट्रेल को बदला नहीं जा सकता. इसके लिए, डेटा ऐक्सेस लॉग की सुविधा चालू करें. | सुरक्षित Cloud Storage बकेट डिप्लॉय करना |
एक नज़र में जानकारी
इस लैब में, आपको इन संसाधनों के साथ काम करना होगा:
कॉम्पोनेंट | नाम |
VPC का नाम |
|
सबनेट का नाम |
|
क्लाउड राऊटर |
|
Cloud NAT |
|
सेवा खाता |
|
Vertex AI इंस्टेंस |
|
Storage Bucket |
|
आपको क्या सीखने को मिलेगा
इस लैब में, आपको इनके बारे में जानकारी मिलेगी:
- अनचाहे ट्रैफ़िक को कम करने के लिए, प्राइवेट नेटवर्किंग के साथ सुरक्षित वीपीसी उपलब्ध कराएं.
- बूटकिट और प्रिविलेज एस्कलेशन के ख़िलाफ़, Vertex AI Workbench इंस्टेंस को सुरक्षित करें.
- Cloud Storage बकेट को सुरक्षित करें, ताकि बिना निगरानी के डेटा ट्रांसफ़र और गलती से सार्वजनिक होने की समस्या को कम किया जा सके.
2. प्रोजेक्ट सेटअप करना
Google खाता
अगर आपके पास पहले से कोई निजी Google खाता नहीं है, तो आपको Google खाता बनाना होगा.
ऑफ़िस या स्कूल वाले खाते के बजाय, निजी खाते का इस्तेमाल करें.
Google Cloud Console में साइन इन करना
किसी निजी Google खाते का इस्तेमाल करके, Google Cloud Console में साइन इन करें.
बिलिंग चालू करें
Google Cloud क्रेडिट रिडीम करना (ज़रूरी नहीं है)
इस वर्कशॉप को चलाने के लिए, आपके पास कुछ क्रेडिट वाला बिलिंग खाता होना चाहिए. शुरू करने के लिए, इस कोडलैब के सबसे ऊपर मौजूद बैनर में दिए गए क्रेडिट का इस्तेमाल करें. अगर आपका खाता पहले से ही किसी बिलिंग खाते से कनेक्ट है, तो इस चरण को छोड़ा जा सकता है.
निजी बिलिंग खाता सेट अप करना
अगर आपने Google Cloud क्रेडिट का इस्तेमाल करके बिलिंग सेट अप की है, तो इस चरण को छोड़ें.
निजी बिलिंग खाता सेट अप करने के लिए, Cloud Console में बिलिंग की सुविधा चालू करने के लिए यहां जाएं.
ध्यान दें:
- इस लैब को पूरा करने में, Cloud संसाधनों पर 1 डॉलर से कम खर्च आना चाहिए.
- ज़्यादा शुल्क से बचने के लिए, संसाधनों को मिटाने का तरीका जानने के लिए, इस लैब के आखिर में दिए गए निर्देशों का पालन करें.
- नए उपयोगकर्ता, 300 डॉलर के मुफ़्त में आज़माने की सुविधा का फ़ायदा पा सकते हैं.
प्रोजेक्ट बनाना (ज़रूरी नहीं)
अगर आपको इस लैब के लिए किसी मौजूदा प्रोजेक्ट का इस्तेमाल नहीं करना है, तो यहां नया प्रोजेक्ट बनाएं.
3. एपीआई चालू करना
Cloud Shell को कॉन्फ़िगर करना
प्रोजेक्ट बन जाने के बाद, Cloud Shell को सेट अप करने के लिए, यह तरीका अपनाएं.
Cloud Shell लॉन्च करना
shell.cloud.google.com पर जाएं. अगर आपको पुष्टि करने के लिए कहा जाता है, तो पुष्टि करें पर क्लिक करें.
प्रोजेक्ट आईडी सेट करें
सही प्रोजेक्ट आईडी सेट करने के लिए, Cloud Shell टर्मिनल में यह कमांड चलाएं. <your-project-id> की जगह, प्रोजेक्ट बनाने के ऊपर दिए गए चरण से कॉपी किया गया अपना असल प्रोजेक्ट आईडी डालें.
gcloud config set project <your-project-id>
अब आपको Cloud Shell टर्मिनल में, सही प्रोजेक्ट चुना हुआ दिखेगा.
Vertex AI Workbench और Cloud Storage चालू करना
इस लैब में दी गई सेवाओं का इस्तेमाल करने के लिए, आपको अपने Google Cloud प्रोजेक्ट में Compute Engine, Vertex AI Workbench, IAM, और Cloud Storage के लिए एपीआई चालू करने होंगे.
- टर्मिनल में, इन एपीआई को चालू करें:
gcloud services enable compute.googleapis.com notebooks.googleapis.com aiplatform.googleapis.com iam.googleapis.com storage.googleapis.com
इसके अलावा, इन एपीआई को चालू करने के लिए, कंसोल में उनके पेजों पर जाएं और चालू करें पर क्लिक करें.
4. सुरक्षित नेटवर्क की बुनियादी सेटिंग कॉन्फ़िगर करना
इस टास्क में, आपको अपनी सभी सेवाओं के लिए एक अलग नेटवर्क एनवायरमेंट बनाना होता है. निजी नेटवर्क का इस्तेमाल करके और डेटा फ़्लो को कंट्रोल करके, कई लेयर वाली सुरक्षा बनाई जाती है. इससे, सार्वजनिक तौर पर उपलब्ध संसाधनों की तुलना में, आपके इन्फ़्रास्ट्रक्चर पर होने वाले हमलों की आशंका काफ़ी कम हो जाती है. यह सुरक्षित नेटवर्क फ़ाउंडेशन, आपके एआई ऐप्लिकेशन को बिना अनुमति के ऐक्सेस करने से बचाने के लिए ज़रूरी है.
वीपीसी और सबनेट बनाना
इस चरण में, आपको वर्चुअल प्राइवेट क्लाउड (वीपीसी) और सबनेट सेट अप करना होगा. इससे एक अलग नेटवर्क एनवायरमेंट बनता है. यह अनधिकृत नेटवर्क इनग्रेस के ख़िलाफ़ सुरक्षा की पहली लाइन है.
- Google Cloud Console में, वीपीसी नेटवर्क > वीपीसी नेटवर्क पर जाएं. Google Cloud Console में सबसे ऊपर मौजूद खोज बार का इस्तेमाल करके, "वीपीसी नेटवर्क" खोजें और उसे चुनें.
- वीपीसी नेटवर्क बनाएं पर क्लिक करें.
- नाम के लिए,
genai-secure-vpcडालें. - सबनेट बनाने के मोड के लिए, कस्टम को चुनें.
- नया सबनेट में जाकर, अपना सबनेट बनाने के लिए यहां दी गई प्रॉपर्टी की वैल्यू डालें:
प्रॉपर्टी
वैल्यू (टाइप करें या चुनें)
नाम
genai-subnet-us-central1क्षेत्र
us-central1आईपी पता श्रेणी
10.0.1.0/24निजी Google ऐक्सेस
चालू करना
- बनाएं पर क्लिक करें.
Cloud NAT गेटवे बनाना
Cloud NAT गेटवे की मदद से, आपके प्राइवेट इंस्टेंस बिना किसी पब्लिक आईपी पते के आउटबाउंड कनेक्शन शुरू कर सकते हैं.जैसे, सॉफ़्टवेयर अपडेट के लिए. इसका मतलब है कि पब्लिक इंटरनेट, उनसे कनेक्शन शुरू नहीं कर सकता.
- सबसे पहले, Cloud Router बनाएं. Google Cloud Console में सबसे ऊपर मौजूद खोज बार का इस्तेमाल करके, "Cloud Router" खोजें और उसे चुनें.
- राउटर बनाएं पर क्लिक करें.
- Cloud Router को इस तरह कॉन्फ़िगर करें:
प्रॉपर्टी
वैल्यू (टाइप करें या चुनें)
नाम
genai-router-us-central1नेटवर्क
genai-secure-vpc(आपने अभी-अभी जो वीपीसी नेटवर्क बनाया है)क्षेत्र
us-central1 - बनाएं पर क्लिक करें.
- इसके बाद, नेटवर्क सेवाएं > Cloud NAT पर जाएं. Google Cloud Console में सबसे ऊपर मौजूद खोज बार का इस्तेमाल करके, "Cloud NAT" खोजें और उसे चुनें.
- शुरू करें पर क्लिक करें.
- Cloud NAT गेटवे को इस तरह कॉन्फ़िगर करें:
प्रॉपर्टी
वैल्यू (टाइप करें या चुनें)
गेटवे का नाम
genai-nat-us-central1VPC नेटवर्क
genai-secure-vpc(आपने जो वीपीसी नेटवर्क बनाया है)क्षेत्र
us-central1Cloud Router
genai-router-us-central1(आपने अभी-अभी जिस राऊटर को सेट अप किया है) - बनाएं पर क्लिक करें.
5. Vertex AI Workbench का सुरक्षित इंस्टेंस डिप्लॉय करना
अब आपके पास एक सुरक्षित नेटवर्क फ़ाउंडेशन है. इसलिए, अपने सुरक्षित वीपीसी में Vertex AI Workbench इंस्टेंस को डिप्लॉय करें. यह Workbench इंस्टेंस, आपके डेवलपमेंट एनवायरमेंट के तौर पर काम करता है. यह एआई डेवलपमेंट से जुड़े काम के लिए, सुरक्षित और अलग जगह उपलब्ध कराता है. पिछले नेटवर्क कॉन्फ़िगरेशन से यह पक्का होता है कि यह इंस्टेंस सीधे तौर पर सार्वजनिक इंटरनेट पर उपलब्ध नहीं है. इससे कई लेयर वाली सुरक्षा को बेहतर बनाने में मदद मिलती है.
कम से कम विशेषाधिकार वाला सेवा खाता बनाना
ज़रूरत के मुताबिक कम से कम अनुमतियों वाला सेवा खाता बनाने से, कम से कम अधिकारों के सिद्धांत का पालन किया जा सकता है. अगर आपका इंस्टेंस कभी भी खतरे में पड़ता है, तो इस तरीके से "ब्लास्ट रेडियस" को सीमित किया जा सकता है. ऐसा इसलिए, क्योंकि इंस्टेंस सिर्फ़ उन संसाधनों को ऐक्सेस कर सकता है और उन कार्रवाइयों को कर सकता है जो उसके फ़ंक्शन के लिए ज़रूरी हैं.
- Google Cloud Console में, आईएएम और एडमिन > सेवा खाते पर जाएं. Google Cloud Console में सबसे ऊपर मौजूद खोज बार का इस्तेमाल करके, "सेवा खाते" खोजें और उसे चुनें.
- सेवा खाता बनाएं पर क्लिक करें.
- सेवा खाते के नाम के लिए,
vertex-workbench-saडालें. - बनाएं और जारी रखें पर क्लिक करें.
- ये भूमिकाएं असाइन करें:
Vertex AI UserStorage Object Creator
- हो गया पर क्लिक करें.
Workbench इंस्टेंस बनाना
इस चरण में, Vertex AI Workbench इंस्टेंस को डिप्लॉय किया जाता है. इस इंस्टेंस को, पहले से बनाए गए निजी वीपीसी में चलाने के लिए कॉन्फ़िगर किया गया है. इससे यह सार्वजनिक इंटरनेट से और भी अलग हो जाता है. आप सीधे तौर पर इंस्टेंस पर सुरक्षा कड़ी करने के अतिरिक्त उपाय भी लागू करते हैं.
- Google Cloud Console के नेविगेशन मेन्यू (हैमबर्गर मेन्यू) में जाकर, Vertex AI > Workbench पर जाएं. Google Cloud Console में सबसे ऊपर मौजूद खोज बार का इस्तेमाल करके, "Workbench" खोजें. इसके बाद, "Vertex AI" को सबटाइटल के तौर पर इस्तेमाल करने वाला नतीजा चुनें.
- नया बनाएं पर क्लिक करें और इसे कॉन्फ़िगर करें:
प्रॉपर्टी
वैल्यू (टाइप करें या चुनें)
नाम
secure-genai-instanceक्षेत्र
us-central1 - उन्नत विकल्पों पर क्लिक करें.
- मशीन टाइप पर क्लिक करें और इनके लिए चेकबॉक्स चुनें:
- सिक्योर बूट
- वर्चुअल ट्रस्टेड प्लैटफ़ॉर्म मॉड्यूल (वीटीपीएम)
- इंटीग्रिटी मॉनिटरिंग.
- नेटवर्किंग पर क्लिक करें और इन्हें कॉन्फ़िगर करें:
प्रॉपर्टी
वैल्यू (टाइप करें या चुनें)
नेटवर्क
genai-secure-vpcसबनेटवर्क
genai-subnet-us-central1(10.0.1.0/24)एक्सटर्नल आईपी पता असाइन करना
निशान हटाएं, क्योंकि आपको Google Cloud में प्रॉक्सी के ज़रिए ही इस इंस्टेंस को ऐक्सेस करना है.
- IAM और सुरक्षा पर क्लिक करें और इन्हें कॉन्फ़िगर करें:
प्रॉपर्टी
वैल्यू (टाइप करें या चुनें)
उपयोगकर्ता का ईमेल
एक उपयोगकर्ता को चुनें. इसके बाद, वह ईमेल पता चुनें जिसका इस्तेमाल आपने Google Cloud में साइन इन करने के लिए किया था.
Compute Engine के डिफ़ॉल्ट सेवा खाते का इस्तेमाल करना
चेकबॉक्स से सही का निशान हटाएं.
सेवा खाते का ईमेल पता
कम से कम विशेषाधिकार वाले सेवा खाते के लिए बनाया गया ईमेल पता डालें (
[PROJECT_ID]को अपने आईडी से बदलें):vertex-workbench-sa@[PROJECT_ID].iam.gserviceaccount.comइंस्टेंस का रूट ऐक्सेस
चेकबॉक्स से सही का निशान हटाएं.
- बनाएं पर क्लिक करें.
अपने Vertex AI इंस्टेंस को ऐक्सेस करना
अब आपका Vertex AI Workbench इंस्टेंस अस्थायी तौर पर उपलब्ध है. इसलिए, इसे सुरक्षित तरीके से ऐक्सेस किया जा सकता है. इससे कनेक्ट करने के लिए, Google Cloud के प्रॉक्सी का इस्तेमाल किया जाता है. इससे यह पक्का किया जाता है कि इंस्टेंस निजी बना रहे और सार्वजनिक इंटरनेट पर न दिखे. इससे, अनचाहे और संभावित रूप से नुकसान पहुंचाने वाले ट्रैफ़िक का जोखिम कम हो जाता है.
- Vertex AI > Workbench पर जाएं. अगर आपके इंस्टेंस का प्रोविज़निंग प्रोसेस अभी-अभी पूरी हुई है, तो हो सकता है कि आप पहले से ही इस पेज पर हों. अगर ऐसा नहीं है, तो Google Cloud Console के नेविगेशन मेन्यू (हैमबर्गर मेन्यू) या खोज बार का इस्तेमाल करके, उस पेज पर जाएं.
- सूची में,
secure-genai-instanceनाम वाला अपना इंस्टेंस ढूंढें. - अपने इंस्टेंस की दाईं ओर, JupyterLab खोलें लिंक पर क्लिक करें.
इससे आपके ब्राउज़र में एक नया टैब खुलता है. इससे आपको अपने इंस्टेंस का ऐक्सेस मिलता है. आपके पास Google Cloud के ज़रिए इसे ऐक्सेस करने की सुविधा होती है. हालांकि, इंस्टेंस को सार्वजनिक इंटरनेट पर उपलब्ध नहीं कराया जाता है. इससे, अनचाहे और संभावित रूप से नुकसान पहुंचाने वाले ट्रैफ़िक का जोखिम कम हो जाता है.
6. सुरक्षित Cloud Storage बकेट डिप्लॉय करना
अब अपने डेटासेट के लिए, सुरक्षित Cloud Storage बकेट बनाएं. यहां आपके एआई ट्रेनिंग डेटा, मॉडल, और आर्टफ़ैक्ट को सेव किया जाता है. इस बकेट में मज़बूत सुरक्षा कॉन्फ़िगरेशन लागू करके, संवेदनशील डेटा को गलती से सार्वजनिक होने से रोका जा सकता है. साथ ही, इसे गलत इरादे से या गलती से मिटाने और इसमें छेड़छाड़ करने से बचाया जा सकता है. इससे, आपकी एआई ऐसेट की सुरक्षा और निजता बनी रहती है.
बकेट बनाना और उसे कॉन्फ़िगर करना
इस चरण में, Cloud Storage बकेट बनाया जाता है और सुरक्षा से जुड़ी शुरुआती सेटिंग लागू की जाती हैं. इन सेटिंग से, सार्वजनिक ऐक्सेस को रोका जा सकता है. साथ ही, बकेट-लेवल पर ऐक्सेस कंट्रोल को एक जैसा किया जा सकता है. ये सेटिंग, यह कंट्रोल करने के लिए ज़रूरी हैं कि आपका डेटा कौन ऐक्सेस कर सकता है.
- Google Cloud Console में, Cloud Storage > बकेट पर जाएं. Google Cloud Console में सबसे ऊपर मौजूद खोज बार का इस्तेमाल करके, "बकेट" खोजें और उसे चुनें.
- बनाएं पर क्लिक करें.
- शुरू करें में जाकर, नाम को पूरी तरह से अलग और यूनीक नाम पर सेट करें.
- चुनें कि आपको अपना डेटा कहां सेव करना है पर जाएं और यहां दी गई जानकारी कॉन्फ़िगर करें:
प्रॉपर्टी
वैल्यू (टाइप करें या चुनें)
लोकेशन किस तरह की है
क्षेत्र
क्षेत्र
us-central1 - चुनें कि आपको अपना डेटा कैसे सेव करना है पर जाएं और डिफ़ॉल्ट सेटिंग को बनाए रखें.
- ऑब्जेक्ट के ऐक्सेस को कंट्रोल करने का तरीका चुनें पर जाएं और डिफ़ॉल्ट सेटिंग का इस्तेमाल जारी रखें:
प्रॉपर्टी
वैल्यू (टाइप करें या चुनें)
कारण
सार्वजनिक ऐक्सेस को रोकना
सार्वजनिक ऐक्सेस को रोकने की सुविधा लागू करें को चुने हुए रहने दें.
सार्वजनिक ऐक्सेस को रोकने की सुविधा, IAM में किए गए किसी भी ऐसे बदलाव को खारिज कर देती है जिससे कोई ऑब्जेक्ट गलती से इंटरनेट पर दिखने लगे.
ऐक्सेस कंट्रोल
यूनिफ़ॉर्म को चुना हुआ रहने दें.
हालांकि, ऐसा लगता है कि ACL, बेहतर कंट्रोल के लिए बेहतर विकल्प हैं. इसलिए, ये कम से कम ज़रूरी अधिकार देते हैं. हालांकि, अन्य IAM सुविधाओं के साथ इस्तेमाल करने पर, ये जटिल हो जाते हैं और इनके नतीजे का अनुमान लगाना मुश्किल हो जाता है. डेटा को अनचाहे तरीके से शेयर होने से रोकने के लिए, यूनिफ़ॉर्म बकेट लेवल ऐक्सेस के फ़ायदों और नुकसानों के बारे में जानें.
- ऑब्जेक्ट के डेटा को सुरक्षित रखने का तरीका चुनें पर जाएं और डिफ़ॉल्ट सेटिंग का इस्तेमाल जारी रखें:
प्रॉपर्टी
वैल्यू (टाइप करें या चुनें)
कारण
सॉफ़्ट डिलीट करने की नीति (डेटा वापस पाने के लिए)
सॉफ़्ट डिलीट करने की नीति (डेटा वापस पाने के लिए) को चुना हुआ रहने दें.
अगर बकेट में मौजूद डेटा को गलती से या जान-बूझकर मिटा दिया जाता है, तो सॉफ़्ट डिलीट सुविधा का इस्तेमाल करके, निजी डेटा के रखरखाव की अवधि के दौरान डेटा को वापस लाया जा सकता है.
ऑब्जेक्ट वर्शनिंग (वर्शन कंट्रोल के लिए)
ऑब्जेक्ट वर्शनिंग (वर्शन कंट्रोल के लिए) को चुनें.
ऑब्जेक्ट वर्शनिंग की सुविधा की मदद से, गलती से या नुकसान पहुंचाने के मकसद से किए गए बदलावों को वापस लाया जा सकता है. उदाहरण के लिए, अगर कोई हमलावर किसी सामान्य फ़ाइल को नुकसान पहुंचाने वाले कोड वाली फ़ाइल से बदल देता है, तो ऑब्जेक्ट वर्शनिंग की सुविधा की मदद से उस फ़ाइल को वापस लाया जा सकता है.
हर ऑब्जेक्ट के लिए ज़्यादा से ज़्यादा वर्शन
3
हालांकि, यह मनमानी है और इससे लागत बढ़ सकती है. पिछले वर्शन पर रोल बैक करने के लिए, इसका मान 1 से ज़्यादा होना चाहिए. अगर हमलावर कई बार डेटा को बदलने की कोशिश कर सकता है, तो बैकअप लेने की रणनीति के लिए, वर्शनिंग का ज़्यादा बेहतर तरीका अपनाना ज़रूरी हो सकता है.
मौजूदा वर्शन के अलावा अन्य वर्शन की समयसीमा खत्म होने के बाद
7
पुराने वर्शन को चालू रखने के लिए, सात दिन का समय सुझाया जाता है. हालांकि, लंबे समय तक स्टोरेज के लिए यह संख्या ज़्यादा हो सकती है.
- बनाएं पर क्लिक करें.
- अगर आपको "सार्वजनिक ऐक्सेस को रोका जाएगा" मैसेज वाला पॉप-अप दिखता है, तो डिफ़ॉल्ट बॉक्स ("इस बकेट पर सार्वजनिक ऐक्सेस को रोकने की सुविधा लागू करें") को चुना हुआ रहने दें. इसके बाद, पुष्टि करें पर क्लिक करें.
डेटा की सुरक्षा और लॉगिंग की सुविधा चालू करना
अपने डेटा को बदला न जा सकने वाला और ऑडिट किया जा सकने वाला बनाने के लिए, ऑब्जेक्ट वर्शनिंग की सुविधा चालू करें. साथ ही, अपने बकेट के लिए डेटा का ऐक्सेस लॉग कॉन्फ़िगर करें. ऑब्जेक्ट वर्शनिंग की सुविधा की मदद से, गलती से मिटाए गए या बदले गए ऑब्जेक्ट को वापस लाया जा सकता है. वहीं, डेटा ऐक्सेस लॉग से, आपके बकेट में की गई सभी गतिविधियों का पूरा ऑडिट ट्रेल मिलता है. यह सुरक्षा की निगरानी और अनुपालन के लिए ज़रूरी है.
- Google Cloud Console में, आईएएम और एडमिन > ऑडिट लॉग पर जाएं. Google Cloud Console में सबसे ऊपर मौजूद खोज बार का इस्तेमाल करके, "ऑडिट लॉग" खोजें और उसे चुनें.
- फ़िल्टर खोज का इस्तेमाल करके, Google Cloud Storage को खोजें और चुनें.
- दिखने वाले पैनल में, डेटा पढ़ें और डेटा लिखें, दोनों के लिए बॉक्स पर सही का निशान लगाएं.
- सेव करें पर क्लिक करें.
7. लैब से लेकर असल ज़िंदगी तक
आपने अभी-अभी कुछ चरणों को एक अस्थायी लैब एनवायरमेंट में पूरा किया है. हालांकि, आपने जिन सिद्धांतों और कॉन्फ़िगरेशन को लागू किया है वे Google Cloud पर एआई के असल प्रोजेक्ट को सुरक्षित करने के लिए ब्लूप्रिंट हैं. यहां बताया गया है कि आपने जो सीखा है उसे अपने काम में कैसे इस्तेमाल किया जा सकता है. इसके लिए, आपको एक सामान्य लैब से प्रोडक्शन के लिए तैयार सेटअप पर जाना होगा.
आपने अभी जो संसाधन बनाए हैं—निजी वीपीसी, सुरक्षित Workbench इंस्टेंस, और सुरक्षित बकेट—उन्हें किसी भी नए एआई प्रोजेक्ट के लिए, सुरक्षित स्टार्टर टेंप्लेट के तौर पर इस्तेमाल किया जा सकता है. आपका लक्ष्य, इस सुरक्षित फ़ाउंडेशन को अपने और अपनी टीम के लिए डिफ़ॉल्ट और आसान रास्ता बनाना है.
सुरक्षित नेटवर्क: आपका प्राइवेट वर्कस्पेस
इसे अपने सेटअप में इस्तेमाल करने का तरीका
जब भी कोई नया एआई प्रोजेक्ट शुरू किया जाता है (जैसे, "ग्राहक के कारोबार छोड़ने का अनुमान", "इमेज क्लासिफ़िकेशन मॉडल"), तो आपको इस नेटवर्क सेटअप को दोहराना होगा. इसके लिए, आपको एक अलग वीपीसी (churn-pred-vpc) बनाना होगा या पहले से मंज़ूरी पा चुके शेयर किए गए नेटवर्क का इस्तेमाल करना होगा. यह आपके प्रोजेक्ट का अलग "सैंडबॉक्स" बन जाता है. आपका डेवलपमेंट एनवायरमेंट, इस सुरक्षित स्पेस में मौजूद होता है. जैसे, आपने Vertex AI Workbench को कॉन्फ़िगर किया है. आपको इसे सुरक्षित प्रॉक्सी (JupyterLab खोलें) के ज़रिए कनेक्ट करना होगा. इसे कभी भी सार्वजनिक इंटरनेट पर नहीं दिखाया जाएगा.
प्रोडक्शन ट्रैक से कनेक्ट किया जा रहा है
प्रोडक्शन एनवायरमेंट में, इस कॉन्सेप्ट को और बेहतर बनाया जा सकता है. इसके लिए, इन बातों का ध्यान रखें:
- इन्फ़्रास्ट्रक्चर एज़ कोड (IaC): Cloud Console का इस्तेमाल करने के बजाय, Terraform या Cloud Deployment Manager जैसे टूल का इस्तेमाल करके इस नेटवर्क को तय किया जाता है. इससे आपको कुछ ही मिनटों में, नए प्रोजेक्ट के लिए सुरक्षित नेटवर्क फ़ाउंडेशन डिप्लॉय करने की सुविधा मिलती है. साथ ही, यह पक्का किया जा सकता है कि इसे दोहराया जा सकता है और इसकी ऑडिट की जा सकती है.
- शेयर किया गया वीपीसी: बड़े संगठनों में, अक्सर एक सेंट्रल नेटवर्किंग टीम, शेयर किए गए वीपीसी को मैनेज करती है. डेवलपर के तौर पर, आपको अपने इंस्टेंस और सेवाओं को उस केंद्रीय रूप से मैनेज किए गए सुरक्षित नेटवर्क के कुछ खास सबनेट में लॉन्च करने की अनुमति दी जाएगी. इसका सिद्धांत वही है—आप अब भी एक निजी स्पेस में काम कर रहे हैं, लेकिन यह एक बड़े, शेयर किए गए इन्फ़्रास्ट्रक्चर का हिस्सा है.
- VPC सर्विस कंट्रोल: ज़्यादा सुरक्षा के लिए, इस पूरे एनवायरमेंट को VPC सर्विस कंट्रोल पेरीमीटर में रैप किया जाता है. यह एक अहम सुविधा है. यह डेटा को बाहर जाने से रोकती है. इसके लिए, यह पक्का किया जाता है कि Cloud Storage जैसी सेवाओं को सिर्फ़ उन संसाधनों से ऐक्सेस किया जा सकता है जिन्हें आपके निजी नेटवर्क पेरीमीटर में अनुमति मिली है.
The hardened compute: Your secure development & training hub
इसे अपने सेटअप में इस्तेमाल करने का तरीका
secure-genai-instance, एआई डेवलपमेंट के लिए रोज़ाना इस्तेमाल की जाने वाली मशीन है. JupyterLab इंटरफ़ेस का इस्तेमाल इन कामों के लिए किया जाता है:
- नोटबुक में अपने मॉडल का कोड लिखें और उसकी जांच करें.
- Python लाइब्रेरी इंस्टॉल करें (
pip install ...). - छोटे से लेकर मीडियम साइज़ के डेटासेट के साथ एक्सपेरिमेंट करें. आपने जो सुरक्षा कॉन्फ़िगर की है (कोई सार्वजनिक आईपी नहीं, कम से कम विशेषाधिकार वाला सेवा खाता, कोई रूट ऐक्सेस नहीं, सुरक्षित बूट), वह बैकग्राउंड में पारदर्शी तरीके से काम करती है. आपके पास एआई से जुड़े काम पर ध्यान देने का विकल्प होता है, क्योंकि आपको पता होता है कि इंस्टेंस को सामान्य हमलों से सुरक्षित किया गया है.
प्रोडक्शन ट्रैक से कनेक्ट किया जा रहा है
आम तौर पर, प्रोडक्शन में किसी एक Workbench इंस्टेंस पर बड़े पैमाने पर ट्रेनिंग नहीं दी जाती. इसके बजाय, अपने काम को इन तरीकों से प्रोडक्शन में लाया जा सकता है:
- नोटबुक से पाइपलाइन तक: आपको अपनी नोटबुक से कोड लेना होगा और उसे स्क्रिप्ट में बदलना होगा. इसके बाद, इस स्क्रिप्ट को Vertex AI कस्टम ट्रेनिंग जॉब या Vertex AI पाइपलाइन में एक चरण के तौर पर चलाया जाएगा.
- कंटेनर बनाना: इसमें, ट्रेनिंग कोड और उसकी डिपेंडेंसी को Docker कंटेनर में पैकेज किया जाता है. इसके बाद, इसे Artifact Registry में सेव किया जाता है. इससे यह पक्का होता है कि आपका कोड हर बार एक जैसे और अनुमान के मुताबिक एनवायरमेंट में चले.
- सेवा खाता ज़रूरी है: आपने जो
vertex-workbench-saसेवा खाता बनाया है वह बहुत ज़रूरी है. प्रोडक्शन में, Vertex AI की ट्रेनिंग के ऑटोमेटेड जॉब, इसी (या इसी तरह के) कम से कम विशेषाधिकार वाले सेवा खाते का इस्तेमाल करके चलाए जाएंगे. इससे यह पक्का किया जा सकेगा कि ऑटोमेटेड जॉब के पास सिर्फ़ वे अनुमतियां हों जिनकी उसे ज़रूरत है.
सुरक्षित स्टोरेज: आपकी सेंट्रल आर्टफ़ैक्ट रिपॉज़िटरी
इसे अपने सेटअप में इस्तेमाल करने का तरीका
secure-genai-artifacts बकेट, आपके प्रोजेक्ट के डेटा के लिए एक ही सोर्स होता है. यह सिर्फ़ शुरुआती डेटासेट के लिए नहीं है. इसका इस्तेमाल इन चीज़ों को सेव करने के लिए किया जाता है:
- ट्रेनिंग के लिए इस्तेमाल किया जाने वाला रॉ और प्रीप्रोसेस किया गया डेटा.
- लंबे समय तक ट्रेनिंग के दौरान मॉडल के चेकपॉइंट.
- ट्रेन किए गए मॉडल के फ़ाइनल आर्टफ़ैक्ट (
.pkl,.pbया.h5फ़ाइलें). - आकलन के नतीजे और लॉग. आपने जो सुरक्षा सेटिंग लागू की हैं (सार्वजनिक ऐक्सेस को रोकना, बकेट-लेवल का एक जैसा ऐक्सेस, वर्शनिंग, और ऑडिट लॉगिंग), उनका मतलब है कि इस बकेट का इस्तेमाल भरोसे के साथ सेंट्रल स्टोर के तौर पर किया जा सकता है. यह बकेट, डेटा लीक होने और गलती से मिटने से सुरक्षित है.
प्रोडक्शन ट्रैक से कनेक्ट किया जा रहा है
प्रोडक्शन एनवायरमेंट में अपने सिद्धांतों को मैनेज करने और लागू करने के लिए, आपको इन बातों पर भी ध्यान देना चाहिए:
- लाइफ़साइकल नीतियां: लागत को मैनेज करने के लिए, लाइफ़साइकल नीतियां सेट अप की जाती हैं. इनकी मदद से, पुराने मॉडल वर्शन या डेटासेट को अपने-आप सस्ती स्टोरेज क्लास (जैसे, Nearline या Coldline) में ले जाया जाता है. इसके अलावा, इन्हें एक तय समय के बाद मिटा दिया जाता है.
- क्रॉस-प्रोजेक्ट अनुमतियां: प्रोडक्शन पाइपलाइन में, डेटा इंजीनियरिंग टीम इस बकेट में डेटा भर सकती है. यह डेटा किसी दूसरे Google क्लाउड प्रोजेक्ट से लिया जा सकता है. आपने यूनिफ़ॉर्म बकेट-लेवल ऐक्सेस की सुविधा चालू की है. इससे, अलग-अलग प्रोजेक्ट के लिए IAM अनुमतियों को मैनेज करना आसान और सुरक्षित हो जाता है. इसके लिए, जटिल (और इसलिए गलत तरीके से कॉन्फ़िगर किए जाने वाले) ACL की ज़रूरत नहीं होती.
बड़ी तस्वीर: सुरक्षा को डिफ़ॉल्ट बनाना
इस मॉडल को अपनाने से, सुरक्षा को बाद में ध्यान में रखने के बजाय, इसे बुनियादी सिद्धांत के तौर पर अपनाया जाता है. अब आप सिर्फ़ डेवलपर नहीं हैं, बल्कि अपनी टीम के लिए सुरक्षा चैंपियन हैं. टीम में शामिल होने वाले नए सदस्य को, आपको असुरक्षित और सार्वजनिक तौर पर दिखने वाली मशीन नहीं देनी चाहिए. आपने उन्हें पहले से कॉन्फ़िगर किए गए सुरक्षित एनवायरमेंट का ऐक्सेस दिया है. इसमें काम करने का सुरक्षित तरीका सबसे आसान तरीका भी है. इस तरीके से, डेटा लीक होने और सिस्टम से समझौता किए जाने की सामान्य वजहों को रोका जा सकता है. इससे कारोबार के जोखिम को कम किया जा सकता है. साथ ही, आपकी टीम को आत्मविश्वास के साथ नए-नए तरीके अपनाने और एआई के बेहतर ऐप्लिकेशन बनाने में मदद मिलती है.
8. बधाई हो!
बधाई हो! आपने एआई डेवलपमेंट एनवायरमेंट के लिए, कई लेयर वाला सुरक्षित इन्फ़्रास्ट्रक्चर बना लिया है और उसकी ऑडिट कर ली है. आपने "डिफ़ॉल्ट रूप से अनुमति नहीं" फ़ायरवॉल की स्थिति के साथ एक सुरक्षित नेटवर्क पेरीमीटर बनाया है. साथ ही, आपने एक हार्डेंड कंप्यूट इंस्टेंस डिप्लॉय किया है, डेटा बकेट को सुरक्षित किया है, और लॉग का इस्तेमाल करके यह पुष्टि की है कि आपके कंट्रोल ठीक वैसे ही काम कर रहे हैं जैसा आपने तय किया था.
रीकैप
इस लैब में, आपने ये काम किए:
- अनचाहे ट्रैफ़िक को कम करने के लिए, प्राइवेट नेटवर्किंग के साथ सुरक्षित वीपीसी उपलब्ध कराया गया है.
- बूटकिट और प्रिविलेज एस्कलेशन के ख़िलाफ़, Vertex AI Workbench के सुरक्षित किए गए इंस्टेंस को डिप्लॉय किया गया है.
- डेटा ट्रांसफ़र की निगरानी न किए जाने और गलती से सार्वजनिक तौर पर डेटा दिखने की समस्या को कम करने के लिए, Cloud Storage बकेट को सुरक्षित किया गया.
- "ब्लास्ट रेडियस" को सीमित करने के लिए, कम से कम विशेषाधिकार वाले सेवा खातों को लागू किया गया.
- डेटा की सुरक्षा और ऑडिट ट्रेल को बदला नहीं जा सकता. इसके लिए, ऑब्जेक्ट वर्शनिंग और डेटा ऐक्सेस लॉग की सुविधा चालू की गई है.