Menggunakan Autentikasi Dasar untuk mengakses Edge API

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

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

Otentikasi Dasar adalah mekanisme otentikasi yang paling tidak aman. Nama kredensial tidak dienkripsi atau di-hash; hanya berenkode Base64. Alih-alih menggunakan Basic Autentikasi, Apigee merekomendasikan agar Anda menggunakan OAuth2 atau SAML untuk mengakses Edge API.

Format Autentikasi Dasar

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

Saat meneruskan kredensial di header, Anda harus mengenkode Base64. Hal berikut adalah contoh header Autentikasi Dasar HTTP yang dienkode:

Authorization: Basic YWhhbWlsdG9uQGFwaWdlZS5jb206bXlwYXNzdzByZAo

Dengan klien seperti curl, Anda meneruskan kredensial Anda dengan -u , seperti yang ditampilkan 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 bagian Header Authorization untuk Anda.

Jika tidak menyertakan sandi, Anda akan diminta untuk memasukkannya.

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

Mengakses Edge API dengan curl

Anda juga dapat menetapkan 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 di mana Anda tidak ingin memasukkan kredensial yang tidak dikodekan ke dalam riwayat perintah Anda.

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

  1. Base64 mengenkode alamat email dan sandi Anda dengan alat seperti base64. Sebagai 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 di Edge API Anda , seperti yang ditampilkan dalam 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 "ahamilton-eval" organisasi/pengaturan. Untuk daftar lengkap Endpoint API Edge, lihat Referensi Apigee Edge API.

Anda harus menyertakan header Authorization di setiap permintaan.

Nonaktifkan Autentikasi Dasar

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

Panduan pembuatan skrip

Terkadang, tidak praktis untuk mengumpulkan sandi saat skrip berjalan. Sebagai misalnya, Anda mungkin perlu menjalankan cron job yang diaktifkan ketika tidak ada administrator. Di situasi ini, Anda perlu membuat {i>password<i} itu tersedia untuk skrip tanpa intervensi.

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 sejauh mungkin menggunakan keamanan sistem file dan izin
  3. Membuat klien otomatisasi dengan izin yang sangat terbatas pada resource tertentu di organisasi Anda?