Menggunakan Autentikasi Dasar untuk mengakses Edge API

Anda sedang melihat dokumentasi Apigee Edge.
Buka dokumentasi Apigee X.
info

Anda dapat menggunakan Basic Authentication guna mengakses Edge API untuk Edge untuk akun Cloud. Dengan Autentikasi Dasar, Anda meneruskan kredensial (alamat email dan sandi akun Apigee Anda) dalam setiap permintaan ke Edge API.

Autentikasi Dasar adalah mekanisme autentikasi yang paling tidak aman dari mekanisme autentikasi yang didukung. Kredensial Anda tidak dienkripsi atau di-hash. Kredensial hanya dienkode menggunakan Base64. Sebagai ganti Basic Authentication, Apigee menyarankan Anda menggunakan OAuth2 atau SAML untuk mengakses Edge API.

Format Autentikasi Dasar

Anda dapat meneruskan kredensial sebagai header berenkode Base64 atau sebagai parameter di klien HTTP.

Saat meneruskan kredensial di header, Anda harus mengenkodenya menggunakan Base64. Berikut adalah contoh header Autentikasi Dasar HTTP yang dienkode:

Authorization: Basic YWhhbWlsdG9uQGFwaWdlZS5jb206bXlwYXNzdzByZAo

Dengan klien seperti curl, Anda meneruskan kredensial dengan opsi -u, seperti yang ditunjukkan contoh berikut:

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

curl mengenkode alamat email dan sandi Anda, lalu menambahkannya ke header Authorization permintaan untuk Anda.

Jika tidak memasukkan sandi, Anda akan diminta untuk memasukkannya.

Perhatikan bahwa Anda harus menggunakan alamat email akun Apigee, bukan nama pengguna Anda dalam panggilan Edge API.

Mengakses Edge API dengan curl

Anda juga dapat menyetel permintaan header Authorization secara manual saat menggunakan curl untuk mengakses Edge API.

Meskipun curl akan mengenkode kredensial Anda, seperti yang disebutkan di atas, mungkin ada kasus saat Anda tidak ingin memasukkan kredensial yang tidak dienkode di histori perintah Anda.

Untuk menyetel header dan mengakses Edge API secara manual dengan curl:

  1. Base64 mengenkode alamat email dan sandi Anda dengan alat seperti base64. Contoh:
      read -es PASS
      echo -n ahamilton@apigee.com:$PASS | base64

    Alat base64 menampilkan string yang dienkode:

    YWhhbWlsdG9uQGFwaWdlZS5jb206bXlwYXNzdzByZAo=
  2. Tambahkan string yang dienkode ke header Authorization dalam permintaan Edge API, seperti yang ditunjukkan pada contoh berikut:
        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"
        }

Permintaan ini mendapatkan detail tentang organisasi "ahamilton-eval". Untuk mengetahui daftar lengkap endpoint Edge API, lihat Referensi API Apigee Edge.

Anda harus menyertakan header Authorization dalam setiap permintaan.

Nonaktifkan Autentikasi Dasar

Anda dapat menonaktifkan Autentikasi Dasar (selama OAuth2 atau SAML diaktifkan) dengan mengirim permintaan ke Dukungan Apigee Edge.

Panduan pembuatan skrip

Dalam beberapa situasi, mengumpulkan sandi saat skrip berjalan tidaklah praktis. Misalnya, Anda mungkin perlu menjalankan cron job yang diaktifkan ketika tidak ada administrator. Dalam situasi ini, Anda perlu membuat sandi tersedia untuk skrip tanpa campur tangan manusia.

Ikuti pedoman berikut:

  1. Memusatkan kredensial dalam satu file yang digunakan sebagai sumber untuk program dan skrip yang Anda tulis
  2. Lindungi file sumber kredensial sebanyak mungkin menggunakan keamanan dan izin sistem file
  3. Buat klien otomatisasi dengan izin yang sangat dibatasi pada resource tertentu di organisasi Anda.