


Comment utiliser le compositeur pour améliorer la sécurité des applications Laravel: Applications de la bibliothèque Wiebenieuwenhuis / Laravel-2FA
Apr 18, 2025 am 11:36 AMVous pouvez apprendre le compositeur via l'adresse suivante:
Au cours du processus de développement, j'ai constaté que la sécurité des comptes d'utilisateurs est un problème qui ne peut pas être ignoré. L'authentification par mot de passe unique ne peut plus répondre aux besoins de la sécurité du réseau moderne. Pour résoudre ce problème, j'ai décidé d'ajouter l'authentification à deux facteurs (2FA) à mon application Laravel. Après quelques recherches, j'ai choisi la bibliothèque Wiebenieuwenhuis / Laravel-2FA et je l'ai facilement intégrée à mon projet via Composer.
Tout d'abord, l'installation de la bibliothèque à l'aide du compositeur est très simple, il suffit d'exécuter la commande suivante:
<code>composer require wiebenieuwenhuis/laravel2fa</code>
Une fois l'installation terminée, exécutez les commandes suivantes pour publier le fichier de configuration et migrer le fichier:
<code>php artisan vendor:publish --provider="Wiebenieuwenhuis\Laravel2fa\Laravel2faServiceProvider" php artisan migrate</code>
Ensuite, vous devez ajouter du middleware dans app/Http/Kernel.php
à utiliser dans l'itinéraire:
<code class="php">protected $routeMiddleware = [ ... '2fa' => \Wiebenieuwenhuis\Laravel2fa\Middleware::class, ]</code>
Ensuite, ajoutez 2fa
middleware à l'itinéraire et assurez-vous de définir les variables correctes dans le fichier config/2fa.php
.
L'activation de 2FA est très simple, accédez simplement aux itinéraires suivants:
<code>/2fa/setup // route("2fa::setup")</code>
Si vous devez désactiver 2FA, vous pouvez l'appeler via l'itinéraire ou l'API suivant:
<code>/2fa/disable // route("2fa::disable") \Wiebenieuwenhuis\Laravel2fa\Laravel2fa::disable()</code>
Cette bibliothèque fournit également des fonctionnalités de vue personnalisées, vous permettant de modifier les fichiers de vue sous resources/views/vendor/2fa
en fonction de vos besoins.
En outre, Wiebenieuwenhuis / Laravel-2FA fournit des fonctions avancées telles que la génération de codes secrètes pour les utilisateurs, la génération de codes QR pour la configuration et la vérification des codes. Voici quelques méthodes courantes:
- Générer un code secret:
Wiebenieuwenhuis\Laravel2fa\Laravel2fa::generateSecret()
- Générer le code QR:
Wiebenieuwenhuis\Laravel2fa\Laravel2fa::generateQrCode()
- Code de vérification:
Wiebenieuwenhuis\Laravel2fa\Laravel2fa::validate($code)
- Activer 2fa:
Wiebenieuwenhuis\Laravel2fa\Laravel2fa::enable()
- Vérifiez si 2FA est activé:
Wiebenieuwenhuis\Laravel2fa\Laravel2fa::enabled()
Après avoir utilisé la bibliothèque Wiebenieuwenhuis / Laravel-2FA, la sécurité de mon application Laravel a été considérablement améliorée. Les utilisateurs peuvent générer des mots de passe ponctuels via des applications mobiles, augmentant le niveau de sécurité du compte. Dans le même temps, la bibliothèque est très simple à utiliser et peut être facilement intégrée dans le projet via Composer, simplifiant considérablement le processus de développement.
Dans l'ensemble, la bibliothèque Wiebenieuwenhuis / Laravel-2FA résout non seulement mes problèmes de sécurité, mais ajoute également plus de sécurité à mon application. L'ensemble du processus devient efficace et transparent grace à l'installation et à la gestion commode du compositeur. Si vous vous inquiétez également de la sécurité des applications Laravel, essayez cette bibliothèque.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

L'entrée vocale de l'utilisateur est capturée et envoyée au backend PHP via l'API MediaRecorder du JavaScript frontal; 2. PHP enregistre l'audio en tant que fichier temporaire et appelle STTAPI (tel que Google ou Baidu Voice Recognition) pour le convertir en texte; 3. PHP envoie le texte à un service d'IA (comme Openaigpt) pour obtenir une réponse intelligente; 4. PHP appelle ensuite TTSAPI (comme Baidu ou Google Voice Synthesis) pour convertir la réponse en fichier vocal; 5. PHP diffuse le fichier vocal vers l'avant pour jouer, terminant l'interaction. L'ensemble du processus est dominé par PHP pour assurer une connexion transparente entre toutes les liens.

Le cache de configuration de Laravel améliore les performances en fusionnant tous les fichiers de configuration dans un seul fichier de cache. L'activation du cache de configuration dans un environnement de production peut réduire les opérations d'E / S et l'analyse de fichiers sur chaque demande, accélérant ainsi le chargement de configuration; 1. Il doit être activé lorsque l'application est déployée, la configuration est stable et aucune modification fréquente n'est requise; 2. Après l'activation, modifiez la configuration, vous devez ré-para?tre phpartisanconfig: cache pour prendre effet; 3. évitez d'utiliser une logique dynamique ou des fermetures qui dépendent des conditions d'exécution dans le fichier de configuration; 4. Lors du dépannage des problèmes, vous devez d'abord effacer le cache, vérifiez les variables .env et re-cache.

Pour permettre aux conteneurs PHP de prendre en charge la construction automatique, le noyau réside dans la configuration du processus d'intégration continue (CI). 1. Utilisez Dockerfile pour définir l'environnement PHP, y compris l'image de base, l'installation d'extension, la gestion de la dépendance et les paramètres d'autorisation; 2. Configurez des outils CI / CD tels que GitLabci et définissez les étapes de construction, de test et de déploiement via le fichier .gitlab-ci.yml pour réaliser une construction, un test et un déploiement automatique; 3. Intégrer des cadres de test tels que PHPUnit pour s'assurer que les tests sont automatiquement exécutés après les modifications du code; 4. Utiliser des stratégies de déploiement automatisées telles que Kubernetes pour définir la configuration de déploiement via le fichier de déploiement.yaml; 5. Optimiser Dockerfile et adopter une construction en plusieurs étapes

Les éloquents de Laravel sont un outil qui résume la logique de requête commune, divisée en portée locale et en portée mondiale. 1. La portée locale est définie avec une méthode commen?ant par la portée et doit être appelée explicitement, comme POST :: publiée (); 2. La portée globale est automatiquement appliquée à toutes les requêtes, souvent utilisées pour la suppression douce ou les systèmes multi-locataires, et l'interface de portée doit être implémentée et enregistrée dans le modèle; 3. La portée peut être équipée de paramètres, tels que le filtrage des articles par année ou par mois, et les paramètres correspondants sont passés lors de l'appel; 4. Faites attention aux spécifications de dénomination, aux appels de cha?ne, à la désactivation temporaire et à l'expansion de la combinaison lors de l'utilisation pour améliorer la clarté du code et la réutilisabilité.

Sélectionnez la méthode de journalisation: au stade précoce, vous pouvez utiliser l'erreur intégrée_log () pour PHP. Une fois le projet élargi, assurez-vous de passer à des bibliothèques matures telles que Monolog, prendre en charge plusieurs gestionnaires et niveaux de journal et assurez-vous que le journal contient des horodatages, des niveaux, des numéros de ligne de fichiers et des détails d'erreur; 2. Structure de stockage de conception: une petite quantité de journaux peut être stockée dans des fichiers, et s'il existe un grand nombre de journaux, sélectionnez une base de données s'il existe un grand nombre d'analyses. Utilisez MySQL / PostgreSQL sur des données structurées. Elasticsearch Kibana est recommandé pour semi-structuré / non structuré. Dans le même temps, il est formulé pour les stratégies de sauvegarde et de nettoyage régulières; 3. Interface de développement et d'analyse: il devrait avoir des fonctions de recherche, de filtrage, d'agrégation et de visualisation. Il peut être directement intégré à Kibana ou utiliser la bibliothèque du graphique Framework PHP pour développer l'auto-développement, en se concentrant sur la simplicité et la facilité d'interface.

Createahelpers.phpfileinApp / whetters withcustomfonctions likeformatprice, isactiveroute, andisadmin.2.addthefiletothe "fichiers" sectionofcomposer.jsonunderautoload.3.runcomposerdump-autoloadtomakethfunctionsgloballyavailable.4.usethhelperfunctions

UseMockeryForcustomDependcesntencesBySettingExpectations withShouldReceive (). 2.UseLaravel’sfake () MethodForfacadesLikEmail, file d'attente, andhttptopReventReinteractions.3.replaceContainer-BoundServices with $ this-> mock () ForcLenersyntax.4.Usehtp

Créer un tableau de références pour enregistrer les relations de recommandation, y compris les références, les références, les codes de recommandation et le temps d'utilisation; 2. Définir l'appartenance et les relations HasMany dans le modèle d'utilisateur pour gérer les données de recommandation; 3. Générer un code de recommandation unique lors de l'enregistrement (peut être implémenté via des événements modèles); 4. Capturez le code de recommandation en interrogeant les paramètres lors de l'enregistrement, établissez une relation de recommandation après vérification et empêchez l'auto-recommandation; 5. Déclencher le mécanisme de récompense lorsque les utilisateurs recommandés terminent le comportement spécifié (ordre d'abonnement); 6. Générer des liens de recommandation partageables et utiliser les URL de signature Laravel pour améliorer la sécurité; 7. Afficher les statistiques de recommandation sur le tableau de bord, telles que le nombre total de recommandations et de nombres convertis; Il est nécessaire de s'assurer que les contraintes de base de données, les séances ou les cookies sont persistées,
