VisiDog Enterprise Administration Guide Guide d'Administration VisiDog Enterprise
Complete manual for IT administrators: secure LLM proxy configuration, API key encryption, user and license management, and consumption governance. Manuel complet pour les responsables informatiques : configuration du proxy mandataire d'IA, chiffrement des clés API, gestion des utilisateurs et licences, et gouvernance des consommations.
🛡️ 1. Overview & Security Architecture 1. Vue d'ensemble & Architecture de Sécurité
VisiDog Enterprise acts as a secure, authenticated AI forward proxy between your organization's users and external Large Language Model (LLM) providers (OpenAI, Anthropic, Google Gemini, Azure, Mistral, DeepSeek...).
Instead of distributing expensive and sensitive provider API keys to every user's browser, VisiDog Enterprise centralizes credential storage on your secure server. Each collaborator signs in with their portal account, and their inference access is governed by the assigned access profile.
VisiDog Enterprise agit comme un proxy mandataire d'IA sécurisé et authentifié, intercalé entre les postes de travail de vos collaborateurs et utilisateurs et les fournisseurs de modèles de langage (LLM) externes (OpenAI, Anthropic, Google Gemini, Azure, Mistral, DeepSeek...).
Plutôt que de diffuser des clés d'API fournisseurs sensibles et coûteuses sur chaque navigateur utilisateur, VisiDog Enterprise centralise le stockage des identifiants sur votre serveur sécurisé. Chaque collaborateur se connecte avec son compte portail, et son accès d'inférence est gouverné par le profil d'accès qui lui est affecté.
🔐 2. Account Management & Two-Factor Authentication (2FA) 2. Gestion du Compte & Double Facteur (2FA TOTP)
Enterprise administrator accounts hold critical permissions (modifying API keys, revoking access, allocating budget quotas). As an IT administrator, you should enforce strong passwords and activate Two-Factor Authentication (2FA TOTP, RFC 6238).
Les comptes administrateurs d'entreprise disposent de privilèges sensibles (gestion des clés d'API, révocation de collaborateurs, plafonds de facturation). En tant qu'administrateur, vous devez adopter un mot de passe robuste et activer l'Authentification à Double Facteur (2FA TOTP, RFC 6238).
Step-by-Step: Enabling 2FA (TOTP) Procédure : Activation du Double Facteur (2FA TOTP)
-
1
Navigate to Account Security Accédez à l'écran Sécurité & Mot de passe
In the sidebar navigation, click on Security & Password (or URL fragment #security). Dans la barre latérale du portail connecté, cliquez sur Sécurité & Mot de passe (fragment #security).
-
2
Click "Enable Two-Factor Authentication" Cliquez sur « Configurer le double facteur (2FA) »
The server will generate a unique Base32 secret key and display a QR Code compatible with standard authenticator applications. Le serveur génère une clé secrète Base32 unique et affiche un QR Code compatible avec toutes les applications d'authentification standard.
-
3
Scan the QR Code with your Authenticator Scannez le QR Code avec votre application mobile
Open Google Authenticator, Microsoft Authenticator, Bitwarden, 1Password, or Aegis, and scan the on-screen code (or copy the manual secret key). Ouvrez Google Authenticator, Microsoft Authenticator, Bitwarden, 1Password ou Aegis et scannez le code affiché (ou copiez la clé secrète manuellement).
-
4
Confirm with a 6-Digit Code Validez avec le code à 6 chiffres
Enter the 6-digit code currently generated by your app and click Verify and Activate. Your account is immediately protected. Saisissez le code temporaire à 6 chiffres affiché sur votre application et cliquez sur Confirmer et activer. La protection est instantanément active.
🤖 3. Company models & Providers 3. Modèles de l’entreprise & Fournisseurs
In Company models (#models), add a free VisiDog model, a model using a provider API key or a paid VisiDog offer. This catalog belongs to the company. Then select the permitted models in Profiles and assign users to their profiles, including your own access. In a personal space, this page is called My models; company members see Accessible models.
Dans Modèles de l’entreprise (#models), ajoutez un modèle gratuit VisiDog, un modèle avec une clé API fournisseur ou une offre payante VisiDog. Ce catalogue appartient à l’entreprise. Choisissez ensuite les modèles autorisés dans Profils et affectez les utilisateurs à leur profil, y compris votre propre accès. Dans un espace personnel, cette page s’appelle Mes modèles ; les membres de l’entreprise consultent leurs Modèles accessibles.
GET and HEAD are allowed without enabling other methods. The domain list applies to every method; empty or * allows all public domains, subject to network protection.
GET et HEAD restent permis sans activer les autres méthodes. La liste de domaines s’applique à toutes les méthodes ; vide ou * autorise tous les domaines publics sous réserve de la protection réseau.
Recommended Flagship Models Modèles Phares Recommandés
| Provider TypeType Fournisseur | Official Target EndpointURL Cible Officielle | Recommended Model IdentifierIdentifiant Modèle Recommandé | Key FeaturesPoints Forts |
|---|---|---|---|
| OpenAI | https://api.openai.com/v1/chat/completions | gpt-5.5, gpt-4o | State-of-the-art reasoning, code generation and instruction following. Raisonnement complexe de pointe, génération de code et suivi des consignes. |
| Anthropic | https://api.anthropic.com/v1/messages | claude-sonnet-5, claude-3-7-sonnet | Exceptional coding abilities, nuance understanding and large context window. Capacités exceptionnelles en programmation, nuance et très large contexte. |
| Google Gemini | https://generativelanguage.googleapis.com/v1beta/openai/chat/completions | gemini-3.6-flash, gemini-2.5-flash | Ultra-fast response latency, economical token pricing and high throughput. Latence ultra-faible, tarification économique et débit élevé. |
| Compatible OpenAI | https://api.deepseek.com/chat/completions | deepseek-v4-flash, deepseek-chat | High performance open-weights models, self-hosted Ollama/vLLM or Groq. Modèles ouverts très performants, hébergement sur site (vLLM/Ollama) ou Groq. |
🛡️ 4. Access profiles 4. Profils d’accès
The Profiles view (#roles) controls which company models each user may call. Each user has exactly one access profile, separate from their portal administration status.
La vue Profils (#roles) définit les modèles de l’entreprise que chaque utilisateur peut appeler. Un utilisateur possède exactement un profil d’accès, distinct de son statut d’administration du portail.
- 1
Declare the company modelsDéclarez les modèles de l’entreprise
In Company models (#models), add free VisiDog models, models using a provider API key or paid VisiDog offers that your organization is allowed to use. Technical capabilities are retrieved when available.Dans Modèles (#models), ajoutez les modèles revendeur ou BYOK que l’organisation peut utiliser. Leurs caractéristiques techniques sont récupérées lorsqu’elles sont disponibles.
- 2
Create or edit a profileCréez ou modifiez un profil
Select Add a profile, or Edit an existing profile. The same form lets you name the profile, select permitted models, and configure its two optional aliases.Sélectionnez Ajouter un profil, ou Modifier un profil existant. Le même formulaire permet de le nommer, de cocher les modèles autorisés et de configurer ses deux alias optionnels.
- 3
Apply network and time restrictions when neededAppliquez si besoin des restrictions réseau et horaires
Enter one IP address or IPv4/IPv6 CIDR range per line. An empty list allows every IP. Enable the schedule to select a timezone, authorized days and start/end times.Saisissez une adresse IP ou une plage CIDR IPv4/IPv6 par ligne. Une liste vide autorise toute IP. Activez les horaires pour choisir le fuseau, les jours et les heures de début et de fin.
- 4
Assign usersAffectez les utilisateurs
Use the assignment table at the bottom of the Profiles page. New users automatically receive the default profile.Utilisez le tableau d’affectation en bas de la page Profils. Les nouveaux utilisateurs reçoivent automatiquement le profil par défaut.
👥 5. Managing Users & Licenses 5. Gestion des Collaborateurs & Licences
Each user accessing VisiDog within your organization must be provisioned in the Users & Licenses view (#users).
Chaque utilisateur ou collaborateur utilisant VisiDog au sein de votre entreprise doit être déclaré dans l'écran Collaborateurs & Licences (#users).
Account Access & Instant Revocation Accès au Compte & Révocation Immédiate
- Email Enrollment: a created account waits for its email confirmation. The recipient confirms the address, then chooses a password through password recovery before the first sign-in. Enrôlement par adresse : un compte créé attend la confirmation de son adresse email. Le destinataire confirme son adresse, puis choisit son mot de passe via la récupération avant la première connexion.
- Unified Sign-In: the collaborator signs in with their email, password and optionally a two-factor code. Existing account holders can also be invited to the environment rather than recreating an identity. Connexion unifiée : le collaborateur se connecte avec son email, son mot de passe et en option un code de double facteur. Un compte existant peut aussi être invité à rejoindre l'environnement plutôt que de recréer une identité.
- Instant Revocation: revoking or deactivating a user immediately cuts off proxy access (HTTP 401) and closes their active sessions. Révocation immédiate : désactiver ou supprimer un collaborateur bloque instantanément ses requêtes au niveau du proxy (HTTP 401) et ferme ses sessions actives.
💻 6. End-User Workstation Configuration 6. Configuration du Poste Utilisateur (Client VisiDog)
Setting up a user's workstation takes less than 30 seconds. The collaborator does not need to register on any AI platform or install server software.
La configuration du poste de travail d'un utilisateur nécessite moins de 30 secondes. Le collaborateur n'a besoin d'aucun compte chez les fournisseurs de LLM ni d'installer d'outils complexes.
-
1
Onboard the Collaborator through the Portal Enrôlez le collaborateur via le Portail
The collaborator created in Users & Licenses receives an activation email: they confirm their address, choose a password through password recovery, and sign in with their portal account. They do not need to register on any AI platform. Le collaborateur créé dans Collaborateurs & Licences reçoit un email d'activation : il confirme son adresse, choisit son mot de passe via la récupération, puis se connecte avec son compte portail. Il n'a besoin d'aucun compte chez les fournisseurs d'IA.
-
2
Portal Authentication & Model Selection Authentification Portail & Sélection du Modèle
Upon opening VisiDog to create a project, the user signs in with their portal account (email and password): the models authorized by their access profile become available automatically, without any key to paste. Alternatively, a personal model or provider can be selected if configured. À l'ouverture de VisiDog pour créer un projet, l'utilisateur s'authentifie avec son compte portail (email et mot de passe) : les modèles autorisés par son profil d'accès deviennent disponibles automatiquement, sans aucune clé à saisir.
-
3
Project Intent & AI Launch Intention du Projet & Lancement de l'IA
The user arrives on the Project Intent screen. They describe what the application should do in the Intent / Description field (e.g. "Create a contact management CRM with quotes...") and click Start the Project. VisiDog immediately establishes the secure connection with the enterprise proxy and starts building the application with AI assistance. L'utilisateur accède ensuite à l'écran Intention du Projet. Il décrit ce que l'application doit accomplir dans le champ Intention / Description (ex: « Créer un CRM de gestion de contacts avec devis... ») et clique sur Démarrer le Projet. VisiDog établit immédiatement la liaison sécurisée avec le proxy d'entreprise et commence la création de l'application assistée par l'IA.
📋 7. Inference Logs, Auditing & Traceability 7. Journaux d'Inférence, Audit & Traçabilité
Under Inference Logs (#logs), administrators maintain real-time oversight of all AI queries routed through the company proxy.
La vue Journaux d'Inférence (#logs) assure une traçabilité complète et en temps réel de toutes les requêtes relayées par le proxy mandataire.
| Logged FieldChamp Enregistré | DescriptionDescription | Compliance ValueValeur de Conformité |
|---|---|---|
| Timestamp (UTC) | Exact date and millisecond timestamp of the inference call.Horodatage précis à la milliseconde de l'appel d'inférence. | Audit Trail / Chronologie légale |
| User / Collaborator | Name and ID of the user or collaborator initiating the inference.Nom et identifiant de l'utilisateur ou collaborateur à l'origine de l'appel. | Imputabilité des usages |
| Provider & Real Model | Exact target model executed (e.g. gpt-5.5).Modèle réel effectivement exécuté (ex: gpt-5.5). | Vérification contractuelle |
| Prompt & Output Tokens | Token consumption split between prompt context and completion.Décompte précis des tokens en entrée (prompt) et sortie (complétion). | Contrôle des coûts d'API |
| Latency (ms) | Round-trip duration between VisiDog proxy and LLM endpoint.Temps d'aller-retour total entre le proxy et le fournisseur. | Surveillance des performances SLA |
| HTTP Status | HTTP 200 (Success), 429 (Rate-limited/Quota), or 500 (Provider error).HTTP 200 (Succès), 429 (Dépassement de quota), ou 500 (Erreur fournisseur). | Détection proactive d'incidents |
⚙️ 8. Quotas, Enforcement & Budget Policies 8. Quotas, Plafonds & Politiques Budgétaires
The Shared company quotas view (#quotas) sets one monthly budget for the selected company environment. All users, profiles and models consume this same budget. It is not an individual allowance or a separate budget per model or profile.
- Monthly budgets: request count and input + output tokens. A value of 0 means unlimited for that counter. Counters reset at the start of each UTC month. These usage budgets are separate from prepaid credits.
- Example: a 10,000-request budget is used up by one user making 6,000 requests and another making 4,000, even on different models or profiles.
- Profile rate limit: requests per minute are counted separately for each user. Users with the same profile do not share this minute counter. Both limits apply.
- Budget enforcement: when enabled, the proxy reserves estimated input and provider-capped output before admission. Insufficient budget returns HTTP 429; unsupported bounds return HTTP 422. Unknown usage remains reserved. Input is estimated, so this is not an absolute guarantee on provider tokens or billing. When disabled, calls continue beyond the thresholds.
- Alerts: the notification contact is configured here; thresholds and channels are configured in Alerts & Webhooks.
L’écran Quotas partagés de l’entreprise (#quotas) définit un budget mensuel unique pour l’environnement d’entreprise sélectionné. Tous les utilisateurs, profils et modèles consomment ce même budget. Ce n’est pas une allocation individuelle ni un budget distinct par modèle ou par profil.
- Budgets mensuels : nombre de requêtes et jetons d’entrée + sortie. La valeur 0 signifie sans limite pour ce compteur. Les compteurs se renouvellent au début de chaque mois UTC. Ces budgets d’usage sont distincts des crédits prépayés.
- Exemple : un budget de 10 000 requêtes est épuisé par un utilisateur qui en effectue 6 000 et un autre 4 000, même avec des modèles ou profils différents.
- Débit du profil : les requêtes par minute sont comptées séparément pour chaque utilisateur. Les utilisateurs d’un même profil ne partagent pas ce compteur à la minute. Les deux limites s’appliquent.
- Application des budgets : si activée, le proxy réserve l’entrée estimée et la sortie plafonnée chez le fournisseur avant l’admission. Un budget insuffisant donne HTTP 429 ; une borne non prise en charge donne HTTP 422. L’usage inconnu reste réservé. L’entrée étant estimée, ce n’est pas une garantie absolue sur les jetons ou la facturation du fournisseur. Si désactivée, les appels continuent au-delà des seuils.
- Alertes : le contact de notification se règle ici ; les seuils et canaux se règlent dans Alertes & Webhooks.
❓ 9. FAQ & Troubleshooting 9. FAQ & Dépannage Courant
2. Verify that your server's outbound firewall allows HTTPS connections to external provider endpoints.
3. Check that the Target URL does not point to a restricted internal IP or localhost (blocked by anti-SSRF).
2. Vérifiez que le pare-feu sortant de votre serveur autorise les flux HTTPS vers les domaines du fournisseur.
3. Confirmez que l'URL cible ne pointe pas vers une adresse interne ou localhost (bloquée par l'anti-SSRF).