Penggunaan fungsi __return_true
untuk permission_callback
pada register_rest_route() di atas, artinya tidak ada batasan akses ke daftar subscriber (pelanggan). Siapa pun (termasuk pengguna yang tidak sah) dapat mengambil informasi pelanggan, yang dapat menimbulkan risiko keamanan yang signifikan.
Tanpa pemeriksaan izin atau validasi pengguna, data sensitif (seperti daftar pelanggan) dapat terekspos ke pengguna tak sah.
Selain itu, jika tidak ada validasi pengguna yang benar, sistem tidak memiliki kendali atas siapa yang meminta data, sehingga mustahil dapat melacak penyalahgunaan jika terjadi kebocoran data.
Patch (perbaikan) dengan menambahkan pengecekan hak akses pengguna
Seperti ini implementasinya:
current_user_can('wpsms_subscribers')
ditambahkan untuk memverifikasi apakah pengguna yang sedang mengakses punya role yang ditentukan, dalam kasus ini wpsms_subscribers
. Sehingga pengguna yang tidak sah dan pengunjung yang tidak diautentikasi akan ditolak aksesnya.
current_user_can() merupakan fungsi yang sudah disediakan di WordPress core API.
P.S.:
Snippet di atas didapat dari riset software plugin WordPress: WP SMS