اجازه دادن به درخواستهای شما برای annotatePaths
به یک حساب سرویس در لیست مجاز پروژه Google Cloud مرتبط نیاز دارد. سپس میتوانید حساب سرویس را جعل کنید و یک نشانه OAuth ایجاد کنید که به عنوان سرصفحه در درخواستها ارسال میشود.
یک حساب سرویس راه اندازی کنید
از آنجا که فقط حساب های سرویس در لیست مجاز مجاز به فراخوانی annotatePaths
هستند، شما باید از طریق جعل هویت حساب سرویس به عنوان یک حساب سرویس عمل کنید.
دستورالعمل های ایجاد حساب سرویس را دنبال کنید. ایمیل حساب سرویس دارای قالب کلی زیر است:
SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
ایمیل حساب سرویس را به نماینده کسب و کار Google خود ارسال کنید. نماینده شما این حساب سرویس را به لیست مجاز مجاز برای فراخوانی
annotatePaths
اضافه می کند.
کاربرانی را اضافه کنید که می توانند هویت حساب سرویس را جعل کنند
کاربری اضافه کنید که مجاز به جعل هویت حساب سرویس است:
gcloud iam service-accounts add-iam-policy-binding \
SERVICE_ACCOUNT \
--member=user:USER_EMAIL \
--role=roles/iam.serviceAccountTokenCreator \
--project=PROJECT_ID
همچنین میتوانید کاربران مجاز به جعل هویت حساب سرویس را از طریق کنسول Cloud اضافه کنید. به ایجاد حساب سرویس مراجعه کنید.
عیب یابی در صورت عدم موفقیت دستور
اگر این دستور ناموفق بود، از مالک پروژه بخواهید که دستور را برای شما اجرا کند یا roles/iam.serviceAccountAdmin
را با اجرای:
gcloud iam service-accounts add-iam-policy-binding \ SERVICE_ACCOUNT \ --member=USER_EMAIL \ --role=roles/iam.serviceAccountAdmin \ --project=PROJECT_ID
یک توکن OAuth کوتاه مدت ایجاد کنید
اگر میخواهید annotatePaths
با استفاده از یک نشانه OAuth راهاندازی کنید، اما تنظیمات محیطی برای تولید نشانهها ندارید، از روش موجود در این بخش برای دریافت یک نشانه OAuth کوتاه مدت با استفاده از gcloud CLI استفاده کنید. (توکن ظرف یک ساعت منقضی می شود.) برای جزئیات بیشتر، به ایجاد اعتبارنامه های کوتاه مدت برای یک حساب خدمات مراجعه کنید. مراحلی که در ادامه می آید نمای کوتاهی از این دستورالعمل ها است.
به gcloud وارد شوید:
gcloud auth login
gcloud پنجره مرورگر را باز می کند و از شما اجازه می خواهد.
پروژه خود را تنظیم کنید:
gcloud config set project PROJECT_ID
با استفاده از print-access-token یک نشانه دسترسی کوتاه مدت دریافت کنید:
gcloud auth print-access-token
این دستور یک نشانه را برمی گرداند. توکن را کپی کرده و در دستور زیر در YOUR_ACCESS_TOKEN وارد کنید:
curl -X POST \ https://iamcredentials.googleapis.com/v1/projects/-/serviceAccounts/SERVICE_ACCOUNT:generateAccessToken \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{"scope": ["https://www.googleapis.com/auth/cloud-platform"],"lifetime": "3600s"}'
CLI کد دسترسی کوتاه مدت OAuth را برمی گرداند که اکنون می توانید از آن در درخواست برای
annotatePaths
استفاده کنید.
(اختیاری) مجوزهای نشانه OAuth را بررسی کنید
اگر با مشکلات مجوز مواجه شدید، میتوانید مجوزهای نشانه OAuth خود را با وارد کردن رمز در URL زیر، سفارشیسازی OAUTH_TOKEN بررسی کنید. (این را در نوار آدرس خود قرار دهید.)
https://oauth2.googleapis.com/tokeninfo?access_token=OAUTH_TOKEN
پاسخ باید شامل محدوده https://www.googleapis.com/auth/cloud-platform
باشد. اگر اینطور نیست، مطمئن شوید که محدوده را به درستی همانطور که در بخش قبل نشان داده شده است تنظیم کرده اید.
از OAuth در محیط های تولیدی استفاده کنید
برای دستورالعملهای استفاده از OAuth در محیط تولید ، به احراز هویت در Google مراجعه کنید.
عیب یابی
اگر درخواست شما پیام خطایی در مورد عدم پشتیبانی اعتبارنامه کاربر نهایی توسط این API برمیگرداند، اعتبارنامه کاربر کار نمیکند را ببینید.