
Pikirkan pencerahan sebagai konsultan kinerja dan keamanan Anda. Enlightn akan "meninjau" konfigurasi kode dan server Anda, dan memberi Anda rekomendasi yang dapat ditindaklanjuti untuk meningkatkan kinerja, keamanan, dan keandalan!
Versi Enlightn OSS (Open Source Software) memiliki 66 pemeriksaan otomatis yang memindai kode aplikasi Anda, konfigurasi dan rute server web untuk mengidentifikasi hambatan kinerja, kemungkinan kerentanan keamanan dan masalah keandalan kode.
Enlightn Pro (komersial) tersedia untuk dibeli di situs web Verlightn dan memiliki 64 cek otomatis tambahan (total 131 cek ).
Masing -masing dari 131 cek yang tersedia didokumentasikan dengan baik. Anda dapat menemukan dokumentasi lengkap di sini.
| Pencerahan | Laravel | Larastan | Phpstan |
|---|---|---|---|
| 1.x | 6.x-9.x | 0.6x-1.x | 0.12x-1.1x |
| 2.x | 9.x-11.x | 2.x | 1.4x+ |
Catatan: Matriks kompatibilitas yang sama berlaku untuk versi Pro Enlightn.
Anda dapat menginstal Enlightn ke proyek Anda menggunakan Composer Package Manager:
composer require enlightn/enlightnSetelah menginstal Enlightn, Anda dapat menerbitkan asetnya menggunakan Vendor: Publish Command Artisan:
php artisan vendor:publish --tag=enlightnCatatan: Jika Anda perlu menginstal Verlightn Pro, kunjungi dokumentasi di situs web Verlightn di sini.
Setelah menginstal Enlightn, cukup jalankan perintah enlightn Artisan untuk menjalankan Enlightn:
php artisan enlightn Anda dapat menambahkan bendera --report , jika Anda ingin melihat laporan Anda di UI Web Enlightn selain terminal:
php artisan enlightn --reportJika Anda ingin menjalankan kelas penganalisa tertentu, Anda dapat menentukannya sebagai argumen opsional:
php artisan enlightn Enlightn \ Enlightn \ Analyzers \ Security \ CSRFAnalyzer Enlightn \ EnlightnPro \ Analyzers \ Security \ DirectoryTraversalAnalyzerPerhatikan bahwa nama kelas harus sepenuhnya memenuhi syarat dan melarikan diri dengan tebasan ganda seperti di atas.
Jika Anda ingin mendapatkan pengalaman pencerahan penuh, disarankan agar Anda setidaknya menjalankan pencerahan sekali dalam produksi. Ini karena beberapa cek pencerahan adalah lingkungan yang spesifik. Jadi mereka hanya dapat dipicu saat lingkungan aplikasi Anda adalah produksi.
Jika Anda tidak ingin menjalankan produksi, Anda dapat mensimulasikan lingkungan produksi dengan mengatur App_env Anda untuk produksi, mengatur layanan dan konfigurasi sedekat mungkin dengan produksi dan menjalankan skrip penyebaran produksi Anda secara lokal. Kemudian jalankan perintah pengrajin Venlightn.
Secara default, perintah enlightn Artisan menyoroti jalur file, nomor baris terkait dan pesan untuk setiap cek yang gagal. Jika Anda ingin menampilkan pesan kesalahan terperinci untuk setiap baris, Anda dapat menggunakan opsi --details :
php artisan enlightn --details Jika Anda ingin mengintegrasikan pencerahan dengan CI Anda, Anda dapat memicu opsi --ci saat menjalankan pencerahan di alat CI/CD Anda:
php artisan enlightn --ci Anda dapat menambahkan bendera --report jika Anda ingin melihat laporan CI Anda di UI Web Enlightn. Ingatlah untuk menambahkan kredensial proyek Anda ke file config/enlightn.php Anda seperti yang dijelaskan di sini.
php artisan enlightn --ci --reportPencerahan pra-konfigurasi mana analisis dapat dijalankan dalam mode CI untuk Anda. Jadi, perintah di atas tidak termasuk analisis yang membutuhkan pengaturan lengkap untuk dijalankan (misalnya analisis menggunakan analisis dinamis).
Untuk informasi lebih lanjut tentang integrasi CI, rujuk dokumentasi Enlightn.
Terkadang, terutama di lingkungan CI, Anda mungkin ingin menyatakan daftar kesalahan yang dilaporkan saat ini sebagai "garis dasar". Ini berarti bahwa kesalahan saat ini tidak akan dilaporkan dalam proses berikutnya dan hanya kesalahan baru yang akan ditandai.
Untuk menghasilkan baseline secara otomatis, Anda dapat menjalankan perintah enlightn:baseline Artisan:
php artisan enlightn:baseline Jika Anda ingin menjalankan perintah ini dalam mode CI, Anda dapat menggunakan opsi --ci :
php artisan enlightn:baseline --ciUntuk informasi lebih lanjut tentang membangun garis dasar, rujuk dokumen.
Enlightn menawarkan dasbor web UI yang indah di mana Anda dapat melihat laporan pencerahan Anda yang dipicu dari CI atau perintah yang dijadwalkan.
UI web gratis untuk semua pengguna dan termasuk yang berikut:
Untuk mendapatkan akses ke UI Web, yang perlu Anda lakukan adalah mendaftar secara gratis di situs web Enlightn dan ikuti instruksi yang disebutkan di sini.
Selain mengintegrasikan pencerahan dengan alat CI/CD Anda, ini adalah praktik yang baik untuk menjadwalkan pencerahan yang dijalankan pada frekuensi reguler (seperti harian atau mingguan) seperti itu:
// In your app/Console/Kernel.php file:
/**
* Define the application's command schedule.
*
* @param IlluminateConsoleSchedulingSchedule $schedule
* @return void
*/
protected function schedule ( Schedule $ schedule )
{
$ schedule -> command ( ' enlightn --report ' )-> runInBackground ()-> daily ()-> at ( ' 01:00 ' );
}Ini akan memungkinkan Anda untuk memantau pemeriksaan analisis dinamis Enlightn, yang biasanya dikecualikan dari CI. Laporan dapat dilihat di UI Web Enlightn.
Enlightn menawarkan bot github yang dapat menyiapkan laporan yang menyoroti cek gagal dan juga menambahkan komentar ulasan untuk permintaan tarik pada baris kode yang memperkenalkan masalah baru.
Untuk berintegrasi dengan bot Github Enlightn, rujuk dokumen.
Semua cek yang gagal akan mencakup deskripsi mengapa mereka gagal bersama dengan baris kode terkait (jika berlaku) dan tautan ke dokumentasi untuk pemeriksaan spesifik.
Akhirnya, setelah semua cek telah berjalan, Komando Artisan enlightn akan mengeluarkan kartu laporan, yang berisi informasi tentang berapa banyak dan berapa persen cek yang disahkan, gagal atau dilewati.
Cek yang ditunjukkan sebagai "tidak berlaku" tidak berlaku untuk aplikasi spesifik Anda dan dilewati. Misalnya, CSRF Analyzer tidak berlaku untuk aplikasi tanpa kewarganegaraan.
Cek yang dilaporkan di bawah baris "Kesalahan" menunjukkan analisis yang gagal dengan pengecualian selama analisis. Biasanya, ini seharusnya tidak terjadi tetapi jika itu terjadi, pesan kesalahan terkait akan ditampilkan dan mungkin ada hubungannya dengan aplikasi Anda.
Latihan yang baik adalah menjalankan Enlightn setiap kali Anda menggunakan kode atau mendorong rilis baru. Disarankan untuk mengintegrasikan Pencerahan dengan alat CI/CD Anda sehingga dipicu untuk setiap dorongan atau rilis baru.
Selain pemeriksaan CI otomatis, Anda juga harus menjalankan pencerahan pada frekuensi reguler menggunakan perintah konsol yang dijadwalkan seperti dijelaskan di atas. Ini akan memungkinkan Anda untuk memantau pemeriksaan analisis dinamis, yang biasanya dikecualikan dari CI.
Hanya sistem MacOS dan Linux yang didukung untuk pencerahan. Windows saat ini tidak didukung.
Terima kasih telah mempertimbangkan berkontribusi untuk Pencerahan! Panduan kontribusi dapat ditemukan di sini.
Kebijakan dukungan kami dapat ditemukan dalam dokumentasi Pencerahan.
Pencampuran OSS (pada repo github ini) dilisensikan di bawah lisensi LGPL V3 (atau lebih baru).
Enlightn Pro dilisensikan di bawah lisensi komersial.