شما در حال مشاهده مستندات Apigee Edge هستید.
به مستندات Apigee X مراجعه کنید . اطلاعات
هنگام استفاده از SAML با Edge API، فرآیندی که برای به دست آوردن دسترسی OAuth2 و بهروزرسانی توکنها از ادعای SAML استفاده میکنید، جریان کد عبور نامیده میشود. با جریان کد عبور، شما از یک مرورگر برای به دست آوردن یک کد عبور یکبار مصرف استفاده میکنید که سپس برای به دست آوردن توکنهای OAuth2 از آن استفاده میکنید.
با این حال، محیط شما ممکن است از اتوماسیون برای وظایف توسعه رایج، مانند اتوماسیون تست یا ادغام مداوم/استقرار مداوم (CI/CD) پشتیبانی کند. برای خودکارسازی این وظایف هنگام فعال بودن SAML، به روشی نیاز دارید تا توکنهای OAuth2 را بدون نیاز به کپی/پیست کردن کد عبور از مرورگر، دریافت و بهروزرسانی کنید.
درباره کاربران دستگاه
Apigee Edge از کاربران ماشین در سازمان شما که از SAML پشتیبانی میکند، پشتیبانی میکند. کاربران ماشین صرفاً برای اتوماسیون استفاده میشوند و مستقیماً توسط انسان قابل دسترسی نیستند.
یک کاربر ماشین میتواند توکنهای OAuth2 را بدون نیاز به مشخص کردن کد عبور دریافت کند. این بدان معناست که شما میتوانید با استفاده از Edge API فرآیند دریافت و بهروزرسانی توکنهای OAuth2 را کاملاً خودکار کنید.
مراحل خودکارسازی فرآیند تولید توکن
برای خودکارسازی فرآیند تولید توکن:
| قدم | توضیحات |
|---|---|
| ۱ | یک کاربر دستگاه در منطقه هویت SAML خود ایجاد کنید |
| ۲ | نقشهای مورد نیاز را به کاربر دستگاه در سازمان Edge خود اختصاص دهید |
| ۳ | توکنهای OAuth2 کاربران دستگاه را دریافت کنید |
ویدیو: برای آشنایی با نحوه خودکارسازی دسترسی به APIهای Apigee Edge با استفاده از اعتبارنامههای کاربر دستگاه، یک ویدیوی کوتاه تماشا کنید.
مدیریت کاربران دستگاه برای مناطق هویت SAML
Apigee رابط خط فرمان مدیریت کاربر دستگاه (CLI) را برای ایجاد و مدیریت حسابهای کاربری دستگاه ارائه میدهد. مراحل استفاده از CLI مدیریت کاربر دستگاه در بخشهای بعدی شرح داده شده است.
از رابط خط فرمان (CLI) استفاده کنید
برای استفاده از رابط خط فرمان مدیریت کاربر دستگاه، ابتدا فایل زیر را دانلود و از حالت فشرده خارج کنید: usermgmt.tar.gz (1)
فرمت فراخوانی CLI به صورت زیر است:
usermgmt_platform [command] [flags] جدول زیر پلتفرمهای پشتیبانیشده و دستور مربوطه برای فراخوانی رابط خط فرمان مدیریت کاربر دستگاه را خلاصه میکند. (فایلهای اجرایی در دایرکتوری usermgmt قرار دارند.)
| پلتفرم | ۳۲ بیتی | ۶۴ بیتی |
|---|---|---|
| لینوکس | usermgmt_linux_386 | usermgmt_linux_amd64 |
| مک | usermgmt_darwin_386 | usermgmt_darwin_amd64 |
| ویندوز | usermgmt_windows_386 | usermgmt_windows_amd64 |
جدول زیر خلاصهای از دستوراتی که میتوان مشخص کرد را نشان میدهد.
به صورت اختیاری، میتوانید یکی از پرچمهای زیر را برای نمایش راهنما در دستور مشخص شده ارسال کنید: -h یا --help
وارد CLI شوید
اولین باری که در طول ۲۴ ساعت رابط خط فرمان (CLI) را اجرا میکنید، از شما خواسته میشود که اطلاعات حساب کاربری zoneadmin خود را وارد کنید.
Enter your Apigee credentials
Username: zoneadmin-username
Password: zoneadmin-password
If your user is opted with MFA, enter MFA code. Otherwise press enter to skip.
MFA: mfa-code_or_enter_to_skipرابط خط فرمان مدیریت کاربر دستگاه، یک توکن دسترسی را در دستگاه محلی شما ذخیره میکند، بنابراین شما فقط باید یک بار در هر 24 ساعت وارد سیستم شوید.
دریافت کمک با استفاده از رابط خط فرمان (CLI)
نمایش اطلاعات استفاده از رابط خط فرمان (CLI) با استفاده از دستور usermgmt_ platform help . برای مشاهده لیست پلتفرمهای پشتیبانی شده، به بخش «استفاده از رابط خط فرمان» (Use the CLI) مراجعه کنید.
usermgmt_platform help
اطلاعات کمکی زیر نمایش داده میشود:
A command-line interface (CLI) to manage machine user accounts to automate
Apigee identity zone management. Use the CLI to create, list, delete,
and reset the password for machine users.
Usage:
usermgmt [flags]
usermgmt [command]
Available Commands:
create Creates a machine users in an identity zone.
delete Deletes a machine users in an identity zone.
help Help about any command
list Lists the machine users in an identity zone.
reset Resets the password for a machine user in an identity zone.
Flags:
-h, --help help for usermgmt
Use "usermgmt [command] --help" for more information about a command.
با وارد کردن همزمان دستور و فلگ -h یا --help در خط فرمان، راهنمای یک دستور خاص را نمایش دهید.
برای مثال، برای دریافت کمک در مورد دستور list:
usermgmt_platform list -h
اطلاعات کمکی زیر نمایش داده میشود:
Lists the machine users in an identity zone.
Usage:
usermgmt list [flags]
Flags:
-h, --help help for list
ایجاد یک کاربر دستگاه در یک منطقه هویتی
با استفاده از دستور platform create، یک کاربر ماشین در یک منطقه شناسایی ایجاد کنید. برای مشاهده لیست پلتفرمهای پشتیبانی شده، به بخش «استفاده از رابط خط فرمان» مراجعه کنید.
- دستور زیر را وارد کنید:
usermgmt_platform createلیست مناطق شناسایی نمایش داده میشود:
myzone1 myzone2 - نام یک منطقه را در اعلان وارد کنید:
Enter a zone name: myzone1 - یک نام کاربری برای کاربر دستگاه وارد کنید:
Create a Machine User Username: machineuser1@mycompany.com - یک رمز عبور برای کاربر دستگاه وارد کنید. در صورت درخواست، رمز عبور را دوباره وارد کنید.
Password: password Re-enter password: passwordکاربر ایجاد میشود.
Created machine user machineuser1@mycompany.com
لیست کردن تمام کاربران دستگاه در یک منطقه شناسایی
با استفاده از دستور platform list، تمام کاربران دستگاه در یک منطقه شناسایی را فهرست کنید. برای فهرست پلتفرمهای پشتیبانیشده، به بخش «استفاده از رابط خط فرمان» مراجعه کنید.
- دستور زیر را وارد کنید:
لیست مناطق شناسایی نمایش داده میشود:usermgmt_platform listmyzone1 myzone2 - نام یک منطقه را در اعلان وارد کنید:
Enter a zone name: myzone1لیست کاربران دستگاه در ناحیه شناسایی نمایش داده میشود:
Machine users in the zone: machineuser1@mycompany.com
تنظیم مجدد رمز عبور برای کاربر دستگاه در یک منطقه شناسایی
با استفاده از دستور platform reset، رمز عبور یک کاربر ماشین در یک منطقه شناسایی را بازنشانی کنید. برای مشاهده لیست پلتفرمهای پشتیبانی شده، به بخش «استفاده از رابط خط فرمان» مراجعه کنید.
- دستور زیر را وارد کنید:
usermgmt_platform resetلیست مناطق شناسایی نمایش داده میشود:
myzone1 myzone2 - نام یک منطقه را در اعلان وارد کنید:
Enter a zone name: myzone1 - نام کاربری دستگاهی که میخواهید رمز عبور آن را تغییر دهید، وارد کنید:
Reset User Password Enter the username for the machine user Username: machineuser1@mycompany.com - یک رمز عبور جدید برای کاربر دستگاه وارد کنید. در صورت درخواست، رمز عبور را دوباره وارد کنید.
Enter the new password: password Re-enter password: passwordرمز عبور بازنشانی میشود.
Reset password for machine user machineuser1@mycompany.com
حذف یک کاربر دستگاه در یک منطقه هویتی
با استفاده از دستور platform delete، یک کاربر ماشین را در یک منطقه شناسایی حذف کنید. برای مشاهده لیست پلتفرمهای پشتیبانی شده، به بخش «استفاده از رابط خط فرمان» مراجعه کنید.
- دستور زیر را وارد کنید:
لیست مناطق شناسایی نمایش داده میشود:usermgmt_platform deletemyzone1 myzone2 - نام یک منطقه را در اعلان وارد کنید:
Enter a zone name: myzone1 - نام کاربری دستگاهی که میخواهید حذف کنید را وارد کنید:
Delete User Enter the username for the machine user Username: machineuser1@mycompany.comکاربر دستگاه حذف میشود.
Deleted user machineuser1@mycompany.com
نقشهای مورد نیاز را به کاربر دستگاه در سازمان Edge خود اختصاص دهید
با استفاده از رابط کاربری، کاربر دستگاه را به سازمان Edge مجهز به SAML خود اضافه کنید و نقشهای مورد نیاز (مانند مدیر سازمان) را همانطور که در افزودن کاربران توضیح داده شده است، به آن اختصاص دهید.
توکنهای OAuth2 کاربر دستگاه را دریافت کنید
شما میتوانید فرآیند تولید توکن را خودکارسازی کنید و با استفاده از ابزارهای acurl (1) و get_token (1) ، همانطور که در OAuth2 برای کاربران ماشین و کاربران ماشین در مناطق SAML توضیح داده شده است، ذخیرهسازی توکن را برای کاربران ماشین مدیریت کنید.
برای دریافت توکنهای OAuth2 کاربر دستگاه به صورت دستی با curl :
- از ابزار رمزگذاری URL مورد نظر خود برای رمزگذاری نام کاربری و رمز عبور کاربر دستگاه استفاده کنید.
هشدار: استفاده از
داخلی ابزار رمزگذاری URL برای اطمینان از اینکه اعتبارنامههای کاربر دستگاه به خطر نمیافتد. - با فراخوانی نقطه پایانی توکن SAML، که در مثال زیر نشان داده شده است، توکنهای دسترسی اولیه و بهروزرسانی را ایجاد کنید:
curl -H "Content-Type: application/x-www-form-urlencoded;charset=utf-8" \ -H "accept: application/json;charset=utf-8" \ -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \ https://zoneName.login.apigee.com/oauth/token -s \ -d 'grant_type=password&username=machineusername&password=machineuserpassword'
برای احراز هویت، اعتبارنامهی رزرو شدهی کلاینت OAuth2، یعنی
ZWRnZWNsaTplZGdlY2xpc2VjcmV0، را در هدرAuthorizationوارد کنید. این فراخوانی، توکنهای دسترسی و رفرش را درstdoutچاپ میکند. - توکن دسترسی را به عنوان هدر Bearer به یک فراخوانی API مدیریت Edge ارسال کنید:
curl -H "Authorization: Bearer ACCESS_TOKEN" \ https://api.enterprise.apigee.com/v1/organizations/orgName
- وقتی توکن دسترسی منقضی میشود، میتوانید با ارسال توکن بهروزرسانی به نقطه پایانی توکن SAML، آن را بهروزرسانی کنید، همانطور که در مثال زیر نشان داده شده است:
curl -H "Content-Type:application/x-www-form-urlencoded;charset=utf-8" \ -H "Accept: application/json;charset=utf-8" \ -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \ https://zoneName.login.apigee.com/oauth/token \ -d 'grant_type=refresh_token&refresh_token=REFRESH_TOKEN'
(1) حق نشر 2023 گوگل LLC
ابزارهای usermgmt ، acurl و get_token به عنوان «نرمافزار» تحت توافقنامهی حاکم بر استفادهی شما از پلتفرم ابری گوگل، از جمله شرایط خاص سرویس که در https://cloud.google.com/terms/service-terms موجود است، در دسترس قرار گرفتهاند.