فرآیند تولید توکن را خودکار کنید

شما در حال مشاهده اسناد Apigee Edge هستید.
به مستندات Apigee X بروید .
اطلاعات

هنگام استفاده از SAML با Edge API، فرآیندی که برای به دست آوردن دسترسی OAuth2 و به‌روزرسانی نشانه‌ها از ادعای SAML استفاده می‌کنید، جریان رمز عبور نامیده می‌شود. با جریان رمز عبور، از یک مرورگر برای به دست آوردن یک رمز عبور یک بار مصرف استفاده می کنید که سپس برای به دست آوردن نشانه های OAuth2 استفاده می کنید.

با این حال، محیط شما ممکن است از اتوماسیون برای کارهای توسعه رایج، مانند اتوماسیون آزمایشی یا ادغام مداوم/ استقرار مستمر (CI/CD) پشتیبانی کند. برای خودکار کردن این وظایف در زمانی که SAML فعال است، به راهی برای به دست آوردن و بازخوانی نشانه‌های OAuth2 بدون نیاز به کپی/پیست کردن رمز عبور از مرورگر نیاز دارید.

درباره کاربران ماشین

Apigee Edge از کاربران ماشین در سازمان دارای SAML شما پشتیبانی می کند. کاربران ماشین کاملاً برای اتوماسیون استفاده می شوند و انسان مستقیماً به آنها دسترسی ندارد.

کاربر ماشین می تواند توکن های OAuth2 را بدون نیاز به تعیین رمز عبور به دست آورد. این بدان معناست که می‌توانید با استفاده از Edge API، فرآیند دریافت و تازه‌سازی توکن‌های OAuth2 را کاملاً خودکار کنید.

مراحل خودکارسازی فرآیند تولید توکن

برای خودکارسازی فرآیند تولید توکن:

مرحله توضیحات
1 یک کاربر ماشین در منطقه هویت SAML خود ایجاد کنید
2 نقش های مورد نیاز را به کاربر ماشین در سازمان Edge خود اختصاص دهید
3 توکن های OAuth2 کاربران دستگاه را دریافت کنید

ویدئو: برای آشنایی با نحوه خودکارسازی دسترسی به API های Apigee Edge با استفاده از اطلاعات کاربری کاربر دستگاه، ویدئوی کوتاهی را تماشا کنید.

مدیریت کاربران ماشین برای مناطق هویت SAML

Apigee رابط خط فرمان مدیریت کاربر ماشین (CLI) را برای ایجاد و مدیریت حساب‌های کاربر ماشین فراهم می‌کند. مراحل استفاده از CLI مدیریت کاربر ماشین در بخش های زیر توضیح داده شده است.

از CLI استفاده کنید

برای استفاده از CLI مدیریت کاربر ماشین، ابتدا فایل زیر را دانلود و untar کنید: usermgmt.tar.gz (1)

فرمت فراخوانی CLI به شرح زیر است:

usermgmt_platform [command] [flags]

جدول زیر پلتفرم های پشتیبانی شده و دستور مربوط به فراخوانی CLI مدیریت کاربر ماشین را خلاصه می کند. (قابل اجراها در پوشه usermgmt قرار دارند.)

پلت فرم 32 بیتی 64 بیتی
لینوکس usermgmt_linux_386 usermgmt_linux_amd64
مک usermgmt_darwin_386 usermgmt_darwin_amd64
ویندوز usermgmt_windows_386 usermgmt_windows_amd64

جدول زیر دستوراتی را که می توان مشخص کرد خلاصه می کند.

فرمان اطلاعات بیشتر
create یک کاربر ماشین در یک منطقه هویت ایجاد کنید
delete یک کاربر ماشین را در منطقه هویت حذف کنید
help با استفاده از CLI کمک بگیرید
list همه کاربران ماشین را در یک منطقه هویت فهرست کنید
reset بازنشانی رمز عبور برای کاربر ماشین در یک منطقه هویت

به صورت اختیاری، می توانید یکی از پرچم های زیر را برای نمایش راهنما در دستور مشخص شده ارسال کنید: -h یا --help

وارد CLI شوید

اولین باری که CLI را در یک بازه 24 ساعته اجرا می کنید، از شما خواسته می شود تا اعتبار حساب 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

CLI مدیریت کاربر ماشین یک نشانه دسترسی را در دستگاه محلی شما ذخیره می کند، بنابراین شما فقط باید یک بار در هر دوره 24 ساعته وارد شوید.

با استفاده از CLI کمک بگیرید

اطلاعات استفاده از CLI را با استفاده از دستور help platform usermgmt_ نمایش دهید. برای لیست پلتفرم های پشتیبانی شده استفاده از 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

یک کاربر ماشین در یک منطقه هویت ایجاد کنید

با استفاده از دستور create platform usermgmt_ یک کاربر ماشین در یک منطقه هویت ایجاد کنید. برای لیست پلتفرم های پشتیبانی شده استفاده از CLI را ببینید.

  1. دستور زیر را وارد کنید:
    usermgmt_platform create

    لیست مناطق هویتی نمایش داده می شود:

    myzone1
    myzone2
  2. نام یک منطقه را در اعلان وارد کنید:
    Enter a zone name: myzone1
  3. یک نام کاربری برای کاربر ماشین وارد کنید:
    Create a Machine User
    Username: machineuser1@mycompany.com
  4. یک رمز عبور برای کاربر دستگاه وارد کنید. وقتی از شما خواسته شد رمز عبور را دوباره وارد کنید.
    Password: password
    Re-enter password: password 

    کاربر ایجاد می شود.

    Created machine user machineuser1@mycompany.com

همه کاربران ماشین را در یک منطقه هویت فهرست کنید

با استفاده از دستور usermgmt_ platform list همه کاربران ماشین را در یک منطقه هویت فهرست کنید. برای لیست پلتفرم های پشتیبانی شده استفاده از CLI را ببینید.

  1. دستور زیر را وارد کنید:
    usermgmt_platform list
    لیست مناطق هویتی نمایش داده می شود:
    myzone1
    myzone2
  2. نام یک منطقه را در اعلان وارد کنید:
    Enter a zone name: myzone1

    لیست کاربران ماشین در منطقه هویت نمایش داده می شود:

    Machine users in the zone:
    machineuser1@mycompany.com
        

بازنشانی رمز عبور برای کاربر ماشین در یک منطقه هویت

با استفاده از دستور بازنشانی platform usermgmt_ رمز عبور یک کاربر ماشین را در منطقه هویتی بازنشانی کنید. برای لیست پلتفرم های پشتیبانی شده استفاده از CLI را ببینید.

  1. دستور زیر را وارد کنید:
    usermgmt_platform reset

    لیست مناطق هویتی نمایش داده می شود:

    myzone1
    myzone2
  2. نام یک منطقه را در اعلان وارد کنید:
    Enter a zone name: myzone1
  3. نام کاربری کاربر ماشینی را که می خواهید رمز عبور آن را بازنشانی کنید وارد کنید:
    Reset User Password
    Enter the username for the machine user
    Username: machineuser1@mycompany.com
  4. یک رمز عبور جدید برای کاربر دستگاه وارد کنید. وقتی از شما خواسته شد رمز عبور را دوباره وارد کنید.
    Enter the new password: password
    Re-enter password: password

    رمز عبور بازنشانی می شود.

    Reset password for machine user machineuser1@mycompany.com

یک کاربر ماشین را در منطقه هویت حذف کنید

با استفاده از دستور delete platform یک کاربر ماشین را در منطقه هویت حذف کنید. برای لیست پلتفرم های پشتیبانی شده استفاده از CLI را ببینید.

  1. دستور زیر را وارد کنید:
    usermgmt_platform delete
    لیست مناطق هویتی نمایش داده می شود:
    myzone1
    myzone2
  2. نام یک منطقه را در اعلان وارد کنید:
    Enter a zone name: myzone1
  3. نام کاربری را برای کاربر ماشینی که می خواهید حذف کنید وارد کنید:
    Delete User
    Enter the username for the machine user
    Username: machineuser1@mycompany.com 

    کاربر دستگاه حذف شده است.

    Deleted user machineuser1@mycompany.com

نقش های مورد نیاز را به کاربر ماشین در سازمان Edge خود اختصاص دهید

با استفاده از رابط کاربری، کاربر دستگاه را به سازمان Edge دارای SAML خود اضافه کنید و نقش‌های مورد نیاز (مانند سرپرست سازمان) را به آن اختصاص دهید، همانطور که در افزودن کاربران توضیح داده شده است.

توکن های OAuth2 کاربر دستگاه را دریافت کنید

همانطور که در OAuth2 برای کاربران ماشین و کاربران ماشین در مناطق SAML توضیح داده شده است، می‌توانید فرآیند تولید توکن را خودکار کنید و با استفاده از ابزارهای acurl (1) و get_token (1) برای کاربران ماشین ذخیره رمز را مدیریت کنید.

برای دریافت دستی نشانه‌های OAuth2 کاربر دستگاه با curl :

  1. از ابزار رمزگذاری URL ترجیحی خود برای رمزگذاری نام کاربری و رمز عبور کاربر دستگاه استفاده کنید.

    هشدار: از یک داخلی ابزار رمزگذاری URL برای اطمینان از اینکه اعتبار کاربر دستگاه به خطر نمی افتد.

  2. با فراخوانی نقطه پایانی نشانه 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 را چاپ می‌کند.

  3. رمز دسترسی را به عنوان هدر حامل به یک تماس API مدیریت Edge ارسال کنید:
    curl -H "Authorization: Bearer ACCESS_TOKEN" \
      https://api.enterprise.apigee.com/v1/organizations/orgName
  4. هنگامی که نشانه دسترسی منقضی می شود، می توانید آن را با ارسال نشانه رفرش به نقطه پایانی نشانه 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 Google LLC
ابزارهای usermgmt ، acurl و get_token تحت قراردادی که بر استفاده شما از پلتفرم Google Cloud حاکم است، به‌عنوان «نرم‌افزار» در دسترس هستند، از جمله شرایط خاص سرویس که در https://cloud.google.com/terms/service-terms موجود است.