۱. مقدمه
در این آزمایشگاه کد، یاد خواهید گرفت که چگونه از API بیگکوئری با استفاده از کنترلهای سرویس VPC محافظت کنید. آزمایشگاه کد با هیچ سرویس API محافظتشده توسط محیط سرویس شروع میشود و به کوئریها اجازه میدهد تا روی مجموعه دادههای عمومی اجرا شوند و نتایج در یک جدول پروژه ذخیره شوند. کوئری در یک پروژه اجرا میشود و جدول (جایی که نتایج ذخیره میشوند) در پروژه دیگری ایجاد میشود، که از تنظیماتی تقلید میکند که در آن دادهها میتوانند در یک پروژه ذخیره شوند اما باید با استفاده از یک پروژه دیگر به آنها دسترسی پیدا کرد.
در مرحله بعد، ما یک محیط سرویس برای محافظت از پروژه داده معرفی خواهیم کرد. شما یاد خواهید گرفت که چگونه با استفاده از قوانین ورود و خروج، تخلفات مشاهده شده را برطرف کنید و بعداً یک سطح دسترسی برای محدود کردن دسترسی با استفاده از آدرسهای IP داخلی اضافه کنید. اهداف این آزمایشگاه کد عبارتند از:
- نحوه رفع تخلفات ورودی و خروجی به ترتیب با استفاده از قوانین ورودی و خروجی را درک کنید.
- بفهمید که چرا یک تخلف خاص رخ داده است.
- دامنه رفع تخلف اعمال شده را تجزیه و تحلیل کنید.
- اصلاحیه (قانون ورود/خروج) را اصلاح کنید تا با استفاده از گزینه اجازه دادن به ترافیک از آدرسهای IP داخلی در یک شبکه VPC با استفاده از سطوح دسترسی، دامنه آن تغییر کند.
۲. راهاندازی منابع و الزامات
قبل از اینکه شروع کنی
در این آزمایشگاه کد، فرض میکنیم که شما از قبل موارد زیر را میدانید:
- اصول اولیه اجرای یک کوئری در BigQuery : میتوانید این codelab را بررسی کنید تا نحوه کوئری کردن مجموعه دادههای ویکیپدیا در BigQuery را بیاموزید.
- نحوه ایجاد و مدیریت پوشه
- نحوه ایجاد یک پروژه در یک پوشه یا انتقال یک پروژه موجود در یک پوشه
- نحوه ایجاد یک سیاست دسترسی محدود
- نحوه ایجاد و پیکربندی محیط سرویس
- چگونه میتوان تخلفات مربوط به سیاستهای امنیتی را در لاگها پیدا کرد؟
راهاندازی
تنظیمات اولیه ما به صورت زیر طراحی شده است:
- یک سازمان ابری گوگل.
- یک پوشه در زیر مجموعهی سازمان. برای این codelab ما آن را
codelab-folderمینامیم. - دو پروژه گوگل کلود که در یک پوشه،
codelab-folder، قرار دارند. برای این codelab، آنها راproject-1وproject-2مینامیم.- اگر پوشه و پروژههای مورد نظر را از قبل ایجاد نکردهاید، در کنسول Google Cloud ، یک پوشه در زیرشاخهی organization ایجاد کنید و دو پروژهی جدید در زیر آن پوشهی ایجاد شده ایجاد کنید .
- مجوزهای مورد نیاز:
- نقشهای IAM برای مدیریت پوشهها : در سطح پوشه اختصاص داده شدهاند
- نقشهای IAM برای مدیریت پروژهها : در سطح پروژه تعیین میشوند
- نقشهای IAM مورد نیاز برای پیکربندی کنترلهای سرویس VPC : در سطح سازمان تعیین میشوند
- نقشهای IAM برای مدیریت BigQuery : در سطح پروژه اختصاص داده شده است
- نقشهای IAM برای مدیریت نمونه موتور محاسباتی : در سطح پروژه اختصاص داده شده است
- حساب صورتحساب برای هر دو پروژه،
project-2وproject-1.
ایجاد یک محدوده سرویس منظم
در این آزمایشگاه کد، ما از یک سرویس محیطی معمولی برای محافظت project-1 استفاده خواهیم کرد.
- یک محیط معمولی به
perimeter-1ایجاد کنید وproject-1را به آن اضافه کنید.
ایجاد ماشین مجازی موتور محاسباتی
در این آزمایشگاه کد، ما از یک نمونه موتور محاسباتی در project-2 ، واقع در us-central1 و با استفاده از شبکه پیشفرض VPC با نام default استفاده خواهیم کرد.
- میتوانید به عنوان راهنما برای ایجاد یک نمونه موتور محاسبه از یک تصویر عمومی به مستندات مراجعه کنید.
هزینه
برای استفاده از منابع/APIهای ابری، باید امکان پرداخت صورتحساب را در کنسول Google Cloud فعال کنید. توصیه میکنیم منابع استفادهشده را غیرفعال کنید تا از پرداخت صورتحساب فراتر از این آزمایشگاه کد جلوگیری شود. کاربران جدید Google Cloud واجد شرایط برنامه آزمایشی رایگان ۳۰۰ دلاری هستند.
منابعی که هزینه دارند، BigQuery و نمونه Compute Engine هستند. میتوانید هزینه را با استفاده از ماشین حساب قیمت گذاری BigQuery و ماشین حساب قیمت گذاری Compute Engine تخمین بزنید.
۳. دسترسی به BigQuery بدون محدودیتهای کنترل سرویس VPC
پرس و جو از مجموعه دادههای عمومی و ذخیره نتایج در project-1
- برای بررسی اینکه آیا میتوانید به BigQuery API دسترسی داشته باشید یا خیر، به صفحه BigQuery Studio در
project-2وproject-1دسترسی پیدا کنید. شما باید بتوانید این کار را انجام دهید زیرا حتی اگرproject-1در یک محیط سرویس باشد، این محیط هنوز از هیچ سرویسی محافظت نمیکند. - از
project-2، کوئری زیر را برای جستجوی یک مجموعه داده عمومی اجرا کنید.
SELECT name, SUM(number) AS total
FROM `bigquery-public-data.usa_names.usa_1910_2013`
GROUP BY name
ORDER BY total DESC
LIMIT 10;
پس از اجرای کوئری به مجموعه داده عمومی (در حالی که در project-2 باقی ماندهایم):
- روی ذخیره نتایج کلیک کنید و جدول BigQuery را انتخاب کنید. (به تصویر زیر مراجعه کنید).

-
project-1به عنوان پروژه مقصد انتخاب کنید. - نام مجموعه داده را
codelab_datasetبگذارید. (در صورت عدم استفاده از مجموعه داده موجود، گزینه CREATE NEW DATASET را انتخاب کنید).
- نام جدول را به صورت
codelab-tableبنویسید. - روی ذخیره کلیک کنید.
دادههای مجموعه داده عمومی در نتیجه اجرای پرسوجو از project-2 با موفقیت در project-1 ذخیره شدهاند.
مجموعه داده کوئری ذخیره شده در project-1 از project-2
در حالی که در project-2 BigQuery Studio هستید، کوئری زیر را برای انتخاب دادهها از بین موارد زیر اجرا کنید:
- پروژه:
project-1 - مجموعه داده:
codelab_dataset - جدول:
codelab-table
SELECT name, total
FROM `project-1.codelab_dataset.codelab-table`
ORDER BY total DESC
LIMIT 10;
پرسوجو باید با موفقیت اجرا شود، زیرا نه project-2 و نه project-1 محدود به استفاده از BigQuery نیستند. دسترسی به BigQuery از و به هر مکانی مجاز است، مادامی که کاربر مجوزهای IAM مناسب را داشته باشد.
این نمودار فرآیند پرسوجوی یک کاربر اصلی از مجموعه دادههای BigQuery را نشان میدهد. هر پرسوجوی BigQuery یک کار BigQuery را آغاز میکند که سپس عملیات واقعی، در این سناریو، بازیابی دادهها را انجام میدهد. دسترسی کاربر اصلی از یک نمونه Compute Engine و از اینترنت، در حالی که از یک مجموعه داده عمومی و از یک پروژه Google Cloud جداگانه پرسوجو میکند، نشان داده شده است. فرآیند پرسوجوی دادهها (
GetData ) بدون مسدود شدن توسط کنترلهای سرویس VPC با موفقیت انجام میشود.
۴. محافظت از API بیگکوئری در پروژه مجموعه داده منبع
پیکربندی perimeter perimeter-1 را تغییر دهید و سرویس BigQuery API را به همراه منبع محافظت شده project-1 محدود کنید.

تأیید اجرای حریم سرویس
از project-2 ، مانند مرحله قبل، کوئری زیر را در BigQuery Studio اجرا کنید:
SELECT name, total
FROM `project-1.codelab_dataset.codelab-table`
ORDER BY total DESC
LIMIT 10;
نقض کنترلهای سرویس VPC RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER رخ خواهد داد.

گزارش حسابرسی تخلف در project-1 قرار خواهد گرفت، زیرا جایی است که تخلف عبور از محدوده رخ داده است. گزارشها را میتوان با vpcServiceControlsUniqueId مشاهده شده فیلتر کرد ( VPC_SC_DENIAL_UNIQUE_ID را با شناسه منحصر به فرد مشاهده شده جایگزین کنید).
severity=ERROR
resource.type="audited_resource"
protoPayload.metadata.@type="type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"
protoPayload.metadata.vpcServiceControlsUniqueId="[*VPC_SC_DENIAL_UNIQUE_ID*]"
تخلف، egressViolations است که شامل موارد زیر میشود:
-
principalEmail: [حساب کاربری که کوئری را اجرا میکند] -
callerIp: [آدرس IP عامل کاربری که کوئری را اجرا میکند]
"egressViolations": [
{
"targetResource": "projects/project-2",
"sourceType": "Resource",
"source": "projects/project-1",
"servicePerimeter": "accessPolicies/REDACTED/servicePerimeters/perimeter-1",
"targetResourcePermissions": [ "bigquery.jobs.create"]
} ],
۵. رفع تخلف برای ایجاد BigQuery Job
این نمودار نشان میدهد که چه زمانی یک مدیر اصلی، یک پرسوجو را از
project-2 برای یک مجموعه داده در project-1 اجرا میکند. عملیات ایجاد یک کار BigQuery، از پروژه مجموعه داده ( project-1 ) در پروژهای که پرسوجو از ( project-2 ) اجرا میشود، به دلیل نقض خروج کنترلهای سرویس VPC به دلیل محافظت از API BigQuery توسط perimeter-1 سرویس، با شکست مواجه میشود. با وجود محیط پیرامونی، هیچ درخواست BigQuery API نمیتواند از project-1 به سمت خارج از محیط یا خارج از محیط به سمت پروژه محافظتشده آغاز شود؛ مگر اینکه توسط پیکربندیهای محیط پیرامونی سرویس مجاز باشد.
نقض خروج را میتوان با ایجاد یک قانون خروج که بر اساس موارد زیر است، برطرف کرد:
- منبع (از): یعنی آدرس ایمیل کاربر و متن (مثلاً: آدرس آیپی تماسگیرنده، وضعیت دستگاه، موقعیت مکانی و غیره)
- مقصد (TO): یعنی منبع، سرویس و روش یا مجوز هدف.
برای رفع نقض خروج مشاهدهشده، یک قانون خروج ایجاد کنید که به ترافیک به سمت targetResource ( project-2 ) توسط حساب کاربری که پرسوجو ( user@example.com ) را در سرویس BigQuery اجرا میکند و با استفاده از متد/مجوز bigquery.jobs.create ، اجازه عبور میدهد.

رفتار مورد انتظار از قانون خروج پیکربندی شده:
- از | هویتها: فقط هویت مشخصشده
user@example.comباید اجازه عبور از مرز پیرامون را داشته باشد. - TO | projects: هویت مشخص شده فقط در صورتی میتواند از مرزهای پیرامونی عبور کند که مقصد، پروژه مشخص شده
project-2باشد. - به | سرویسها: هویت مشخصشده میتواند ترافیک را در خارج از محیط، به سمت پروژه مشخصشده، آغاز کند، تنها در صورتی که فراخوانی API برای سرویس و روش مشخصشده باشد. در غیر این صورت، برای مثال، اگر سرویس دیگری را که توسط محیط سرویس محافظت میشود، امتحان کنند، عملیات مسدود خواهد شد زیرا سرویسهای دیگر مجاز نیستند.
تست رفع مشکل: قانون خروج
پس از اعمال قانون خروج، همان کوئری را اجرا کنید.
SELECT name, total
FROM `project-1.codelab_dataset.codelab-table`
ORDER BY total DESC
LIMIT 10;
تخلف دیگری رخ خواهد داد، این بار تخلف ورودی NO_MATCHING_ACCESS_LEVEL . تخلف جدید از نظر پروژه هدف و روش با تخلف اول متفاوت است.

تخلف جدید، تخلف ورود با ... است.
-
principalEmail: [حساب کاربری که کوئری را اجرا میکند] -
callerIp: [آدرس IP عامل کاربری که کوئری را اجرا میکند]
ingressViolations: [
0: {
servicePerimeter: "accessPolicies/REDACTED/servicePerimeters/perimeter-1"
targetResource: "projects/project-1"
targetResourcePermissions: [0: "bigquery.tables.getData"]}
]
نقض مربوط به متد bigquery.tables.getData به دلیل فراخوانی API است که توسط کار BigQuery آغاز شده و سعی در دریافت دادهها از جدول BigQuery دارد.
۶. رفع نقص برای دریافت دادههای جدول BigQuery
یک قانون ورود، تخلف ورود را برطرف میکند، ضمن اینکه کنترل دقیقی بر روی اینکه چه کسی مجاز به عبور از مرز محیط سرویس است، به همراه زمینه دسترسی مجاز، مانند پروژه منبع/هدف و روش API که میتوانند به آن دسترسی داشته باشند، ارائه میدهد.
نقض ورود توسط یک قانون ورود که با موارد زیر پیکربندی شده است، برطرف میشود:
- منبع (از): یعنی آدرس ایمیل کاربر و متن (مثلاً: آدرس آیپی تماسگیرنده، وضعیت دستگاه، موقعیت مکانی و غیره)
- مقصد (TO): یعنی منبع، سرویس و روش یا مجوز هدف.
قانون ورود، ترافیک را به سمت project-1 توسط کاربر مشخص شده روی سرویس و روش مشخص شده مجاز میکند.

رفتار مورد انتظار از قانون ورود پیکربندی شده:
- از | هویتها: فقط هویت مشخصشده
user@example.comباید اجازه عبور از مرز پیرامون را داشته باشد. - TO | projects: هویت مشخص شده فقط در صورتی میتواند از مرزهای پیرامونی عبور کند که مقصد، پروژه مشخص شده
project-1باشد. - به | سرویسها: هویت مشخصشده تنها در صورتی میتواند ترافیک را در داخل محیط آغاز کند که فراخوانی API برای API بیگکوئری و متد مشخصشده
bigquery.tables.getDataباشد.
اجرای همان پرسوجو از این پس باید به طور مناسب و بدون نقض کنترلهای سرویس VPC عمل کند.
ما با موفقیت API مربوط به BigQuery را در project-1 محدود کردیم، به طوری که فقط user@example.com بتواند از آن استفاده کند و user2@example.com نمیتواند از آن استفاده کند.
این نمودار نشان میدهد که چگونه دو مدیر اصلی مختلف تلاش میکنند تا از یک مجموعه داده یکسان پرسوجو کنند. دسترسی توسط
user2@example.com (خطوط آبی نقطهچین) توسط VPC Service Controls رد میشود، زیرا آنها مجاز به اجرای عملیات BigQuery از یا به سمت project-1 توسط پیکربندی محیط سرویس نیستند. دسترسی توسط user@example.com (خطوط ممتد سبز) موفقیتآمیز است، زیرا آنها توسط پیکربندیهای VPC Service Controls مجاز به انجام عملیات از و به سمت project-1 هستند.
۷. محدود کردن ترافیک مجاز توسط محیط سرویس بر اساس آدرس IP داخلی
پیکربندی فعلی به کاربر تعیینشده این امکان را میدهد که از هر مکانی و در هر کجای اینترنت، در صورت داشتن مجوز IAM برای جستجوی دادهها و تا زمانی که از حساب کاربری خود استفاده میکند، در BigQuery در project-1 پرسوجوهایی را اجرا کند. از دیدگاه امنیتی، این بدان معناست که اگر حساب کاربری به خطر بیفتد، هر فردی که به حساب دسترسی پیدا کند، میتواند بدون هیچ محدودیت اضافی به دادههای BigQuery دسترسی پیدا کند.
محدودیتهای بیشتر را میتوان با استفاده از سطح دسترسی در قوانین ورود و خروج برای مشخص کردن زمینه کاربر اعمال کرد. به عنوان مثال، میتوانید دسترسی را بر اساس IP منبع در رابطه با یک قانون ورود از قبل پیکربندی شده که دسترسی را بر اساس هویت تماسگیرنده مجاز میکند، مجاز کنید. دسترسی بر اساس IP منبع برای هر دو محدوده IP CIDR عمومی امکانپذیر است، مشروط بر اینکه کلاینت کاربر یک IP عمومی به آن اختصاص داده باشد، یا با استفاده از یک آدرس IP داخلی در صورتی که کلاینت کاربر از یک پروژه Google Cloud فعالیت میکند.
ایجاد سطح دسترسی با شرط دسترسی آدرس IP داخلی
در همان پوشهی scoped access policy، صفحهی Access Context Manager را باز کنید تا یک سطح دسترسی ایجاد کنید .
- در صفحه مدیریت دسترسی به محتوا، گزینه CREATE ACCESS LEVEL را انتخاب کنید.
- در پنل سطح دسترسی جدید:
- یک عنوان وارد کنید: میتوانید
codelab-alاستفاده کنید. - در بخش شرایط، روی زیرشبکههای IP کلیک کنید.
- تب Private IP را انتخاب کرده و روی SELECT VPC NETWORKS کلیک کنید.
- از پنجره Add VPC Networks ، میتوانید شبکه
defaultرا جستجو و پیدا کنید یا نام کامل شبکه را به صورت دستی در قالب//compute.googleapis.com/projects/project-2/global/networks/defaultوارد کنید. - روی افزودن شبکه VPC کلیک کنید.
- روی انتخاب زیرشبکههای IP کلیک کنید.
- منطقهای که نمونه ماشین مجازی در آن قرار دارد را انتخاب کنید. برای این آزمایشگاه کد، این منطقه
us-central1است. - روی ذخیره کلیک کنید.
- یک عنوان وارد کنید: میتوانید
ما یک سطح دسترسی ایجاد کردهایم که هنوز در هیچ یک از سیاستهای پیرامونی یا ورود/خروج اعمال نشده است.

اضافه کردن سطح دسترسی به قانون ورود
برای اینکه تأیید شود کاربری که توسط قانون ingress مجاز شده است، با سطح دسترسی نیز تأیید میشود، لازم است سطح دسترسی را در قانون ingress پیکربندی کنید. قانون ingress که دسترسی به دادههای پرسوجو را مجاز میکند، در perimeter-1 قرار دارد. قانون ingress را تغییر دهید تا منبع را به عنوان سطح دسترسی codelab-al تعریف کنید.

آزمایش پیکربندیهای جدید
پس از افزودن سطح دسترسی در قانون ورود، همان کوئری BigQuery با شکست مواجه خواهد شد، مگر اینکه از کلاینت در شبکه VPC default برای پروژه project-2 اجرا شود. برای تأیید این رفتار، کوئری را از کنسول Google Cloud در حالی که دستگاه نقطه پایانی به اینترنت متصل است، اجرا کنید. کوئری به طور ناموفق خاتمه مییابد و همراه با نشانهای از نقض ورود خواهد بود.
همین کوئری را میتوان از default شبکه VPC که در project-2 قرار دارد، اجرا کرد. به طور مشابه، اجرای همین کوئری BigQuery از یک نمونه Compute Engine واقع در project-2 با استفاده از default شبکه VPC نیز با شکست مواجه خواهد شد. دلیل این امر این است که قانون ورود هنوز طوری پیکربندی شده است که فقط به کاربر اصلی user@example.com اجازه ورود بدهد. با این حال، ماشین مجازی از حساب سرویس پیشفرض Compute Engine استفاده میکند.
برای اجرای موفقیتآمیز همان دستور از نمونه Compute Engine در project-2 ، مطمئن شوید که:
- ماشین مجازی (VM) به استفاده از BigQuery API دسترسی دارد. این کار را میتوان با انتخاب گزینه Allow full access to all Cloud APIs به عنوان محدوده دسترسی ماشین مجازی انجام داد.
- حساب کاربری سرویس متصل به ماشین مجازی به مجوزهای IAM برای موارد زیر نیاز دارد:
- ایجاد BigQuery Jobs در
project-2 - دادههای BigQuery را از جدول BigQuery واقع در
project-1دریافت کنید
- ایجاد BigQuery Jobs در
- حساب کاربری پیشفرض سرویس Compute Engine باید توسط قانون ورود و خروج مجاز باشد.
حالا باید حساب سرویس پیشفرض Compute Engine را در قوانین ورودی (برای دریافت دادهها از جدول BigQuery) و در قانون خروجی (برای ایجاد کارهای BigQuery) اضافه کنیم.

از یک نمونه Compute Engine در project-2 روی شبکه default VPC، دستور bq query زیر را اجرا کنید:
bq query --nouse_legacy_sql \
'SELECT name, total
FROM `project-1.codelab_dataset.codelab-table`
ORDER BY total DESC
LIMIT 10;'
با پیکربندی فعلی، دستور BigQuery تنها در صورتی موفق خواهد شد که:
- با استفاده از شبکه پیشفرض VPC در
project-2، روی یک ماشین مجازی اجرا شود، و - واقع در ناحیه مشخص شده
us-central1(زیرشبکه Ip) - با استفاده از حساب سرویس پیشفرض Compute Engine که در محیط سرویس پیکربندی شده است، اجرا شود.
پرسوجوی دستوری BigQuery اگر از هر جای دیگری اجرا شود، از جمله موارد زیر، با شکست مواجه خواهد شد:
- اگر روی یک ماشین مجازی با استفاده از شبکه پیشفرض VPC در
project-2اجرا شود اما در منطقهای متفاوت از زیرشبکه اضافه شده در سطح دسترسی قرار داشته باشد، یا - اگر توسط کاربر
user@example.comبا یک کلاینت کاربری در اینترنت اجرا شود.
این نمودار، دسترسی آغاز شده توسط یک مدیر اصلی،
user@example.com ، را از دو مکان مختلف نشان میدهد: اینترنت و یک نمونه Compute Engine. دسترسی به BigQuery مستقیماً از طریق اینترنت (خطوط نقطهچین آبی) توسط کنترلهای سرویس VPC مسدود شده است، در حالی که دسترسی از یک ماشین مجازی (خطوط ممتد سبز) - در حالی که خود را به عنوان حساب سرویس پیشفرض Compute Engine جا میزند - مجاز است. دسترسی مجاز به این دلیل است که محیط سرویس پیکربندی شده است تا امکان دسترسی به منابع محافظت شده از یک آدرس IP داخلی را فراهم کند.
۸. پاکسازی
اگرچه هیچ هزینه جداگانهای برای استفاده از کنترلهای سرویس VPC در زمانی که سرویس در حال استفاده نیست، وجود ندارد، اما بهترین روش، پاکسازی تنظیمات مورد استفاده در این آزمایشگاه است. همچنین میتوانید نمونه ماشین مجازی و مجموعه دادههای BigQuery یا پروژههای Google Cloud را حذف کنید تا از پرداخت هزینهها جلوگیری کنید. حذف پروژه Cloud، پرداخت هزینه برای تمام منابع مورد استفاده در آن پروژه را متوقف میکند.
- برای حذف نمونه ماشین مجازی ، مراحل زیر را انجام دهید:
- در کنسول گوگل کلود، به صفحه نمونههای ماشین مجازی بروید.
- کادر انتخاب سمت چپ نام نمونه ماشین مجازی را علامت بزنید و سپس Delete را انتخاب کنید و برای تأیید دوباره روی Delete کلیک کنید.

- برای حذف سرویس Perimeter مراحل زیر را انجام دهید:
- در کنسول Google Cloud، در سطحی که سیاست دسترسی در آن تعریف شده است، که در این مورد، در سطح پوشه است، گزینه Security و سپس VPC Service Controls را انتخاب کنید.
- در صفحه کنترلهای سرویس VPC، در ردیف جدول مربوط به محیطی که میخواهید حذف کنید، روی حذف کلیک کنید.
- برای حذف سطح دسترسی ، مراحل زیر را انجام دهید:
- در کنسول گوگل کلود، صفحه Access Context Manager را در محدوده پوشه باز کنید.
- در جدول، ردیف مربوط به سطح دسترسی که میخواهید حذف کنید را مشخص کنید، منوی سه نقطه را انتخاب کنید و سپس حذف را انتخاب کنید.
- برای خاموش کردن پروژهها ، مراحل زیر را انجام دهید:
- در کنسول گوگل کلود، به صفحه تنظیمات مدیریت و دسترسی به اطلاعات (IAM & Admin Settings) پروژهای که میخواهید حذف کنید، بروید.
- در صفحه تنظیمات مدیریت و دسترسی (IAM & Admin Settings)، گزینه خاموش کردن (Shutdown) را انتخاب کنید.
- شناسه پروژه را وارد کنید و گزینه «خاموش کردن به هر حال» را انتخاب کنید.
۹. تبریک میگویم!
در این آزمایشگاه کد، شما یک محیط کنترلهای سرویس VPC ایجاد کردید، آن را اجرا کردید و عیبیابی کردید.
اطلاعات بیشتر
همچنین میتوانید سناریوهای زیر را بررسی کنید:
- پس از اینکه پروژه توسط کنترلهای سرویس VPC محافظت شد، همان کوئری را روی مجموعه دادههای عمومی اجرا کنید.
-
project-2در همان محیطی کهproject-1قرار دارد، اضافه کنید. -
project-2را در محیط خودش اضافه کن وproject-1در محیط فعلی نگه دار. - کوئریها را برای بهروزرسانی دادهها در جدول اجرا کنید، نه فقط برای بازیابی دادهها.
مجوز
این اثر تحت مجوز عمومی Creative Commons Attribution 2.0 منتشر شده است.