À propos du projet

Yearning est une plateforme open-source d'audit SQL, déployée localement et axée sur MySQL. Elle est destinée aux administrateurs de bases de données et aux développeurs qui ont besoin de processus de modification et de requête de bases de données contrôlés et audités, et elle met l'accent sur la confidentialité en conservant les identifiants de base de données et les instructions SQL dans l'environnement propre de l'utilisateur. Les capacités principales documentées dans le projet incluent : - Audit SQL : les instructions SQL sont soumises sous forme de tickets d'audit qui passent par des flux d'approbation. Un vérificateur syntaxique automatisé valide les instructions par rapport à un ensemble configurable de règles de vérification couvrant la correction, la sécurité et la conformité. Pour les opérations DDL et DML, des instructions de rollback sont générées automatiquement, et un journal d'historique préserve la traçabilité des modifications. - Audit de requêtes : la plateforme audite les requêtes des utilisateurs, peut restreindre les sources de données et les bases de données accessibles, et anonymise les champs sensibles. Les enregistrements de requêtes sont sauvegardés pour référence future et examen de conformité. - Assistant IA : basé sur un grand modèle de langage, il fournit des suggestions d'optimisation SQL et convertit les entrées en langage naturel en SQL (texte-vers-SQL). Des invites par défaut et personnalisées sont prises en charge. - Édition de requêtes : la coloration syntaxique SQL et l'auto-complétion aident les utilisateurs à distinguer visuellement les mots-clés, les noms de tables, les noms de colonnes et les opérateurs, rendant la structure des requêtes plus facile à lire et à écrire. - Contrôle d'accès : le contrôle d'accès basé sur les rôles (RBAC) permet aux administrateurs de créer des rôles avec des permissions spécifiques et de restreindre l'accès aux ordres de travail de requête, aux fonctions d'audit et à d'autres opérations sensibles. - Sécurité : le projet inclut des mécanismes de chiffrement destinés à protéger les données sensibles même en cas d'accès non autorisé. Détails de déploiement et techniques : Yearning est écrit en Go et distribué sous forme de binaire unique ou d'image Docker (yeelabs/yearning), avec prise en charge des architectures x86/x64 et ARM. L'installation implique de télécharger une version, de configurer config.toml, d'exécuter ./Yearning install pour initialiser la base de données, puis ./Yearning run pour démarrer le service. Les déploiements Docker transmettent les détails de connexion MySQL (adresse, utilisateur, mot de passe, base de données) et une SECRET_KEY via des variables d'environnement, avec l'interface web servie sur le port 8000 et des options de langue telles que zh_CN. Le projet est sous licence AGPL-3.0. La documentation est disponible sur next.yearning.io, et le dépôt fournit des README en anglais, chinois simplifié et japonais. Le README recommande également Spug, une plateforme open-source légère d'automatisation des opérations, comme outil connexe.