ভিপিসি সার্ভিস বেসিক টিউটোরিয়াল নিয়ন্ত্রণ করে II - এগ্রেস লঙ্ঘনের সমস্যা সমাধান করা

১. ভূমিকা

ভিপিসি সার্ভিস কন্ট্রোলস (VPC-SC) হলো গুগল ক্লাউডের একটি সংস্থা-স্তরের নিরাপত্তা নিয়ন্ত্রণ ব্যবস্থা, যা এন্টারপ্রাইজ গ্রাহকদের ডেটা এক্সফিলট্রেশন ঝুঁকি কমাতে সক্ষম করে। ভিপিসি সার্ভিস কন্ট্রোলস ক্লায়েন্টদের ইন্টারনেট এবং অন্যান্য পরিষেবা থেকে মাল্টি-টেন্যান্ট পরিষেবাগুলিতে সংযোগ করার সময় অনুমোদিত আইপি, ক্লায়েন্ট কনটেক্সট এবং ডিভাইস প্যারামিটারগুলিতে অ্যাক্সেস সীমাবদ্ধ করার সুযোগ দিয়ে মাল্টি-টেন্যান্ট পরিষেবাগুলিতে জিরো-ট্রাস্ট ধরনের অ্যাক্সেস প্রদান করে, যার ফলে ইচ্ছাকৃত এবং অনিচ্ছাকৃত উভয় ধরনের ক্ষতি হ্রাস পায়। আমরা ভিপিসি সার্ভিস কন্ট্রোলস বেসিক টিউটোরিয়াল I- এ যেমন দেখেছি, আপনি ভিপিসি সার্ভিস কন্ট্রোলস ব্যবহার করে এমন পেরিমিটার তৈরি করতে পারেন যা আপনার দ্বারা স্পষ্টভাবে নির্দিষ্ট করা পরিষেবাগুলির রিসোর্স এবং ডেটাকে সুরক্ষিত রাখে।

এই টিউটোরিয়ালের উদ্দেশ্যগুলো হলো:

  • VPC সার্ভিস কন্ট্রোলের মূল বিষয়গুলো বুঝুন
  • একটি সার্ভিস পেরিমিটার আপডেট করুন এবং ড্রাই-রান মোড ব্যবহার করে এটি পরীক্ষা করুন।
  • VPC সার্ভিস কন্ট্রোলস দিয়ে দুটি সার্ভিস সুরক্ষিত করুন
  • ক্লাউড স্টোরেজ থেকে কোনো অবজেক্ট তালিকাভুক্ত করার সময় একটি VPC সার্ভিস কন্ট্রোলস ইগ্রেস ভায়োলেশন ট্রাবলশুট করুন।

২. সেটআপ এবং প্রয়োজনীয়তা

এই টিউটোরিয়ালটির জন্য আমাদের নিম্নলিখিত পূর্বশর্তগুলো প্রয়োজন:

dbec101f41102ca2.png

রিসোর্স-সেটআপ

  1. VPC সার্ভিস কন্ট্রোলস বেসিক টিউটোরিয়াল I- এর "রিসোর্স-সেটআপ" বিভাগে বর্ণিত পদ্ধতি অনুসারে রিসোর্সগুলি সেট আপ করুন।
  2. ক্লাউড স্টোরেজ পরিচালনা করার জন্য আপনার প্রয়োজনীয় অনুমতি আছে কিনা তা যাচাই করুন।
  3. এই টিউটোরিয়ালের জন্য, আমরা ক্লাউড কনসোলের পরিবর্তে CLI ব্যবহার করা শুরু করব। যেকোনো একটি ডেভেলপমেন্ট এনভায়রনমেন্টে gcloud CLI সেট আপ করুন:
  • ক্লাউড শেল : আগে থেকে সেট আপ করা gcloud CLI সহ একটি অনলাইন টার্মিনাল ব্যবহার করতে, ক্লাউড শেল সক্রিয় করুন।

আপনার ক্লাউড কনসোলের উপরের ডান কোণায় থাকা আইকনটিতে ক্লিক করে ক্লাউড শেল সক্রিয় করুন। সেশনটি চালু হতে কয়েক সেকেন্ড সময় লাগতে পারে। আরও বিস্তারিত জানতে ক্লাউড শেল নির্দেশিকা দেখুন।

a0ceb29950db4eac.png

খরচ

ক্লাউড রিসোর্স/এপিআই ব্যবহার করার জন্য আপনাকে ক্লাউড কনসোলে বিলিং চালু করতে হবে। এই কোডল্যাবটি সম্পন্ন করতে খুব বেশি খরচ হবে না, এমনকি আদৌ কোনো খরচ নাও হতে পারে। এই টিউটোরিয়ালের পর বিলিং এড়ানোর জন্য রিসোর্সগুলো বন্ধ করতে, আপনি আপনার তৈরি করা রিসোর্সগুলো অথবা প্রজেক্টটি ডিলিট করে দিতে পারেন। নতুন গুগল ক্লাউড ব্যবহারকারীরা ৩০০ মার্কিন ডলারের ফ্রি ট্রায়াল প্রোগ্রামের জন্য যোগ্য।

শুধুমাত্র ভিএম ইনস্ট্যান্স এবং ক্লাউড স্টোরেজ অবজেক্টের জন্যই খরচ হবে। ভিএম ইনস্ট্যান্সের আনুমানিক খরচ প্রাইসিং ক্যালকুলেটরে পাওয়া যাবে। ক্লাউড স্টোরেজের আনুমানিক খরচ এই প্রাইসিং লিস্টে পাওয়া যাবে।

৩. একটি স্টোরেজ বাকেট এবং অবজেক্ট তৈরি করুন

যেমনটি আগে উল্লেখ করা হয়েছে, আমরা আগের টিউটোরিয়ালে তৈরি করা রিসোর্সগুলো পুনরায় ব্যবহার করতে যাচ্ছি। তাই আমরা ক্লাউড স্টোরেজ বাকেট তৈরির কাজটি এগিয়ে নিয়ে যাব। এই টিউটোরিয়ালের জন্য, আমরা কনসোলের পরিবর্তে gcloud CLI ব্যবহার করা শুরু করব।

  1. গুগল কনসোলে, ProjectX নির্বাচন করুন। এই প্রজেক্টে আমরা স্টোরেজ বাকেট এবং অবজেক্ট তৈরি করব।
  2. নিম্নলিখিত কমান্ডটি চালিয়ে ক্লাউড শেলটি ProjectX ব্যবহার করার জন্য সেট করেছেন কিনা তা নিশ্চিত করুন:
gcloud config set project PROJECT_ID
  1. আপনার ডেভেলপমেন্ট এনভায়রনমেন্টে নিম্নলিখিত কমান্ডটি চালান:
gcloud storage buckets create gs://BUCKET_NAME --location=us-central1
  1. একটি স্টোরেজ অবজেক্ট তৈরি করুন যাতে আমরা ProjectZ-এ অবস্থিত VM ইনস্ট্যান্স থেকে এটি পড়তে পারি। আমরা একটি .txt ফাইল তৈরি করব।
nano hello.txt 

টেক্সট ফাইলটিতে আপনার ইচ্ছামত যেকোনো কিছু যোগ করুন।

  1. বস্তুটি বাকেটে আপলোড করুন।
gcloud storage cp /home/${USER}/hello.txt gs://BUCKET_NAME
  1. অবজেক্টটি বাকেটে আপলোড হয়েছে কিনা তা যাচাই করতে এটি তালিকাভুক্ত করুন
gcloud storage ls gs://BUCKET_NAME

আপনাকে অবশ্যই কনসোলে hello.txt ফাইলটি দেখতে হবে।

৪. ক্লাউড স্টোরেজ এপিআই সুরক্ষিত করুন

পূর্ববর্তী কোডল্যাবে, আমরা একটি পেরিমিটার তৈরি করে কম্পিউট ইঞ্জিন এপিআই (Compute Engine API) সুরক্ষিত করেছিলাম। এই কোডল্যাবে, আমরা আমাদের ড্রাই রান মোড পেরিমিটারটি সম্পাদনা করব এবং ক্লাউড স্টোরেজ (Cloud Storage) যুক্ত করব। এটি অডিট লগে ভিপিসি সার্ভিস কন্ট্রোলস (VPC Service Controls) লঙ্ঘনগুলো দেখানোর মাধ্যমে পেরিমিটার সুরক্ষার প্রভাব নির্ধারণ করতে আমাদের সাহায্য করবে, কিন্তু পেরিমিটারটি প্রয়োগ না করা পর্যন্ত রিসোর্সগুলো অ্যাক্সেসযোগ্য থাকবে।

  1. গুগল কনসোলে, আপনার অর্গানাইজেশন নির্বাচন করুন; VPC সার্ভিস কন্ট্রোলস অ্যাক্সেস করুন । নিশ্চিত করুন যে আপনি অর্গ স্কোপে আছেন।
  2. ক্লাউড শেল খুলুন এবং পূর্ববর্তী ল্যাবে তৈরি করা ড্রাই রান পেরিমিটার 'সুপারপ্রোটেকশন' আপডেট করুন:
gcloud access-context-manager perimeters dry-run update SuperProtection --policy=POLICY --add-restricted-services=storage.googleapis.com
  1. পরিধি বর্ণনা করে ক্লাউড স্টোরেজ এপিআই আপডেট করা হয়েছে কিনা তা যাচাই করুন।
gcloud access-context-manager perimeters dry-run describe SuperProtection --policy=POLICY 

আউটপুটে আপনি দেখতে পাবেন যে ক্লাউড স্টোরেজ এপিআই সীমাবদ্ধ পরিষেবাগুলির নীচে তালিকাভুক্ত রয়েছে।

Compute Engine API-এর সাথে কিন্তু একটি " -vpcAccessibleServices: {}" লেবেল সহ:

2025ddc01a2e9a81.png

৫. ক্লাউড স্টোরেজ এপিআই সুরক্ষিত আছে কিনা তা যাচাই করুন।

ড্রাই রান মোডে, ProjectZ-এ তৈরি করা VM ইনস্ট্যান্স থেকে ProjectX-এর (যেটি স্টোরেজ বাকেট হোস্ট করছে) অবজেক্টটি লিস্ট করে যাচাই করুন যে "সুপারপ্রোটেকশন" পেরিমিটারটি ডিনায়াল দেখাচ্ছে কিনা।

  1. ক্লাউড কনসোলে, প্রজেক্ট সিলেক্টরে গিয়ে ProjectZ নির্বাচন করুন, তারপর Compute Engine > VM Instances- এ যান।
  2. ভিএম ইনস্ট্যান্সের সাথে সংযোগ স্থাপন করতে এবং এর কমান্ড লাইন অ্যাক্সেস করতে SSH বোতামটি ক্লিক করুন।

5ca02149b78c11f9.png

  1. আমরা আগে যে hello.txt ফাইলটি আপলোড করেছিলাম, সেটি তালিকাভুক্ত করুন।
gcloud storage ls gs://BUCKET_NAME

যেহেতু ড্রাই-রান মোডে ক্লাউড স্টোরেজ এপিআই সুরক্ষিত থাকে, তাই আপনি রিসোর্সগুলো তালিকাভুক্ত করতে পারলেও, ProjectZ অডিট লগে অবশ্যই একটি ত্রুটির বার্তা থাকতে হবে।

  1. ProjectZ-এর Logs Explorer API- তে যান এবং VPC Service Controls-এর শেষ ত্রুটির বার্তাটি খুঁজুন। আমরা যে লগটি খুঁজছি তা পেতে আপনি এই ফিল্টারটি ব্যবহার করতে পারেন:
protoPayload.status.details.violations.type="VPC_SERVICE_CONTROLS"
"(Dry Run Mode) Request is prohibited by organization's policy. vpcServiceControlsUniqueIdentifier:UNIQUE_ID"

এই ফিল্টারটি আমাদের ড্রাই-রান মোডে ক্লাউড স্টোরেজের অন্তর্গত সর্বশেষ লঙ্ঘনটি দেখাবে। লগটি দেখতে কেমন তার একটি উদাহরণ এখানে দেওয়া হলো এবং ProjectX-এ অবস্থিত বাকেটের বিষয়বস্তু তালিকাভুক্ত করার চেষ্টা করার সময় আমরা যাচাই করতে পারি যে লঙ্ঘনটি একটি বহির্গমন লঙ্ঘন।

egressViolations: [
0: {
servicePerimeter: "accessPolicies/POLICY/servicePerimeters/SuperProtection"
source: "projects/PROJECTX_ID"
sourceType: "Network"
targetResource: "projects/PROJECTZ_ID"
}
]
resourceNames: [
0: "projects//buckets/BUCKET_NAME"
]
securityPolicyInfo: {
organizationId: "ORGANIZATION_ID"
servicePerimeterName: "accessPolicies/POLICY/servicePerimeters/SuperProtection"
}
violationReason: "NETWORK_NOT_IN_SAME_SERVICE_PERIMETER"
vpcServiceControlsUniqueId: "UNIQUE_ID"
}
methodName: "google.storage.objects.list"
  1. যেহেতু আমরা যাচাই করে দেখেছি যে ক্লাউড স্টোরেজে করা এপিআই কলটি একটি ভিপিসি সার্ভিস কন্ট্রোলস লঙ্ঘন তৈরি করে, তাই আমরা নতুন কনফিগারেশন দিয়ে পেরিমিটারটি আরও কঠোর করব। ক্লাউড শেল খুলুন এবং ড্রাই-রান পেরিমিটারটি কঠোর করুন:
gcloud access-context-manager perimeters dry-run enforce SuperProtection --policy=POLICY --async
  1. ড্রাই-রান পরিধি সঠিকভাবে প্রয়োগ করা হয়েছে কিনা তা যাচাই করতে SSH ব্যবহার করে VM ইনস্ট্যান্সে সংযোগ করুন এবং স্টোরেজ বাকেটটি পুনরায় তালিকাভুক্ত করুন।
gcloud storage ls gs://BUCKET_NAME

স্টোরেজ অবজেক্টগুলোর তালিকার পরিবর্তে আমরা ভিএম সিএলআই-তে একটি ভিপিসি সার্ভিস কন্ট্রোল ভায়োলেশন পাব:

ERROR: (gcloud.storage.ls) User [PROJECT_NUMBER-compute@developer.gserviceaccount.com] does not have permission to access b instance [BUCKET_NAME] (or it may not exist): Request is prohibited by organization's policy. vpcServiceControlsUniqueIdentifier:"UNIQUE_ID"

আমরা ভিপিসি সার্ভিস কন্ট্রোল ব্যবহার করে পেরিমিটারের বাইরের কোনো রিসোর্স থেকে ডেটা পড়া বা সেখানে ডেটা কপি করা প্রতিরোধ করার মাধ্যমে সফলভাবে ডেটা এক্সফিলট্রেশন প্রতিরোধ করেছি।

৬. তালিকা প্রত্যাখ্যানের সমস্যা সমাধান।

আমরা ভিএম ইনস্ট্যান্স সিএলআই থেকে পাওয়া ডিনায়ালটির ট্রাবলশুট করতে যাচ্ছি। চলুন অডিট লগগুলো চেক করে ভিপিসি সার্ভিস কন্ট্রোলস ইউনিক আইডিটি খুঁজি।

  1. প্রজেক্ট সিলেক্টরে যান এবং ProjectZ নির্বাচন করুন।
  2. লগস এক্সপ্লোরারে নিম্নলিখিত কোয়েরিটি ব্যবহার করে অডিট লগ থেকে VPC সার্ভিস কন্ট্রোলস ইউনিক আইডিটি খুঁজুন:
resource.type="audited_resource"
protoPayload.metadata."@type"="type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"

এটি সমস্ত ভিপিসি সার্ভিস কন্ট্রোলস অডিট লগ দেখাবে। আমরা সর্বশেষ এরর লগটি খুঁজব। যেহেতু এপিআই কলটি ভিএম ইনস্ট্যান্স থেকে করা হয়েছিল, তাই প্রিন্সিপাল অবশ্যই কম্পিউট ইঞ্জিন সার্ভিস অ্যাকাউন্ট " PROJECT_NUMBER-compute@developer.gserviceaccount.com" হতে হবে।

যেহেতু আমাদের কাছে ইতিমধ্যেই VPC সার্ভিস কন্ট্রোলস-এর ইউনিক আইডি আছে, আমরা এই ফিল্টারটি ব্যবহার করে সরাসরি কাঙ্ক্ষিত লগটি পেতে পারি:

protoPayload.metadata.vpcServiceControlsUniqueId="UNIQUE_ID"
  1. VPC Service Controls হেডারে ক্লিক করুন এবং "Troubleshoot denial" নির্বাচন করুন, যা VPC Service Controls Troubleshooter খুলবে।

এই এপিআইটি একটি ব্যবহার-বান্ধব ইউজার ইন্টারফেসে আমাদেরকে লঙ্ঘনের কারণ দেখাবে এবং অন্যান্য দরকারি তথ্যের পাশাপাশি এটি প্রবেশজনিত নাকি নির্গমনজনিত লঙ্ঘন ছিল, সেটাও জানাবে।

এই অনুশীলনীতে আমরা নিম্নলিখিত বিষয়গুলো খুঁজব:

authenticationInfo: {
principalEmail: "PROJECT_ID-compute@developer.gserviceaccount.com"
egressViolations: [
0: {
servicePerimeter: "accessPolicies/POLICY/servicePerimeters/SuperProtection"
source: "projects/PROJECTZ_ID"
sourceType: "Network"
targetResource: "projects/PROJECTX_ID"
}
violationReason: "NETWORK_NOT_IN_SAME_SERVICE_PERIMETER"

এই তথ্য থেকে আমরা বুঝতে পারি যে, Compute Engine সার্ভিস অ্যাকাউন্টকে ProjectZ থেকে ProjectX-এর স্টোরেজ বাকেট অ্যাক্সেস করার অনুমতি দেওয়ার জন্য আমাদের একটি ইগ্রেস রুল তৈরি করতে হবে। এছাড়াও আমরা দেখতে পাচ্ছি যে নেটওয়ার্কটি একই পেরিমিটারের মধ্যে নেই, তাই আমাদের সার্ভিসগুলোর মধ্যে VPC কমিউনিকেশনের অনুমতি দিতে হবে এবং সার্ভিস পেরিমিটারগুলো জুড়ে ডেটা শেয়ার করতে হবে।

  1. ক্লাউড শেল সক্রিয় করুন এবং একটি টেক্সট এডিটর ব্যবহার করে বহির্গমন নিয়মটি সহ একটি .yaml ফাইল তৈরি করুন।
nano egresstorage.yaml 
- egressTo:
    operations:
    - serviceName: storage.googleapis.com
      methodSelectors:
      - method: \"*\"
    resources:
    - projects/PROJECTX_ID
 egressFrom:
    identities:
    - serviceAccount:PROJECT_ID-compute@developer.gserviceaccount.com
  1. ProjectZ-কে সুরক্ষিত করে এমন ইনগ্রেস পলিসিটি আপডেট করুন
gcloud access-context-manager perimeters update SuperProtection --set-egress-policies=egresstorage.yaml --policy=POLICY 

এখন আমরা ভিএম ইনস্ট্যান্স থেকে বাকেটটি অ্যাক্সেস করার জন্য আবার চেষ্টা করতে পারি।

  1. ক্লাউড কনসোলে, প্রজেক্ট সিলেক্টরে গিয়ে ProjectZ নির্বাচন করুন, তারপর Compute Engine > VM Instances- এ যান।
  2. ভিএম ইনস্ট্যান্সের সাথে সংযোগ স্থাপন করতে এবং এর কমান্ড লাইন অ্যাক্সেস করতে SSH বোতামটি ক্লিক করুন।
  3. একবার আপনি VM CLI-তে প্রবেশ করলে, স্টোরেজ বাকেটের অবজেক্টগুলো তালিকাভুক্ত করার চেষ্টা করুন।
gcloud storage ls gs://BUCKET_NAME/

আপনি নিম্নলিখিত ত্রুটি বার্তাটি পাবেন:

ERROR: (gcloud.storage.ls) User [PROJECT_ID-compute@developer.gserviceaccount.com] does not have permission to access b instance [BUCKET_NAME] (or it may not exist): PROJECT_ID-compute@developer.gserviceaccount.com does not have storage.objects.list access to the Google Cloud Storage bucket. Permission 'storage.objects.list' denied on resource (or it may not exist).
  1. স্টোরেজ বাকেটে থাকা অবজেক্টগুলো তালিকাভুক্ত করার জন্য আমাদের কম্পিউট ইঞ্জিন সার্ভিস অ্যাকাউন্টকে অবজেক্ট রিডার পারমিশন প্রদান করতে হবে।
gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME --member=serviceAccount:PROJECT_ID-compute@developer.gserviceaccount.com --role=roles/storage.objectViewer
  1. চলুন, আবারও ভিএম ইনস্ট্যান্সের সিএলআই থেকে hello.txt ফাইলটি তালিকাভুক্ত করার চেষ্টা করি।
gcloud storage ls gs://BUCKET_NAME/
.
.
gs://BUCKET_NAME/hello.txt

এখন আমরা VPC সার্ভিস কন্ট্রোলস-এর অনুমতি লঙ্ঘন ছাড়াই অবজেক্টটি তালিকাভুক্ত করতে পারছি, কিন্তু ফাইলটি ডাউনলোড করার ব্যাপারে কী হবে? চলুন, সেটাই চেষ্টা করে দেখি।

gcloud storage cp gs://BUCKET_NAME/hello.txt /home/${USER}

এবং আমরা নিম্নলিখিত আউটপুট পাব

Copying gs://BUCKET_NAME/hello.txt to file:///home/${USER}
 Completed files 1/1 | 54.0B/54.0B  

৭. পরিচ্ছন্নতা

সার্ভিসটি ব্যবহার না করা হলে ভিপিসি সার্ভিস কন্ট্রোলস ব্যবহারের জন্য কোনো আলাদা চার্জ না থাকলেও, এই ল্যাবরেটরিতে ব্যবহৃত সেটআপটি গুছিয়ে নেওয়া একটি উত্তম অভ্যাস। চার্জ এড়ানোর জন্য আপনি আপনার ভিএম ইনস্ট্যান্স এবং/অথবা ক্লাউড প্রজেক্ট ডিলিটও করতে পারেন। আপনার ক্লাউড প্রজেক্ট ডিলিট করলে সেই প্রজেক্টের মধ্যে ব্যবহৃত সমস্ত রিসোর্সের বিলিং বন্ধ হয়ে যায়।

  1. আপনার ভিএম ইনস্ট্যান্সটি ডিলিট করতে, ভিএম ইনস্ট্যান্স নামের বাম পাশের চেকবক্সটি সিলেক্ট করুন এবং তারপর ডিলিট বাটনে ক্লিক করুন।

da0abf0894fe03cd.png

  1. পরিধিটি মুছে ফেলার জন্য, নিম্নলিখিত ধাপগুলি সম্পন্ন করুন:
  • গুগল ক্লাউড কনসোলে, সিকিউরিটি (Security) -তে ক্লিক করুন এবং তারপরে অর্গানাইজেশন (Organization) স্কোপে থাকা ভিপিসি সার্ভিস কন্ট্রোলস (VPC Service Controls) -এ ক্লিক করুন।
  • VPC সার্ভিস কন্ট্রোলস পেজে, আপনি যে পেরিমিটারটি মুছে ফেলতে চান তার সংশ্লিষ্ট টেবিলের সারিতে, "ডিলিট আইকন"-এ ক্লিক করুন।
  1. অ্যাক্সেস লেভেলটি মুছে ফেলার জন্য, নিম্নলিখিত ধাপগুলো সম্পন্ন করুন:
  • গুগল ক্লাউড কনসোলে, ফোল্ডার স্কোপে অ্যাক্সেস কনটেক্সট ম্যানেজার পেজটি খুলুন।
  • গ্রিডে, আপনি যে অ্যাক্সেস লেভেলটি মুছতে চান তার সারিতে, "ডিলিট আইকন"-এ ক্লিক করুন এবং তারপরে ডিলিট-এ ক্লিক করুন।
  1. স্টোরেজ অবজেক্ট এবং বাকেট মুছে ফেলার জন্য, নিম্নলিখিত ধাপগুলো সম্পন্ন করুন:
  • গুগল ক্লাউড কনসোলে, ক্লাউড স্টোরেজ বাকেটস পৃষ্ঠাটি খুলুন।
  • আপনার তৈরি করা বাকেটটির পাশের চেকবক্সটি নির্বাচন করুন।
  • ডিলিট-এ ক্লিক করুন।
  • যে উইন্ডোটি খুলবে, সেখানে বাকেটটি মুছে ফেলতে চান কিনা তা নিশ্চিত করুন।
  • ডিলিট-এ ক্লিক করুন।
  1. আপনার প্রজেক্টটি বন্ধ করতে, নিম্নলিখিত ধাপগুলো সম্পন্ন করুন:
  • গুগল ক্লাউড কনসোলে, আপনি যে প্রজেক্টটি মুছে ফেলতে চান তার IAM ও অ্যাডমিন সেটিংস পৃষ্ঠায় যান।
  • IAM ও অ্যাডমিন সেটিংস পেজে, শাটডাউন-এ ক্লিক করুন।
  • প্রজেক্ট আইডি প্রবেশ করান এবং 'Shutdown anyway'-তে ক্লিক করুন।

৮. অভিনন্দন!

এই কোডল্যাবে, আপনি একটি VPC সার্ভিস কন্ট্রোলস ড্রাই-রান পেরিমিটার আপডেট করেছেন, সেটিকে কার্যকর করেছেন এবং এর সমস্যা সমাধান করেছেন।

আরও জানুন

লাইসেন্স

এই কাজটি ক্রিয়েটিভ কমন্স অ্যাট্রিবিউশন ২.০ জেনেরিক লাইসেন্সের অধীনে লাইসেন্সকৃত।