Bạn đang xem tài liệu về Apigee Edge.
Truy cập vào
tài liệu Apigee X. thông tin
Bạn có thể sử dụng dịch vụ Edge OAuth2 để đổi thông tin đăng nhập của mình lấy mã truy cập và mã làm mới. Sau đó, bạn sẽ dùng mã này để gọi các điểm cuối Edge trong quy trình OAuth.
Ngoài các kỹ thuật được mô tả trong phần này, bạn cũng có thể sử dụng các tiện ích acurl và get_token để nhận mã thông báo OAuth2.
Đường dẫn
POST https://login.apigee.com/oauth/token
Nếu đang truy cập vào dịch vụ Edge OAuth2 từ một tổ chức có SAML trong Edge cho Đám mây công cộng, bạn phải thêm tên vùng vào đường dẫn của mình. Ví dụ:
POST https://zone.login.apigee.com/oauth/token
Tiêu đề của yêu cầu
| Tham số | Giá trị |
|---|---|
Content-Type |
"application/x-www-form-urlencoded" |
Accept |
"application/json;charset=utf-8" |
Authorization |
"Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" Bạn có thể xuất giá trị này sang một biến môi trường để có thể dùng lại trong các lệnh gọi API này. Ví dụ: export CLIENT_AUTH=ZWRnZWNsaTplZGdlY2xpc2VjcmV0 curl ... -H "Authorization: Basic $CLIENT_AUTH" ... |
Tham số biểu mẫu
| Tham số | Bắt buộc? | Giá trị |
|---|---|---|
username |
Không bắt buộc. Bạn phải nhập tên người dùng và mật khẩu hoặc mật mã. | Tên người dùng Apigee của bạn, thường là địa chỉ email liên kết với tài khoản Apigee của bạn. |
password |
Không bắt buộc. Bạn phải nhập tên người dùng và mật khẩu hoặc mật mã. | Mật khẩu cho tài khoản Apigee của bạn. |
mfa_token |
Không bắt buộc | Mã xác thực đa yếu tố (MFA) hợp lệ cho tài khoản của bạn. Bạn chỉ phải cung cấp nếu đã bật MFA. |
passcode |
Không bắt buộc. Bạn phải nhập tên người dùng và mật khẩu hoặc mật mã. | Mật mã một lần mà bạn có thể sử dụng thay cho mật khẩu. Bạn phải có mật mã khi xác thực bằng một IdP SAML và có thể dùng mật mã để xác thực bằng một IdP LDAP. |
grant_type |
Bắt buộc | Xác định xem bạn có nhận được mã truy cập mới hay làm mới mã thông báo hiện có. Các giá trị hợp lệ là:
|
refresh_token |
Không bắt buộc | Mã thông báo bạn truyền để lấy mã truy cập mới khi mã truy cập hiện tại đã hết hạn. Bạn phải sử dụng tham số này khi grant_type là "refresh_token". |
Ví dụ
Lấy mã truy cập mới
Để nhận mã truy cập mới, hãy đặt
grant_typethành "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'
Lấy mã truy cập mới bằng MFA
Để nhận mã truy cập mới khi bật MFA (xác thực đa yếu tố), hãy lấy mã MFA rồi đặt tham số
mfa_tokenthành giá trị của mã đó: 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'
Làm mới mã truy cập
Để làm mới mã truy cập, hãy đặt
grant_typethành "refresh_token" và thêm mã làm mới hiện có làm tham số biểu mẫu: 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'Xin lưu ý rằng bạn không cần truyền thông tin đăng nhập khi làm mới mã truy cập.
Phản hồi
Khi thành công, bạn sẽ nhận được mã truy cập, mã làm mới và thông tin liên quan. Ví dụ:
{ "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" }
Lưu các giá trị phản hồi:
- Sử dụng
access_tokentrong các lệnh gọi đến Edge API - Sử dụng
refresh_tokenkhi mã truy cập của bạn hết hạn và bạn cần làm mới mã này
Nếu bạn nhận được phản hồi như sau:
{
"error": "unauthorized",
"error_description": "Bad credentials"
}Đảm bảo rằng bạn đã dùng chính xác chuỗi được cung cấp ở trên ("ZWRnZWNsaTplZGdlY2xpc2VjcmV0") cho tiêu đề Authorization trong yêu cầu của bạn.