۱. قبل از شروع
این آزمایشگاه کد به شما نشان میدهد که چگونه یک کلاینت OAuth راهاندازی کنید و چگونه از کنسول Google Cloud برای اعطای نقشهای مدیریت هویت و دسترسی (IAM) به مدیران پروژه خود استفاده کنید.
پیشنیازها
- امکان پیمایش در کنسول ابری.
آنچه یاد خواهید گرفت
- چگونه برنامه خود را به عنوان یک کلاینت OAuth تنظیم کنید.
- نحوه محدود کردن دسترسی به برنامه شما با مدیریت هویت و دسترسی (IAM).
آنچه نیاز دارید
- یک مرورگر وب مدرن، مانند گوگل کروم.
- یک حساب گوگل، مانند یک حساب جیمیل یا یک حساب گوگل ورک اسپیس .
- دسترسی به یک حساب Cloud Billing یا کارت اعتباری برای ثبت نام در دوره آزمایشی رایگان .
۲. یک پروژه گوگل کلود ایجاد کنید و یک حساب پرداخت راهاندازی کنید
- وارد کنسول ابری شوید .
- به صفحه انتخاب پروژه بروید.
- روی ایجاد پروژه کلیک کنید.
- پروژه خود را نامگذاری کنید و سپس شناسه پروژه تولید شده را یادداشت کنید.
- در صورت نیاز، سایر فیلدها را ویرایش کنید.
- روی ایجاد کلیک کنید.
- اگر قبلاً این کار را نکردهاید، برای استفاده از منابع گوگل کلود ، پرداخت را در کنسول ابری فعال کنید .
اگرچه این codelab نباید هزینه زیادی داشته باشد، اما اگر هزینهای داشته باشد، دستورالعملهای بخش Clean up را دنبال کنید تا منابع را خاموش کنید و از هزینههای فراتر از این codelab جلوگیری کنید. توجه داشته باشید که کاربران جدید Google Cloud واجد شرایط دریافت نسخه آزمایشی رایگان ۳۰۰ دلاری هستند.
۳. اعطای دسترسی با IAM
IAM به شما امکان میدهد به کاربران پروژه و منابع خود، دسترسی مبتنی بر نقش اعطا کنید. در این بخش، از IAM برای اعطای دسترسی به یک کاربر به چند نقش در پروژه خود استفاده میکنید.
فعال کردن رابطهای برنامهنویسی کاربردی (API) مدیریت منابع (Resource Manager) و IAM
- در منوی پیمایش در کنسول ابری، روی APIها و خدمات (APIs & Services) کلیک کنید.

- فعال کردن APIها و خدمات را انتخاب کنید.

- IAM API را جستجو کنید و سپس آن را فعال کنید.
-
Resource Manager APIرا جستجو کنید و سپس آن را فعال کنید.
اعطای نقش در IAM
- به صفحه IAM بروید.
نام پروژه شما در انتخابگر پروژه نمایش داده میشود. انتخابگر پروژه به شما میگوید که در چه پروژهای هستید.

اگر نام پروژه خود را نمیبینید، از انتخابگر پروژه برای انتخاب آن استفاده کنید.
- روی افزودن کلیک کنید.
- آدرس ایمیل مدیر اصلی را وارد کنید.
- از منوی کشویی «انتخاب نقش» ، «ثبت گزارش» > «نمایشگر گزارشها» > «ذخیره» را انتخاب کنید.

- تأیید کنید که مدیر و نقش او در صفحه IAM فهرست شدهاند.
همین است - شما نقش مدیریت هویت و دسترسی را به یک مدیر اصلی اعطا کردید!
مشاهده اثرات نقشهای مدیریت هویت و دسترسی
در این بخش، تأیید میکنید که مدیر اصلی که به او نقشی اعطا کردهاید، میتواند به صفحات مورد انتظار کنسول ابری دسترسی داشته باشد:
- این URL را برای مدیری که این نقش را به او اعطا کردهاید، ارسال کنید:
https://console.cloud.google.com/logs?project= PROJECT_ID
- تأیید کنید که مدیر اصلی میتواند به URL دسترسی داشته باشد و آن را مشاهده کند.
مدیر اصلی نمیتواند به صفحه کنسول ابری که نقش مناسب برای آن به او اعطا نشده است، دسترسی پیدا کند. در عوض، او یک پیام خطا مانند این مثال مشاهده میکند:
You don't have permissions to view logs.
نقشهای دیگری را به همان مدیر اعطا کنید
- در کنسول ابری، به صفحه IAM بروید.
- مدیر اصلی را که میخواهید نقش دیگری به او اعطا کنید، پیدا کنید و سپس روی ویرایش کلیک کنید.
. - در پنل ویرایش مجوزها ، روی افزودن یک نقش دیگر کلیک کنید.

- در منوی کشویی «انتخاب نقش» ، روی پروژه > نمایشگر > ذخیره کلیک کنید.

مدیر اکنون نقش دوم مدیریت هویت و دسترسی را بر عهده دارد.
نقشهای اعطا شده به مدیر اصلی را لغو کنید
- مدیر اصلی که میخواهید نقش او را لغو کنید، پیدا کنید و سپس کلیک کنید
ویرایش کنید . - در پنل ویرایش مجوزها ، کلیک کنید
در کنار هر دو نقشی که قبلاً به مدیر اعطا کردهاید. - روی ذخیره کلیک کنید.
شما مدیر اصلی را از هر دو نقش حذف کردید. اگر این شخص سعی کند هر یک از صفحاتی را که قبلاً میتوانست به آنها دسترسی داشته باشد، مشاهده کند، یک پیام خطا مشاهده خواهد کرد.
۴. تمیز کردن
برای جلوگیری از اعمال هزینه به حساب گوگل کلود شما برای منابع استفاده شده در این آزمایشگاه کد:
- در کنسول ابری، به صفحه مدیریت منابع بروید.
- در لیست پروژهها، پروژهای را که میخواهید حذف کنید انتخاب کنید و سپس روی «حذف» کلیک کنید.
- در کادر محاورهای، شناسه پروژه را تایپ کنید و سپس برای حذف پروژه، روی خاموش کردن (Shut down) کلیک کنید.
۵. تبریک
تبریک! شما یاد گرفتید که چگونه یک کلاینت OAuth راهاندازی کنید و از کنسول ابری برای اعطای نقشهای مدیریت هویت و دسترسی به مدیران پروژه خود استفاده کنید.