شما در حال مشاهده اسناد Apigee Edge هستید.
به مستندات Apigee X بروید . اطلاعات
میتوانید از سرویس Edge OAuth2 برای تبادل اعتبارنامههای خود برای یک نشانه دسترسی و تازهسازی استفاده کنید که سپس از آن برای فراخوانی نقاط انتهایی Edge در گردشهای کاری OAuth خود استفاده میکنید.
علاوه بر تکنیک های توضیح داده شده در این بخش، می توانید از ابزارهای کاربردی acurl و get_token
نیز برای دریافت توکن های OAuth2 استفاده کنید.
مسیر
POST https://login.apigee.com/oauth/token
اگر از یک سازمان دارای SAML در Edge for Public Cloud به سرویس Edge OAuth2 دسترسی دارید، باید نام منطقه را در مسیر خود قرار دهید. به عنوان مثال:
POST https://zone.login.apigee.com/oauth/token
درخواست سرصفحه ها
پارامتر | ارزش |
---|---|
Content-Type | "application/x-www-form-urlencoded" |
Accept | "application/json;charset=utf-8" |
Authorization | "ZWRnZWNsaTplZGdlY2xpc2VjcmV0 پایه" می توانید این مقدار را به یک متغیر محیطی صادر کنید تا بتوانید در این فراخوانی های API مجدداً از آن استفاده کنید. به عنوان مثال: export CLIENT_AUTH=ZWRnZWNsaTplZGdlY2xpc2VjcmV0 curl ... -H "Authorization: Basic $CLIENT_AUTH" ... |
پارامترهای فرم
پارامتر | مورد نیاز؟ | ارزش |
---|---|---|
username | اختیاری. ترکیب نام کاربری و رمز عبور یا رمز عبور مورد نیاز است. | نام کاربری Apigee شما، که معمولاً آدرس ایمیل مرتبط با حساب Apigee شما است. |
password | اختیاری. ترکیب نام کاربری و رمز عبور یا رمز عبور مورد نیاز است. | رمز عبور حساب Apigee شما. |
mfa_token | اختیاری | یک کد تأیید اعتبار چند عاملی (MFA) معتبر برای حساب شما. فقط در صورتی لازم است که MFA را فعال کرده باشید. |
passcode | اختیاری. ترکیب نام کاربری و رمز عبور یا رمز عبور مورد نیاز است. | یک رمز عبور یک بار مصرف که می توانید به جای رمز عبور استفاده کنید. هنگام احراز هویت با SAML IDP، یک رمز عبور لازم است، و ممکن است برای احراز هویت با یک IDP LDAP استفاده شود. |
grant_type | مورد نیاز | تعیین می کند که آیا یک نشانه دسترسی جدید دریافت می کنید یا رمز موجود را تازه می کنید. مقادیر معتبر عبارتند از:
|
refresh_token | اختیاری | رمزی که پاس می کنید تا زمانی که رمز دسترسی فعلی منقضی شود، یک نشانه دسترسی جدید دریافت کنید. زمانی که grant_type "refresh_token" باشد، این پارامتر مورد نیاز است. |
نمونه ها
یک نشانه دسترسی جدید دریافت کنید
برای دریافت رمز دسترسی جدید،
grant_type
را روی "password" تنظیم کنید: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://login.apigee.com/oauth/token \ -d 'username=ahamilton@example.com&password=mypassw0rd&grant_type=password'
یک نشانه دسترسی جدید با MFA دریافت کنید
برای دریافت یک نشانه دسترسی جدید با فعال بودن MFA (تأیید هویت چند عاملی)، کد MFA را دریافت کنید و سپس پارامتر
mfa_token
را روی مقدار آن تنظیم کنید: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://login.apigee.com/oauth/token?mfa_token=424242 \ -d 'username=ahamilton@example.com&password=mypassw0rd&grant_type=password'
یک نشانه دسترسی را بازخوانی کنید
برای بازخوانی یک نشانه دسترسی،
grant_type
روی "refresh_token" تنظیم کنید و نشانه رفرش موجود خود را به عنوان پارامتر فرم اضافه کنید: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://login.apigee.com/oauth/token \ -d 'grant_type=refresh_token&refresh_token=YOUR_REFRESH_TOKEN'توجه داشته باشید که هنگام بازخوانی رمز دسترسی، نیازی به ارسال اعتبارنامه خود ندارید.
پاسخ ها
در صورت موفقیت، یک نشانه دسترسی، نشانه تازهسازی و اطلاعات مرتبط را دریافت خواهید کرد. به عنوان مثال:
{ "access_token": "eyJhbGciOiJSUzI1NiJ9.eyJqdGkiOimYyD8IP2IyYS1jNmNiLTQ4NTgtYjZkMS1mZjkyNGFkYTk1YWUiLCJzdWIiOiI0X0KLSNjZlNjM0ZC0zZjlhLTRiNYmFjNi1kYjE2M2M5OGEzOGYiLCJzY29wZSI6WyJzYbmlkIiwicGFzc3dvcmQud3JpdGUiLCJhcHByb3ZhbHMubWUiLCJvYXV0aC5hcHByb3ZhbHMiXSwiY2xpZW50X2lkIjoiZWRnZWNsaSIsImNpZCI6ImVkZ2VjbGkiLCJhenAiOiJlZGdlY2xpIiwiZ3JhbnRfdHlwZSI6InBhc3N3b3JkIiwidXNlcl9pZCI6IjQ2NmU2MzRkLTNmOWEtNGI0MS1iYWM2LWRiMTYzYzk4YTM4ZiIsIm9yaWdpbiI6InVzZXJncmlkIiwidXNlcl9uYW1lIjoid3dpdG1hbkBhcGlnZWUuY29tIiwiZW1haWwiOiJ3d2l0bWFuQGFwaWdlZS5jb20iLCJhdXRoX3RpbWUiOjE0NzMyNjU4NzcsImFsIjoyLCJyZXZfc2lnIjoiZTc0ZGY0M2QiLCJpYXQiOjE0NzMyNjU4NzcsImV4cCI6MTQ3MzI2NzY3NywiaXNzIjoiaHR0cHM6Ly9sb2dpbi5hcGlnZWUuY29tL29hdXRoL3Rva2VuIiwiemlkIjoidWFhIiwi2ltLm1lIiwib3BlYXVkIjpbImVkZ2VjbGkiLCJzY2ltIiwib3BlbmlkIiwicGFzc3dvcmQiLCJhcHByb3ZhbHMiLCJvYXV0aCJdfQ.AFuevkeGGUGSPED8leyEKaT-xg1xk_VEiKJLEpipVvQBXIqEc9wqcpm-ZuoatA9DhjASRuFSRaHH8Fasx_vBxEBsUNhRY-GTMw7_8fv4yRMOb2AO3WUl_NWwPkC8XRSI1zCMbAZicojsJ1n3OSP487Mu9dl9ByX5A_QfHV2_cj4l9-SD7u6vOdfdbBxbNMAQkfZLrVIEU8myF2dhKnNeMiuoHSHANsQFcx0_BFA1HnSUnVi4RYj1FlTs9SbcPnS1d7t7eVdxWz_q2OFVXNIBMELAvvM0WhXPYTW3Osve3UvvUs6ekGs-K-RCPSok-4-NJbdCDpZQQTgqHsrf77NTsw", "token_type": "bearer", "refresh_token": "eyJhbGciOiJSUzI1NiJ9.eyJqdGkiOiJmZTIIMZWI0ZS00YzFmLTRjOTEtYmY5Mi1mMzZLEMzNjZhMDctciIsInN1YiI6IjQ2NmU2MzRkLTNmOWEtNGI0MS1iY17LLWRiMTYzYzk4YTM4ZiIsInNjb3BlIjpbInNjaW0ubWUiLCJvcGVuaWQiLCJwYXNzd29yZC53cml0ZSIsImFwcHJvdmFscy5tZSIsIm9hdXRoLmFwcHJvdmFscyJdLCJpYXQiOjE0NzMyNjU4NzcsImV4cCI6MTQ3NsaSIsImNsaWVudF9pZCI6ImVkZ2VjbGkiLCJpc3MiOiJodHRwczovL2xvZ2luLmFwaWdlZS5jb20vb2F1dGgvdG9rZW4iLCJ6aWQiOiJ1YWEiLCJncmFudF90eXBlIjoicGFzc3dvcmQiLCJ1c2VyX25hbWUiOiJ3d2l0bWFuQGFwaWdlZS5jbMzM1MDQ3NywiY2lkIjoiZWRnZW20iLCJvcmlnaW4iOiJ1c2VyZ3JpZCIsInVzZXJfaWQiOiI0NjZlNjM0ZC0zZjlhLTRiNDEtYmFjNi1kYjE2M2M5OGEzOGYiLCJhbCI6MiwicmV2X3NpZyI6ImU3NGRmNDNkIiwiYXVkIjpbImVkZ2VjbGkiLCJzY2ltIiwib3BlbmlkIiwicGFzc3dvcmQiLCJhcHByb3ZhbHMiLCJvYXV0aCJdfQ.kBP5AkbRS7Tnp-5VAfTLVfkUbUer4gFEU6A7g202KTKiXbqTwPSmOIGFTK12XevVPQYmAaSMFAnempWKfY7sjaY7HC7q3mGl53_A18cnkKhtNq15wCnyMom_bX_MYLW1RQPFytJ6akSJ-JkoPFU0x_FQg1JIvub1A8eqQxcR0KP-QRCxYAS4HTjH80vDIxHNt1tg7clmpa3RlHri0dlPVVsSpTXXhkpXRg5QbiWMrpkACSV22c0x0KiNu7vx5A520VOCO7hQ7IzmVIcSWcRqI97L7WdCjH_q4105bs2qmW73670MC0UGiJ9t5B1S1cxwqpUEd-NAuCsY8SVn6eWzbA", "expires_in": 1799, "scope": "scim.me openid password.write approvals.me oauth.approvals", "jti": "9bf2cb2a-c6cb-4858-b6d1-ff924ada95ae" }
مقادیر پاسخ را ذخیره کنید:
- از
access_token
در تماس با API Edge استفاده کنید - زمانی که نشانه دسترسی شما منقضی شد و باید آن را بهروزرسانی کنید، از
refresh_token
استفاده کنید
اگر پاسخی مانند زیر دریافت کردید:
{ "error": "unauthorized", "error_description": "Bad credentials" }
مطمئن شوید که دقیقاً از رشته داده شده در بالا ("ZWRnZWNsaTplZGdlY2xpc2VjcmV0") برای سرصفحه Authorization
در درخواست خود استفاده کرده اید.