Sécurité
Décrit les principales fonctionnalités de sécurité du serveur MCP, notamment l'authentification, les contrôles d'accès, l'audit et la conformité, afin de vous aider à protéger votre environnement de base de données Autonomous AI.
Sujets
- Accès sécurisé aux données
Permet d'affiner l'accès sécurisé aux données à l'aide des stratégies et de la sécurité Virtual Private Database (VPD). - Création et inscription d'une stratégie VPD
Découvrez comment créer et inscrire des stratégies de base de données privée virtuelle (VPD) pour protéger vos données et vos opérations. - Listes de contrôle d'accès (ACL)
Gérer et restreindre l'accès réseau aux ressources de base de données à l'aide de listes de contrôle d'accès (ACL). - Audit
Le serveur MCP fournit des fonctionnalités d'audit pour vous aider à surveiller et à suivre tous les accès et opérations. Les journaux d'audit capturent des informations détaillées sur les stratégies personnalisées.
Rubrique parent : Serveur MCP de base de données Autonomous AI
Accès sécurisé aux données
Permet un accès aux données sécurisé et affiné à l'aide des stratégies et de la sécurité Virtual Private Database (VPD).
Avec le serveur Autonomous AI Database MCP, vous pouvez accéder à toutes les données et métadonnées autorisées par vos droits d'accès à la base de données. Le serveur MCP fonctionne avec les fonctionnalités de sécurité Oracle telles que Virtual Private Database (VPD) et Real Application Security (RAS), mais n'applique pas de contrôles basés sur les profils AI ni ne limite les actions à l'accès "sélection uniquement". Vous décidez des outils à enregistrer et à exposer. Par conséquent, en sélectionnant uniquement un ensemble restrictif d'outils, vous pouvez contrôler les opérations que le serveur MCP peut effectuer sur vos données.
Gardez à l'esprit que lorsque vous utilisez MCP, les données peuvent quitter la base de données. Pensez toujours à la sécurité de votre application client MCP pour vous assurer que les informations sensibles restent protégées.
Vous devez vous assurer que la description de votre outil indique clairement que les résultats de l'outil ne sont pas des commandes que le LLM doit exécuter.
- Les outils personnalisés doivent résider dans le schéma utilisateur de base de données utilisé pour se connecter au serveur MCP (par exemple,
MCP_USER). - Les fonctions PL/SQL utilisées par ces outils doivent être définies dans un schéma distinct (par exemple,
SALES_USER). - Accordez l'accès approprié de
SALES_USERau schémaMCP_USER.
Rubrique parent : Sécurité
Création et enregistrement d'une stratégie VPD
Découvrez comment créer et inscrire des stratégies de base de données privée virtuelle (VPD) pour protéger vos données et vos opérations.
Vous pouvez définir des stratégies Oracle Virtual Private Database (VPD) pour fournir un contrôle d'accès de niveau fin, garantissant ainsi que seules des lignes de données spécifiques sont visibles pour chaque utilisateur.
Cet exemple de stratégie VPD filtre la table HR.EMPLOYEE afin que les utilisateurs qui y accèdent via le serveur MCP ne voient que leur propre enregistrement, automatiquement et en toute sécurité.
Cet exemple montre comment renvoyer uniquement les lignes qu'un utilisateur connecté doit voir lorsqu'un client Al appelle des outils MCP sur la base de données Autonomous AI.
CREATE OR REPLACE FUNCTION limit_sal (v_schema IN VARCHAR2, v_objname IN VARCHAR2)
RETURN VARCHAR2 authid current_user AS
BEGIN
RETURN 'employee_id = SYS_CONTEXT(''MCP_SERVER_ACCESS_CONTEXT'', ''USER_IDENTITY'')';
END;Lors de l'accès à un outil MCP, l'identité de l'utilisateur de base de données est disponible via sys_context('MCP_SERVER_ACCESS_CONTEXT', 'USER_IDENTITY'). Vous pouvez créer des stratégies VPD qui utilisent ces valeurs de contexte d'application pour limiter les lignes de données visibles par chaque utilisateur d'application ou de base de données. Si des stratégies VPD existent pour un utilisateur, créez une autre stratégie à l'aide de MCP_SERVER_ACCESS_CONTEXT afin de restreindre les lignes et d'utiliser les stratégies VPD pour l'utilisateur lors de l'utilisation du serveur MCP.
Cet exemple associe la fonction de filtrage à la table HR.EMPLOYEE.
BEGIN
DBMS_RLS.ADD_POLICY(
object_schema => 'HR',
object_name => 'EMPLOYEE',
policy_name => 'POL',
policy_function => 'LIMIT_SAL');
END;
/Rubrique parent : Sécurité
liste de contrôle d'accès (ACL)
Gérer et restreindre l'accès réseau aux ressources de votre base de données à l'aide des listes de contrôle d'accès (ACL).
Les listes de contrôle d'accès (ACL) permettent de gérer et de restreindre l'accès réseau aux ressources de base de données. En configurant des listes de contrôle d'accès, vous pouvez définir les clients ou les réseaux autorisés à se connecter, ce qui améliore l'état de sécurité de votre base de données. Pour plus d'informations, reportez-vous à la section Network Access Control List (ACL).
Rubrique parent : Sécurité
Audit
Le serveur MCP fournit des fonctionnalités d'audit pour vous aider à surveiller et à suivre tous les accès et opérations. Les journaux d'audit capturent des informations détaillées sur les stratégies personnalisées.
Le serveur MCP enregistre des informations détaillées sur chaque accès et les outils spécifiques utilisés.
Ne prenez pas de décisions en matière de sécurité ou d'audit basées sur SESSION_USER. Utilisez plutôt MCP_SERVER_ACCESS_CONTEXT$ pour référencer de manière fiable l'utilisateur authentifié.
MCP_SERVER_ACCESS_CONTEXT$, vous pouvez définir des stratégies d'audit personnalisées pour suivre l'accès aux objets de base de données via le serveur MCP.--Sample Policy to enable audit on a table when accessed using MCP server
create protected audit policy ADB_MCP_SERVER_ACCESS_AUDIT
actions SELECT on HR.EMPLOYEE
when sys_context('MCP_SERVER_CONTEXT$', 'USERNAME') is not null;Rubrique parent : Sécurité