Sử dụng tính năng Xác thực cơ bản để truy cập vào API Edge

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 Xác thực cơ bản để truy cập vào Edge API cho tài khoản Edge for the Cloud của mình. Với Xác thực cơ bản, bạn sẽ truyền thông tin đăng nhập (địa chỉ email và mật khẩu của tài khoản Apigee) trong mỗi yêu cầu đến Edge API.

Xác thực cơ bản là cơ chế xác thực ít an toàn nhất trong số các cơ chế xác thực được hỗ trợ. Thông tin đăng nhập của bạn không được mã hoá hoặc băm; thông tin này chỉ được mã hoá Base64. Thay vì Xác thực cơ bản, Apigee khuyên bạn nên sử dụng OAuth2 hoặc SAML để truy cập vào Edge API.

Định dạng xác thực cơ bản

Bạn có thể truyền thông tin đăng nhập dưới dạng tiêu đề được mã hoá Base64 hoặc dưới dạng tham số trong một máy khách HTTP.

Khi truyền thông tin đăng nhập vào tiêu đề, bạn phải mã hoá thông tin đó bằng Base64. Sau đây là ví dụ về tiêu đề Xác thực cơ bản HTTP được mã hoá:

Authorization: Basic YWhhbWlsdG9uQGFwaWdlZS5jb206bXlwYXNzdzByZAo

Với một ứng dụng như curl, bạn sẽ truyền thông tin đăng nhập bằng lựa chọn -u, như trong ví dụ sau:

curl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u email_address:password

curl mã hoá địa chỉ email và mật khẩu của bạn rồi thêm chúng vào tiêu đề Authorization của yêu cầu cho bạn.

Nếu bỏ qua mật khẩu, bạn sẽ được nhắc nhập mật khẩu.

Xin lưu ý rằng bạn phải sử dụng địa chỉ email của tài khoản Apigee chứ không phải tên người dùng trong các lệnh gọi API Edge.

Truy cập vào Edge API bằng curl

Bạn cũng có thể đặt yêu cầu tiêu đề Authorization theo cách thủ công khi sử dụng curl để truy cập vào Edge API.

Mặc dù curl sẽ mã hoá thông tin đăng nhập của bạn, như đã lưu ý ở trên, có thể có trường hợp bạn không muốn nhập thông tin đăng nhập chưa mã hoá vào nhật ký lệnh.

Cách đặt tiêu đề theo cách thủ công và truy cập vào Edge API bằng curl:

  1. Mã hoá địa chỉ email và mật khẩu của bạn bằng Base64 bằng một công cụ như base64. Ví dụ:
      read -es PASS
      echo -n ahamilton@apigee.com:$PASS | base64

    Công cụ base64 trả về một chuỗi được mã hoá:

    YWhhbWlsdG9uQGFwaWdlZS5jb206bXlwYXNzdzByZAo=
  2. Thêm chuỗi đã mã hoá vào tiêu đề Authorization trong yêu cầu Edge API, như ví dụ sau đây:
        read -es PASS
        BASIC=$(echo -n ahamilton@apigee.com:$PASS | base64
        curl -H "Authorization: Basic $BASIC" \
        https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval
        {
        "createdAt" : 1491854501264,
        "createdBy" : "noreply_iops@apigee.com",
        "displayName" : "ahamilton",
        "environments" : [ "prod", "test" ],
        "lastModifiedAt" : 1491854501264,
        "lastModifiedBy" : "noreply_iops@apigee.com",
        "name" : "ahamilton",
        "properties" : {
        "property" : [ {
        "name" : "features.isSmbOrganization",
        "value" : "false"
        }, {
        "name" : "features.isCpsEnabled",
        "value" : "true"
        } ]
        },
        "type" : "trial"
        }

Yêu cầu này sẽ lấy thông tin chi tiết về tổ chức "ahamilton-eval". Để xem danh sách đầy đủ các điểm cuối của Edge API, hãy xem Tài liệu tham khảo về Apigee Edge API.

Bạn phải thêm tiêu đề Authorization vào mọi yêu cầu.

Tắt phương thức xác thực cơ bản

Bạn có thể tắt phương thức Xác thực cơ bản (miễn là OAuth2 hoặc SAML được bật) bằng cách gửi yêu cầu đến Nhóm hỗ trợ Apigee Edge.

Nguyên tắc viết kịch bản

Trong một số trường hợp, việc thu thập mật khẩu khi tập lệnh chạy là không thực tế. Ví dụ: bạn có thể cần chạy một dịch vụ chạy ngầm theo thời gian định trước kích hoạt khi không có quản trị viên nào. Trong những trường hợp này, bạn cần cung cấp mật khẩu cho tập lệnh mà không cần có sự can thiệp của con người.

Thực hiện theo các hướng dẫn sau:

  1. Tập trung thông tin đăng nhập vào một tệp duy nhất được dùng làm nguồn cho các chương trình và tập lệnh mà bạn viết
  2. Bảo vệ tệp nguồn thông tin đăng nhập ở mức tối đa có thể bằng cách sử dụng tính năng bảo mật và quyền của hệ thống tệp
  3. Tạo một ứng dụng tự động hoá có các quyền bị hạn chế nghiêm ngặt đối với các tài nguyên cụ thể trong tổ chức của bạn.