
Considérez l'illustration comme votre consultante en performance et en sécurité. Illuming "examinera" vos configurations de code et de serveur et vous donnera des recommandations exploitables sur l'amélioration des performances, de la sécurité et de la fiabilité!
La version Alightn OSS (Open Source Software) propose 66 vérifications automatisées qui scannent votre code d'application, vos configurations de serveurs Web et vos itinéraires pour identifier les goulots d'étranglement des performances, les vulnérabilités de sécurité possibles et les problèmes de fiabilité du code.
L'IMGLING PRO (Commercial) est disponible à l'achat sur le site Web d'Inlight et dispose de 64 chèques automatisés supplémentaires (total de 131 chèques ).
Chacun des 131 chèques disponibles est bien documenté. Vous pouvez trouver la documentation complète ici.
| Éclairer | 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 + |
Remarque: La même matrice de compatibilité s'applique aux versions ILLIGHTN PRO.
Vous pouvez installer Illightn dans votre projet à l'aide du compositeur Package Manager:
composer require enlightn/enlightnAprès avoir installé ILLIMM, vous pouvez publier ses actifs à l'aide du vendeur: Publish Artisan Command:
php artisan vendor:publish --tag=enlightnRemarque: Si vous avez besoin d'installer IGLIGLN PRO, visitez la documentation sur le site Web d'illustre ici.
Après avoir installé Illumingn, exécutez simplement la commande artisan enlightn pour exécuter l'illumineuse:
php artisan enlightn Vous pouvez ajouter l'indicateur --report , si vous souhaitez afficher vos rapports dans l'interface utilisateur Web Alightn en plus du terminal:
php artisan enlightn --reportSi vous souhaitez exécuter des classes d'analyseurs spécifiques, vous pouvez les spécifier comme arguments facultatifs:
php artisan enlightn Enlightn \ Enlightn \ Analyzers \ Security \ CSRFAnalyzer Enlightn \ EnlightnPro \ Analyzers \ Security \ DirectoryTraversalAnalyzerNotez que les noms de classe doivent être entièrement qualifiés et échappés avec des doubles barres comme ci-dessus.
Si vous souhaitez obtenir l'expérience complète de l'illustration, il est recommandé que vous exécutiez au moins l'illustration une fois en production. En effet, plusieurs des chèques d'illumineux sont spécifiques à l'environnement. Ils ne peuvent donc être déclenchés que lorsque l'environnement de votre application est la production.
Dans le cas où vous ne souhaitez pas fonctionner sur la production, vous pouvez simuler un environnement de production en définissant votre APP_ENV sur la production, en configurant les services et en configurez le plus près possible de la production et en exécutant votre script de déploiement de production localement. Ensuite, exécutez la commande Artisan Alightn.
Par défaut, la commande artisan enlightn met en évidence les chemins de fichier, les numéros de ligne associés et un message pour chaque vérification échouée. Si vous souhaitez afficher des messages d'erreur détaillés pour chaque ligne, vous pouvez utiliser l'option --details :
php artisan enlightn --details Si vous souhaitez intégrer Illumingn à votre CI, vous pouvez simplement déclencher l'option --ci lors de l'exécution de l'illumineuse dans votre outil CI / CD:
php artisan enlightn --ci Vous pouvez ajouter l'indicateur --report si vous souhaitez afficher vos rapports CI dans l'interface utilisateur Web Alightn. N'oubliez pas d'ajouter vos informations d'identification de projet à votre fichier config/enlightn.php comme expliqué ici.
php artisan enlightn --ci --reportLes pré-configures d'illustration des analyseurs peuvent être exécutées en mode CI pour vous. Ainsi, la commande ci-dessus exclut les analyseurs qui ont besoin d'une configuration complète pour s'exécuter (par exemple, les analyseurs utilisant une analyse dynamique).
Pour plus d'informations sur l'intégration CI, reportez-vous à la documentation surgiln.
Parfois, en particulier dans les environnements CI, vous voudrez peut-être déclarer la liste des erreurs actuellement signalée comme la "ligne de base". Cela signifie que les erreurs actuelles ne seront pas signalées dans les exécutions suivantes et que seules de nouvelles erreurs seront signalées.
Pour générer automatiquement la ligne de base, vous pouvez exécuter la commande artisan enlightn:baseline :
php artisan enlightn:baseline Si vous souhaitez exécuter cette commande en mode CI, vous pouvez utiliser l'option --ci :
php artisan enlightn:baseline --ciPour plus d'informations sur l'établissement d'une base de référence, reportez-vous aux documents.
Illuming propose un beau tableau de bord Web de l'interface utilisateur où vous pouvez afficher vos rapports Ilightn déclenchés à partir de votre CI ou des exécutions de commande planifiées.
L'interface utilisateur Web est gratuite pour tous les utilisateurs et comprend les éléments suivants:
Pour accéder à l'interface utilisateur Web, tout ce que vous avez à faire est de vous inscrire gratuitement sur le site Web d'Inlighn et de suivre les instructions mentionnées ici.
En plus d'intégrer l'illumineuse à votre outil CI / CD, c'est une bonne pratique de planifier une exécution sur une fréquence régulière (comme quotidien ou hebdomadaire) comme:
// 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 ' );
}Cela vous permettra de surveiller les vérifications d'analyse dynamique d'Ilightn, qui sont généralement exclues de CI. Les rapports peuvent être consultés sur l'interface utilisateur Web Illumingn.
Illightn propose un bot GitHub qui peut préparer un rapport mettant en évidence les chèques ratés et ajouter également des commentaires d'examen pour les demandes de traction sur les lignes de code qui introduisent de nouveaux problèmes.
Pour vous intégrer au bot GitHub Illumingn, reportez-vous aux documents.
Toutes les vérifications qui échouent comprendront une description de la raison pour laquelle ils ont échoué avec les lignes de code associées (le cas échéant) et un lien vers la documentation pour le chèque spécifique.
Enfin, une fois que tous les chèques se sont exécutés, la commande Artisan enlightn publiera un rapport, qui contient des informations sur le nombre et le pourcentage de contrôles passés, échoué ou sauté.
Les chèques indiqués comme «non applicables» n'étaient pas applicables à votre application spécifique et ont été sautés. Par exemple, l'analyseur CSRF n'est pas applicable aux applications sans état.
Les contrôles rapportés sous la ligne "Erreur" indiquent les analyseurs qui ont échoué à des exceptions pendant l'analyse. Normalement, cela ne devrait pas se produire, mais si c'est le cas, le message d'erreur associé sera affiché et peut avoir quelque chose à voir avec votre application.
Une bonne pratique consisterait à exécuter l'illightn chaque fois que vous déployez du code ou poussez une nouvelle version. Il est recommandé d'intégrer l'illumineuse à votre outil CI / CD afin qu'il soit déclenché pour chaque push ou nouvelle version.
Outre les vérifications CI automatisées, vous devez également exécuter l'illustral sur une fréquence régulière à l'aide d'une commande de console planifiée comme décrit ci-dessus. Cela vous permettra de surveiller les contrôles d'analyse dynamique, qui sont généralement exclus de l'IC.
Seuls les systèmes macOS et Linux sont pris en charge pour l'illumineuse. Windows n'est actuellement pas pris en charge.
Merci d'avoir envisagé de contribuer à l'illustration! Le guide de contribution peut être trouvé ici.
Notre politique de support se trouve dans la documentation Alightn.
L'illustration OSS (sur ce repo GitHub) est concédé sous licence LGPL V3 (ou version ultérieure).
L'IMMINGN PRO est concédé sous licence commerciale.