.nh .TH KUBERNETES 1 "Jan 2015" "Eric Paris" "راهنمای کاربر kubernetes" .SH "نام (NAME)" kubectl-auth-can-i \- بررسی مجاز بودن یک عملیات .SH "خلاصه دستور (SYNOPSIS)" \fBkubectl auth can-i\fP [OPTIONS] .SH "توضیحات (DESCRIPTION)" بررسی مجاز بودن یک عملیات. .PP مقدار VERB یک فعل منطقی API کوبرنتیز مانند 'get'، 'list'، 'watch'، 'delete' و غیره است. مقدار TYPE یک منبع کوبرنتیز است که میان‌برها و گروه‌ها به طور خودکار حل‌وفصل (resolve) خواهند شد. مقدار NONRESOURCEURL یک نشانی جزئی است که با "/" آغاز می‌شود. مقدار NAME نام یک منبع مشخص در کوبرنتیز است. این دستور به خوبی با جعل هویت (impersonation) ترکیب می‌شود؛ فلگ عمومی \-\-as را ببینید. .SH "گزینه‌ها (OPTIONS)" \fB-A\fP, \fB--all-namespaces\fP=false در صورت true بودن، عملیات مشخص‌شده را در تمام namespaceها بررسی می‌کند. .PP \fB--list\fP=false در صورت true بودن، تمام عملیات‌های مجاز را چاپ می‌کند. .PP \fB--no-headers\fP=false در صورت true بودن، عملیات‌های مجاز را بدون سربرگ چاپ می‌کند. .PP \fB-q\fP, \fB--quiet\fP=false در صورت true بودن، از چاپ خروجی جلوگیری کرده و تنها کد خروج را بازمی‌گرداند. .PP \fB--subresource\fP="" زیرمنبع (SubResource) مانند pod/log یا deployment/scale .SH "گزینه‌های به ارث رسیده از دستورات والد (OPTIONS INHERITED FROM PARENT COMMANDS)" \fB--as\fP="" نام کاربری برای جعل هویت (impersonate) در این عملیات. کاربر می‌تواند یک کاربر معمولی یا یک حساب خدمت (service account) در یک namespace باشد. .PP \fB--as-group\fP=[] گروه برای جعل هویت در این عملیات؛ این فلگ می‌تواند برای تعیین چندین گروه تکرار شود. .PP \fB--as-uid\fP="" شناسه UID برای جعل هویت در این عملیات. .PP \fB--as-user-extra\fP=[] اطلاعات اضافی کاربر برای جعل هویت در این عملیات؛ این فلگ می‌تواند برای مشخص کردن چندین مقدار برای یک کلید یکسان تکرار شود. .PP \fB--cache-dir\fP="/home/username/.kube/cache" دایرکتوری پیش‌فرض کش .PP \fB--certificate-authority\fP="" مسیر فایل گواهی برای مرجع صدور گواهی (certificate authority) .PP \fB--client-certificate\fP="" مسیر فایل گواهی کلاینت برای TLS .PP \fB--client-key\fP="" مسیر فایل کلید کلاینت برای TLS .PP \fB--cluster\fP="" نام کلاستر kubeconfig برای استفاده .PP \fB--context\fP="" نام کانتکست kubeconfig برای استفاده .PP \fB--disable-compression\fP=false در صورت true بودن، فشرده‌سازی پاسخ‌ها برای تمام درخواست‌ها به سرور غیرفعال می‌شود .PP \fB--insecure-skip-tls-verify\fP=false در صورت true بودن، اعتبار گواهی سرور بررسی نخواهد شد. این کار اتصالات HTTPS شما را ناامن می‌کند .PP \fB--kubeconfig\fP="" مسیر فایل kubeconfig برای استفاده در درخواست‌های CLI. .PP \fB--kuberc\fP="" مسیر فایل kuberc برای استفاده در ترجیحات (preferences). این قابلیت می‌تواند با export کردن feature gate به صورت KUBECTL_KUBERC=false یا خاموش کردن ویژگی با KUBERC=off غیرفعال شود. .PP \fB--match-server-version\fP=false الزام به تطابق نسخه سرور با نسخه کلاینت .PP \fB-n\fP, \fB--namespace\fP="" در صورت وجود، حوزه namespace برای این درخواست CLI .PP \fB--password\fP="" رمز عبور برای احراز هویت پایه (basic authentication) در سرور API .PP \fB--profile\fP="none" نام پروفایل برای ثبت. یکی از (none|cpu|heap|goroutine|threadcreate|block|mutex|trace) .PP \fB--profile-output\fP="profile.pprof" نام فایلی که پروفایل در آن ذخیره می‌شود .PP \fB--request-timeout\fP="0" مدت زمان انتظار پیش از انصراف از یک درخواست به سرور. مقادیر غیر صفر باید شامل واحد زمانی متناظر باشند (مانند 1s، 2m، 3h). مقدار صفر یعنی درخواست‌ها هرگز منقضی نشوند (بدون timeout). .PP \fB-s\fP, \fB--server\fP="" آدرس و پورت سرور Kubernetes API .PP \fB--tls-server-name\fP="" نام سرور برای اعتبارسنجی گواهی سرور. در صورت عدم ارائه، از hostname استفاده‌شده برای برقراری ارتباط با سرور استفاده می‌شود .PP \fB--token\fP="" توکن Bearer برای احراز هویت در سرور API .PP \fB--user\fP="" نام کاربر kubeconfig برای استفاده .PP \fB--username\fP="" نام کاربری برای احراز هویت پایه در سرور API .PP \fB--version\fP=false گزینه \fB\-\-version\fP یا \fB\-\-version=raw\fP اطلاعات نسخه را چاپ کرده و خارج می‌شود؛ \fB\-\-version=vX.Y.Z...\fP نسخه گزارش‌شده را تنظیم می‌کند .PP \fB--warnings-as-errors\fP=false در نظر گرفتن هشدارهای دریافتی از سرور به عنوان خطا و خروج با کد وضعیت غیر صفر .SH "مثال (EXAMPLE)" .EX # بررسی اینکه آیا امکان ایجاد پاد در هر یک از namespaceها وجود دارد یا خیر kubectl auth can-i create pods --all-namespaces # بررسی اینکه آیا امکان فهرست کردن deploymentها در namespace جاری وجود دارد یا خیر kubectl auth can-i list deployments.apps # بررسی اینکه آیا حساب خدمت "foo" در namespace "dev" می‌تواند پادها را در namespace "prod" فهرست کند # شما باید مجاز به استفاده از جعل هویت برای گزینه عمومی "--as" باشید kubectl auth can-i list pods --as=system:serviceaccount:dev:foo -n prod # بررسی امکان انجام هر کاری در namespace جاری ("*" به معنای همه است) kubectl auth can-i '*' '*' # بررسی اینکه آیا می‌توان جاب به نام "bar" را در namespace "foo" دریافت کرد kubectl auth can-i list jobs.batch/bar -n foo # بررسی امکان خواندن لاگ‌های پاد kubectl auth can-i get pods --subresource=log # بررسی امکان دسترسی به نشانی اینترنتی /logs/ kubectl auth can-i get /logs/ # بررسی امکان تایید certificates.k8s.io kubectl auth can-i approve certificates.k8s.io # فهرست کردن تمام عملیات‌های مجاز در namespace "foo" kubectl auth can-i --list --namespace=foo .EE .SH "همچنین ببینید (SEE ALSO)" \fBkubectl-auth(1)\fP .SH "تاریخچه (HISTORY)" ژانویه ۲۰۱۵، در ابتدا توسط Eric Paris (eparis at redhat dot com) بر پایه محتوای منبع kubernetes گردآوری شد، اما امید است که از آن زمان به بعد به طور خودکار تولید شده باشند!