Situasi awal
Untuk situs yang saya setting, saya sedang mencari ke seluruh bidang pengamanan unggahan / unduhan dan membatasi akses ke sana berdasarkan peran / kemampuan pengguna. Tentu saja saya telah membaca beberapa pertanyaan sebelumnya terkait dengan topik (umum) di sini, untuk alasan referensi yang paling penting / menarik yang saya temukan:
- Bagaimana cara Melindungi Upload, jika Pengguna tidak Masuk?
- Bagaimana cara membatasi akses ke file yang diunggah?
- Membatasi akses ke file dalam folder tertentu
- Bagaimana cara membuat unggahan media menjadi pribadi?
- Menggabungkan skrip unduhan PHP ke dalam `functions.php`
Catatan tambahan
Secara umum itu bukan ide yang buruk untuk meningkatkan keamanan instalasi wordpress Anda - misalnya melindungi Anda wp-config.php
- ada banyak hal yang dapat dan harus Anda lakukan. Ada banyak informasi di luar sana bagaimana melakukannya. Saya dalam konteks pertanyaan ini kebanyakan berkaitan dengan unggahan / unduhan saya.
Upload Wordpress tidak diamankan, semua orang dapat menelusuri uploads
folder, kecuali Anda mencegahnya dengan .htaccess
:
Options All -Indexes
The .htaccess
file harus ditempatkan di dalam uploads
folder. Tapi itu tidak benar-benar mengamankan mereka, itu hanya membuat lebih sulit untuk menemukan file. Selain itu Anda dapat mencegah hotlinking
, membatasi akses berdasarkan referrer
- meskipun itu sedikit berbeda saya pikir saya sebutkan itu, saya tidak menjelaskan lebih lanjut, Anda dapat menemukan banyak informasi tentang itu.
Tentu saja memiliki kemungkinan untuk membuat posting pribadi atau membuat jenis posting khusus dengan file templat yang sesuai untuk membuat jenis posting pribadi, tetapi itu tidak mengamankan file Anda. Hal yang sama dapat dikatakan untuk membungkus file dalam kondisi seperti is_user_logged_in()
atau is_admin()
.
Pada sidenote ada banyak plugin di luar sana yang menjanjikan untuk membuat file Anda aman dan terlindungi, tetapi banyak dari mereka hanya berpura-pura melakukannya, beberapa alasan di atas. Saya hanya mengeluarkan itu karena saya cukup yakin bahwa itu tidak diketahui oleh semua orang - jadi, sadarilah itu.
Objektif
Tujuan saya adalah untuk dapat membatasi akses ke (beberapa) unggahan dan masing-masing unduhan. Dan untuk memastikan bahwa tidak ada yang tidak diinginkan dapat memiliki akses ke mereka, bukan secara kebetulan atau jika seseorang mengetahui nama file, file harus benar-benar pribadi dan aman. Bagaimanapun, hanya orang-orang tertentu yang harus memiliki akses tanpa kecuali.
Selain itu saya tidak perlu memprivatisasi seluruh situs, memang itu akan menjadi kontraproduktif - ini digunakan untuk keperluan presentasi publik. Lebih jauh lagi saya ingin solusi mudah digunakan, karena alasan sederhana bahwa beberapa orang yang bekerja dengannya bukan ahli komputer, seperti yang sering terjadi.
Pertanyaan
Karenanya pertanyaannya, adakah (relatif) cara sederhana untuk membatasi akses ke (beberapa) unggahan dan unduhan masing-masing? Dan seperti yang saya lakukan, itu berarti cara untuk benar-benar melindungi dan mengamankan mereka?