گروههای دسترسی
یک توسعهدهنده یا بیننده را به پروژههای برگزیده محدود کنید. اعضا را در گروه جمع کنید و به هر گروه نقشی روی برنامهها، فانکشنها، دیتابیسها، کشها و باکتهای مشخص بدهید.
عضو محدود#
عضوی که نقش توسعهدهنده یا بیننده دارد را میشود «محدود به پروژههای برگزیده» کرد. او فقط چیزهایی را میبیند و به کار میبرد که خودش یا یکی از گروههایش به او داده است؛ هر چیز دیگر در تیم برایش وجود ندارد و هر مسیری که آن را نام ببرد ۴۰۴ میدهد، درست مثل چیزی که اصلاً نیست.
- فهرستها (برنامهها، فانکشنها، دیتابیسها، کشها، باکتها، هشدارها) فقط موارد خودشان را نشان میدهند.
- هر کار روی پروژهٔ بیرون از دسترسی ۴۰۴ است: استقرارها، بیلدها، لاگها، متغیرها، کرانها، دامنهها، مانیتورینگ و مصرف.
- هر چیز در سطح تیم ۴۰۳ است: صورتحساب، اعضا، گزارش تغییرها، متغیرهای مشترک، پشتیبانی و ایجاد منبع جدید.
- کلیدهای API که این عضو بیلد میکند، و کلیدهایی که با آنها بیلد میشود، همان محدودیت را دارند؛ سرور MCP و CLI هم با همین کلیدها کار میکنند. بیلدهایی که او شروع میکند هم با کلیدی محدود استقرار میدهند.
- جایگاه (seat) همان است که نقشش میگوید: توسعهدهنده، حتی محدود، یک جایگاه میگیرد؛ بیننده رایگان است.
گروهها و نقشها#
گروه مجموعهای از اعضاست. به هر گروه روی هر برنامه، فانکشن، دیتابیس، کش یا باکت یکی از دو نقش «توسعهدهنده» (تغییر میدهد) یا «بیننده» (فقط میخواند) داده میشود. اگر عضو در چند گروه باشد یا خودش هم دسترسی مستقیم داشته باشد، بالاترین نقش میماند؛ ولی از نقش خودش در تیم بالاتر نمیرود، پس یک بیننده با نقش «توسعهدهنده» روی پروژه همچنان بیننده است.
مالک و ادمین (با تایید دوم) گروه ایجاد میکنند، اعضا را اضافه و کم میکنند و دسترسیها را میدهند. در داشبورد: تنظیمات ← اعضا (نقش و محدودیت هر عضو)، تنظیمات ← گروههای دسترسی، و در هر پروژه تنظیمات ← اعضا که نشان میدهد چه کسانی به آن پروژه دسترسی دارند و از چه راهی.
دعوت هم میتواند عضو را محدود و در گروههایی بگذارد؛ پس از پیوستن همان دسترسی را دارد.
CLI#
cloudhost teams limit dev@example.com # limited to chosen projects
cloudhost access groups create Frontend
cloudhost access groups add Frontend dev@example.com
cloudhost access allow Frontend shop-site --kind app --role viewer
cloudhost access allow dev@example.com shop-api --kind function # directly, no group
cloudhost access who shop-site --kind app # who has access
cloudhost access deny Frontend shop-site --kind app
cloudhost teams unlimit dev@example.comAPI و MCP#
همهٔ اینها در مرجع API زیر «Access groups» آمدهاند: /v1/team/groups، /v1/team/members/<person>/access و …/<name>/members برای هر پروژه. ابزارهای MCP: list_access_groups، get_access_group، create_access_group، delete_access_group، set_group_member، set_group_access، limit_member، project_access.