Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Gunakan Pengurus Proksi Nginx untuk melaksanakan pengesahan dan kebenaran get laluan API

Gunakan Pengurus Proksi Nginx untuk melaksanakan pengesahan dan kebenaran get laluan API

PHPz
PHPzasal
2023-09-27 20:49:101543semak imbas

使用Nginx Proxy Manager实现API网关的认证与授权

Gunakan Pengurus Proksi Nginx untuk melaksanakan pengesahan dan kebenaran get laluan API

Sebagai bahagian penting dalam pembangunan aplikasi Internet moden, get laluan API perlu memastikan keselamatan antara muka semasa menyediakan panggilan antara muka. Antaranya, pengesahan dan keizinan adalah fungsi yang sangat diperlukan bagi get laluan API, yang digunakan untuk mengesahkan identiti peminta dan memberikan hak akses. Artikel ini akan memperkenalkan cara menggunakan Pengurus Proksi Nginx untuk melaksanakan pengesahan dan kebenaran get laluan API, dan menyediakan contoh kod khusus.

1. Apakah Pengurus Proksi Nginx

Pengurus Proksi Nginx ialah proksi terbalik dan alat pengurusan pengimbangan beban berdasarkan Nginx. Ia menyediakan antara muka pengurusan visual untuk memudahkan pengguna mengkonfigurasi dan mengurus peraturan proksi Nginx. Pengurus Proksi Nginx boleh memajukan permintaan dengan mengkonfigurasi peraturan dan menyokong penambahan middleware tersuai untuk melanjutkan fungsi Nginx.

2. Pengesahan dan Kebenaran

Dalam get laluan API, pengesahan dan kebenaran adalah langkah keselamatan utama. Pengesahan digunakan untuk mengesahkan identiti peminta, biasanya menggunakan kunci API, nama pengguna dan kata laluan, dsb. Keizinan adalah untuk menilai kebenaran peminta selepas lulus pengesahan dan memutuskan sama ada untuk membenarkan akses kepada antara muka.

3. Gunakan Pengurus Proksi Nginx untuk melaksanakan pengesahan dan kebenaran

  1. Pasang Pengurus Proksi Nginx

Pertama, kita perlu memasang Pengurus Proksi Nginx pada pelayan. Ia boleh dipasang melalui arahan berikut:

$ sudo apt-get install nginx
$ sudo apt-get install npm
$ sudo npm install -g npx
$ sudo npx create-npx npx
  1. Konfigurasikan pengesahan

Pada antara muka pengurusan Pengurus Proksi Nginx, cari item konfigurasi peraturan proksi yang sepadan dan tambah perisian tengah pengesahan dalam konfigurasi perisian tengah. Perisian tengah pengesahan boleh melakukan pengesahan berdasarkan maklumat identiti yang diberikan oleh peminta. Berikut ialah contoh kod yang menggunakan kunci API untuk pengesahan:

location /api {
    auth_basic "API Authentication";
    auth_basic_user_file /etc/nginx/.htpasswd;
    proxy_pass http://backend;
}

Dalam kod di atas, auth_basic用于设置认证提示信息,auth_basic_user_file digunakan untuk menentukan fail tempat kunci API disimpan. Mengikut keperluan sebenar, anda boleh menyesuaikan kaedah pengesahan dan menambah logik pengesahan yang sepadan. . Berikut ialah kod sampel kebenaran mudah:

location /api {
    auth_basic "API Authentication";
    auth_basic_user_file /etc/nginx/.htpasswd;
    proxy_pass http://backend;
    if ($http_token != "123456") {
        return 403;
    }
}
    Dalam kod di atas, ia ditentukan sama ada untuk mengembalikan ralat 403 (iaitu, tiada kebenaran) dengan menilai sama ada permintaan itu mengandungi token akses (token) yang betul. Mengikut keperluan sebenar, anda boleh menyesuaikan kaedah kebenaran dan menambah logik kebenaran yang sepadan.
  1. 4. Ringkasan

Artikel ini memperkenalkan kaedah menggunakan Pengurus Proksi Nginx untuk melaksanakan pengesahan dan kebenaran get laluan API, dan menyediakan contoh kod khusus. Dengan mengkonfigurasi perisian tengah pengesahan dan kebenaran, kami boleh mengesahkan dan mengawal permintaan API secara fleksibel berdasarkan keperluan perniagaan untuk memastikan keselamatan panggilan antara muka. Saya harap artikel ini akan membantu anda memahami dan mengamalkan pengesahan dan kebenaran get laluan API.

Atas ialah kandungan terperinci Gunakan Pengurus Proksi Nginx untuk melaksanakan pengesahan dan kebenaran get laluan API. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn