Guide d'Utilisation & Foire Aux Questions
Retrouvez l'ensemble des réponses techniques pour exploiter la forge souveraine BANTUDEVLAB et son intégration GitLab CE/EE : création de compte, connexion Zero-Trust, consultation du code source et collaboration sécurisée.
Mode d'Utilisation Fondamental : GitLab & BantuDevLab
Les trois étapes indispensables pour initialiser votre environnement de travail souverain.
1 Comment créer un compte GitLab sur la plateforme souveraine ?
Sur la plateforme souveraine BANTUDEVLAB, l'accès à GitLab CE est unifié avec votre identité cryptographique Zero-Trust. Vous avez deux méthodes pour créer votre compte :
- Rendez-vous sur l'onglet Connexion Zero-Trust.
- Basculez sur l'onglet « Inscription Souveraine » de l'assistant interactif.
- Choisissez votre identifiant développeur et sélectionnez votre pays souverain d'attachement (ex: Côte d'Ivoire, Sénégal, Kenya, Nigeria).
- Générez votre trousseau de clés mathématiques (phrase mnémonique BIP-39 et clé publique Schnorr). Conservez précieusement votre phrase secrète : elle ne quitte jamais votre terminal.
- Validez : votre identité souveraine est instantanément enregistrée. Votre compte GitLab CE associé est automatiquement provisionné sans aucun mot de passe requis.
Si votre organisation dispose d'une passerelle GitLab dédiée, ouvrez l'interface GitLab (via le bouton « Accès Forge Git »), cliquez sur « S'inscrire » (Register), complétez votre profil institutionnel, puis associez votre clé ZKP BantuDevLab via le bouton « Connecter avec Bantu ZKP ».
2 Comment se connecter à son compte ?
La connexion s'opère en mode Zero-Trust sans mot de passe, garantissant l'immunité contre le hameçonnage, le vol d'identifiants et les attaques par force brute :
-
Connexion à BantuDevLab :
Allez sur la page de connexion ZKP. Renseignez votre identifiant développeur. L'application émet un défi cryptographique (nonce à usage unique valable 5 minutes). Saisissez votre phrase mnémonique ou clé secrète locale pour calculer la preuve de Schnorr
(t, s). Une fois la preuve vérifiée par le serveur, votre session est ouverte. - Connexion à GitLab CE via Single Sign-On (SSO OmniAuth ZKP) : Sur la mire de connexion GitLab, cliquez sur le bouton souverain « Connexion avec Bantu ZKP ». Si vous êtes déjà authentifié sur BantuDevLab, la session GitLab est ouverte instantanément. Sinon, vous serez invité à signer le défi cryptographique sans jamais saisir de mot de passe.
3 Comment consulter et cloner le code source des dépôts souverains ?
Le code source hébergé sur BANTUDEVLAB et GitLab est consultable et clonable selon plusieurs modalités :
Consultation Web Immédiate
Depuis le Tableau de Bord, consultez la liste des dépôts, l'arborescence des fichiers, l'historique des commits et éditez du code en ligne avec colorisation syntaxique.
Clone HTTPS avec Jeton Git ZKP
Générez un token d'accès Git (bnt_...) validé par preuve ZKP depuis l'API /api/zkp/tokens/generate/. Clonez ensuite via :
git clone https://bnt_token@git.bantudevlab.africa/organisation/projet.git
Clone Sécurisé SSH
Ajoutez votre clé publique SSH (Ed25519 ou RSA 4096 bits) dans vos paramètres GitLab pour cloner directement :
git clone git@git.bantudevlab.africa:organisation/projet.git
Questions Fréquentes Techniques & Sécurité
Approfondissement sur les fonctionnalités avancées : ZKP, IA Gemma 5B, SAST, Multi-Tenancy et souveraineté continentale.
Qu'est-ce que l'authentification Zero-Trust ZKP et pourquoi surpasse-t-elle les mots de passe classiques ?
ZKP (Zero-Knowledge Proof, ou preuve à divulgation nulle de connaissance) est un protocole cryptographique mathématique fondé sur le problème du logarithme discret (RFC 3526 MODP 2048 bits). Grâce au protocole de Schnorr rendu non-interactif via la transformation de Fiat-Shamir, vous prouvez au serveur que vous détenez votre secret mathématique sans JAMAIS lui révéler ce secret, ni même le faire transiter sur le réseau.
Avantages majeurs :
- Même en cas de compromission totale de la base de données du serveur, aucun mot de passe ni clé privée ne peut fuiter, car seules les clés publiques sont enregistrées.
- Immunité intégrale contre les écoutes réseau et le rejeu de requêtes grâce aux nonces éphémères consommés atomiquement.
- Validation mathématique stricte de non-appartenance aux petits sous-groupes pour éliminer toute tentative de falsification de clé.
Comment fonctionne la double approbation ZKP sur les Merge Requests (MR) ?
Pour les projets critiques des ministères, banques centrales et agences publiques, BANTUDEVLAB intègre un quorum d'approbation cryptographique :
- La fusion (merge) d'une branche de fonctionnalités vers la branche principale exige la signature mathématique d'au moins deux relecteurs habilités.
- Chaque approbation est scellée par une preuve ZKP enregistrée sous le modèle SovereignMergeRequestApproval.
- Le pipeline GitLab CI/CD et la passerelle de fusion bloquent automatiquement l'opération si le quorum cryptographique n'est pas réuni.
Comment l'assistant IA local Gemma 5B audite-t-il le code sans aucune fuite vers l'étranger ?
Contrairement aux assistants cloud propriétaires hébergés sous juridiction étrangère (Cloud Act, FISA), le modèle Gemma 5B de BANTUDEVLAB :
- Est déployé exclusivement sur des serveurs physiques situés sur le sol africain (Systalink Cloud, datacenters Tier-3 Abidjan, Dakar, Nairobi, Kigali).
- S'exécute en local via vLLM / Ollama sans aucune transmission de télémétrie ou de code source à des tiers.
- Masque et anonymise automatiquement les secrets éventuels avant toute journalisation (AIInteractionLog).
- Est fine-tuné avec LoRA/QLoRA (4-bit GGUF) sur les cadres légaux panafricains et les meilleures pratiques de souveraineté logicielle.
Comment fonctionne le scanner de sécurité SAST et comment est calculé le score de souveraineté ?
Le scanner d'analyse statique SAST de BANTUDEVLAB analyse automatiquement chaque commit et fichier soumis :
- Détection des secrets codés en dur (clés privées, tokens API, identifiants).
- Détection des injections SQL, exécutions de commandes non sécurisées (eval, exec, pickle).
- Détection des dépendances externes non souveraines ou non auditées.
- Attribution d'un score de 0 à 100 : un score inférieur à 70 peut déclencher un blocage automatique préventif dans les hooks de pre-receive.
- Exportation des rapports aux formats standard OASIS SARIF 2.1.0 et GitLab SAST (gl-sast-report.json).
Comment est assurée l'étanchéité entre organisations (Banques, Ministères, Universités, Startups) ?
Le modèle SovereignOrganization assure une compartimentation multi-tenancy stricte :
- Chaque organisation dispose d'espaces de noms (namespaces) dédiés synchronisés avec les groupes GitLab.
- La création d'organisations est soumise à validation administrative (contrôle IsAdminUser).
- Des niveaux de souveraineté graduels (Tier-1 Continental, Tier-2 Régional, Tier-3 Startup) définissent les règles de chiffrement et d'hébergement.
En quoi BANTUDEVLAB est-il conforme à la Convention de Malabo et aux réglementations africaines de cybersécurité ?
La Convention de l'Union Africaine sur la Cybersécurité et la Protection des Données à Caractère Personnel (Malabo 2014) impose des garanties strictes d'intégrité, de traçabilité et de non-ingérence :
- Journal d'audit immuable (AuditTrailLog) chaîné cryptographiquement par hachage SHA-256 (blockchain interne vérifiable).
- Vérification automatisée de l'intégrité via la commande de gestion :
python manage.py export_malabo_compliance_report. - Souveraineté des données garantie : aucun hébergement soumis à des législations extraterritoriales.
Pourquoi la plateforme n'utilise-t-elle aucun emoji ?
BANTUDEVLAB applique une politique stricte Zéro-Emoji (contrôlée en continu par le script scripts/check_no_emoji.py) pour trois raisons majeures :
- Accessibilité universelle (WCAG 2.2 AA) : les lecteurs d'écran pour personnes malvoyantes prononcent souvent de façon erratique les pictogrammes Unicode.
- Souveraineté visuelle & neutralité : l'ensemble des icônes et drapeaux sont des fichiers vectoriels SVG auto-hébergés sans aucun recours à des polices ou CDN tiers.
- Cohérence d'affichage : affichage strictement identique quel que soit le système d'exploitation client (Linux, BSD, Windows, macOS, terminaux mobiles).
Comment configurer et exécuter des pipelines CI/CD sur les runners souverains ?
Vos fichiers .gitlab-ci.yml peuvent cibler directement les nœuds d'exécution certifiés panafricains grâce aux tags de runners :
build-sovereign:
stage: build
tags:
- sovereign-abidjan
- tier1-runner
script:
- python -m pytest
- python scripts/check_no_emoji.py
Ces runners sont isolés dans des conteneurs sécurisés rootless hébergés dans nos datacenters partenaires.
Une autre question technique ?
Consultez la documentation technique approfondie du projet ou adressez-vous directement aux ingénieurs souverains de BANTUDEVLAB.