io.enterpriseai.resources.FileSecurityClient
Source : sdks/java/enterprise-ai-java/src/main/java/io/enterpriseai/resources/FileSecurityClient.java. Retour à l'index de la référence du SDK Java.
Cette page est générée par tools/docs/gen_sdk_reference.py depuis les sources du SDK et les dossiers de textes OpenAPI. Ne la modifiez pas à la main : changez la source et régénérez.
Classe FileSecurityClient
Sécurité des fichiers. Contrôles antivirus et de contenu de chaque fichier qui entre dans la plateforme, avant qu'un analyseur, un modèle ou un magasin ne le voie.
Constructeur FileSecurityClient
FileSecurityClient(Transport transport)
Crée le client sur le transport partagé ; EnterpriseAIClient le construit, on y accède par l'accesseur du même nom.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
transport | Transport | oui | Transport partagé par les sous-clients d'un même client. |
FileSecurityClient.getScan
JsonNode getScan(String scanId)
Lire un enregistrement d'analyse. Un enregistrement d'analyse : statut, verdict, raisons, source et sa référence, nom de fichier, type déclaré et détecté, taille, SHA-256, réponse de chaque moteur, échantillon conservé ou non, analyse qu'il reprend, créateur et dates (création, analyse, expiration de l'échantillon). Demande un principal de tenant ; l'enregistrement d'un autre n'est visible que par tenant_admin, security_officer et auditor (404 not_found sinon).
Route : /v1/file-security/scans/{scan_id} (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
scanId | String | oui | Identifiant de l'enregistrement d'analyse. |
Retour : JsonNode. Réponse JSON décodée de l'opération « Lire un enregistrement d'analyse ».
Erreurs levées : les erreurs typées du transport (Erreurs).
FileSecurityClient.listScans
Page<JsonNode> listScans()
Lister les enregistrements d'analyse. Enregistrements d'analyse du tenant, du plus récent au plus ancien ; un principal sans rôle de lecteur (tenant_admin, security_officer, auditor) ne voit que ses propres analyses. Demande un principal de tenant. Un statut, un verdict ou une source inconnus répondent 400 invalid_request ; un curseur mal formé 400 invalid_cursor.
Route : /v1/file-security/scans (GET).
Cet élément ne prend aucun paramètre.
Retour : Page<JsonNode>. Réponse JSON décodée de l'opération « Lister les enregistrements d'analyse ».
Erreurs levées : les erreurs typées du transport (Erreurs).
FileSecurityClient.listScans
Page<JsonNode> listScans(Map<String, ?> query)
Lister les enregistrements d'analyse. Enregistrements d'analyse du tenant, du plus récent au plus ancien ; un principal sans rôle de lecteur (tenant_admin, security_officer, auditor) ne voit que ses propres analyses. Demande un principal de tenant. Un statut, un verdict ou une source inconnus répondent 400 invalid_request ; un curseur mal formé 400 invalid_cursor.
Route : /v1/file-security/scans (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
query | Map<String, ?> | oui | Paramètres de la chaîne de requête de la route. |
Retour : Page<JsonNode>. Réponse JSON décodée de l'opération « Lister les enregistrements d'analyse ».
Erreurs levées : les erreurs typées du transport (Erreurs).
FileSecurityClient.policy
JsonNode policy()
Lire la politique de sécurité des fichiers. Politique effective du tenant : les règles verrouillées, chaque règle modifiable (valeurs enregistrées par-dessus les valeurs par défaut, la taille jamais au-dessus du plafond de la plateforme EAI_FILE_SCAN_MAX_BYTES), les types de fichiers connus, et la date et l'auteur de la dernière modification. Demande un principal de tenant avec tenant_admin, security_officer ou auditor (403 forbidden).
Route : /v1/file-security/policy (GET).
Cet élément ne prend aucun paramètre.
Retour : JsonNode. Réponse JSON décodée de l'opération « Lire la politique de sécurité des fichiers ».
Erreurs levées : les erreurs typées du transport (Erreurs).
FileSecurityClient.purgeSample
JsonNode purgeSample(String scanId)
Purger l'échantillon d'un fichier bloqué. Supprime tout de suite l'échantillon chiffré d'un fichier bloqué, sans attendre la fin de sa rétention, et répond sample_retained: false. La purge est auditée (file_security.sample.purge) avec le SHA-256 du fichier. Demande un principal de tenant avec security_officer ou tenant_admin (403 forbidden). Une analyse inconnue ou non visible par l'appelant répond 404 not_found.
Route : /v1/file-security/scans/{scan_id}/sample (DELETE).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
scanId | String | oui | Identifiant de l'enregistrement d'analyse. |
Retour : JsonNode. Réponse JSON décodée de l'opération « Purger l'échantillon d'un fichier bloqué ».
Erreurs levées : les erreurs typées du transport (Erreurs).
FileSecurityClient.rescan
JsonNode rescan(String scanId)
Analyser à nouveau l'échantillon d'un fichier bloqué. Analyse à nouveau l'échantillon conservé d'un fichier bloqué, par exemple après une mise à jour des signatures, et répond 201 avec un nouvel enregistrement dont rescan_of désigne l'analyse d'origine. L'envoi d'origine n'est jamais libéré : un résultat sain ne fait qu'informer. Demande un principal de tenant avec security_officer ou tenant_admin (403 forbidden). Sans échantillon conservé : 409 file_sample_unavailable ; analyse inconnue ou invisible : 404 not_found.
Route : /v1/file-security/scans/{scan_id}/rescan (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
scanId | String | oui | Identifiant de l'enregistrement d'analyse bloqué dont l'échantillon est analysé à nouveau. |
Retour : JsonNode. Réponse JSON décodée de l'opération « Analyser à nouveau l'échantillon d'un fichier bloqué ».
Erreurs levées : les erreurs typées du transport (Erreurs).
FileSecurityClient.rescan
JsonNode rescan(String scanId, RequestOptions options)
Analyser à nouveau l'échantillon d'un fichier bloqué. Analyse à nouveau l'échantillon conservé d'un fichier bloqué, par exemple après une mise à jour des signatures, et répond 201 avec un nouvel enregistrement dont rescan_of désigne l'analyse d'origine. L'envoi d'origine n'est jamais libéré : un résultat sain ne fait qu'informer. Demande un principal de tenant avec security_officer ou tenant_admin (403 forbidden). Sans échantillon conservé : 409 file_sample_unavailable ; analyse inconnue ou invisible : 404 not_found.
Route : /v1/file-security/scans/{scan_id}/rescan (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
scanId | String | oui | Identifiant de l'enregistrement d'analyse bloqué dont l'échantillon est analysé à nouveau. | |
options | RequestOptions | oui | Options de l'appel (clé d'idempotence, traceparent, en-têtes, signal d'annulation). |
Retour : JsonNode. Réponse JSON décodée de l'opération « Analyser à nouveau l'échantillon d'un fichier bloqué ».
Erreurs levées : les erreurs typées du transport (Erreurs).
FileSecurityClient.scan
JsonNode scan(byte[] data)
Analyser un fichier sans l'ingérer. Analyse un fichier sans l'ingérer et répond 201 avec l'enregistrement, released ou blocked (un fichier bloqué n'est pas une erreur ici). Tout principal de tenant peut l'appeler (403 tenant_required sinon).
Route : /v1/file-security/scans (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
data | byte[] | oui | Soit du JSON {content_base64, filename?, mime_type?}, soit du multipart/form-data avec une partie file et les champs facultatifs filename et mime_type (ils remplacent les valeurs de la partie). |
Retour : JsonNode. Réponse JSON décodée de l'opération « Analyser un fichier sans l'ingérer ».
Erreurs levées : les erreurs typées du transport (Erreurs).
FileSecurityClient.scan
JsonNode scan(byte[] data, String filename, String mimeType)
Analyser un fichier sans l'ingérer. Analyse un fichier sans l'ingérer et répond 201 avec l'enregistrement, released ou blocked (un fichier bloqué n'est pas une erreur ici). Tout principal de tenant peut l'appeler (403 tenant_required sinon).
Route : /v1/file-security/scans (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
data | byte[] | oui | Soit du JSON {content_base64, filename?, mime_type?}, soit du multipart/form-data avec une partie file et les champs facultatifs filename et mime_type (ils remplacent les valeurs de la partie). | |
filename | String | oui | Nom du fichier analysé, conservé dans le relevé d'analyse. | |
mimeType | String | oui | Type de média du contenu, par exemple application/pdf ou image/png. |
Retour : JsonNode. Réponse JSON décodée de l'opération « Analyser un fichier sans l'ingérer ».
Erreurs levées : les erreurs typées du transport (Erreurs).
FileSecurityClient.scan
JsonNode scan(byte[] data, String filename, String mimeType, RequestOptions options)
Analyser un fichier sans l'ingérer. Analyse un fichier sans l'ingérer et répond 201 avec l'enregistrement, released ou blocked (un fichier bloqué n'est pas une erreur ici). Tout principal de tenant peut l'appeler (403 tenant_required sinon).
Route : /v1/file-security/scans (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
data | byte[] | oui | Soit du JSON {content_base64, filename?, mime_type?}, soit du multipart/form-data avec une partie file et les champs facultatifs filename et mime_type (ils remplacent les valeurs de la partie). | |
filename | String | oui | Nom du fichier analysé, conservé dans le relevé d'analyse. | |
mimeType | String | oui | Type de média du contenu, par exemple application/pdf ou image/png. | |
options | RequestOptions | oui | Options de l'appel (clé d'idempotence, traceparent, en-têtes, signal d'annulation). |
Retour : JsonNode. Réponse JSON décodée de l'opération « Analyser un fichier sans l'ingérer ».
Erreurs levées : les erreurs typées du transport (Erreurs).
FileSecurityClient.stats
JsonNode stats()
Lire les statistiques d'analyse. Nombre d'analyses sur les window_hours dernières heures, par statut, par verdict et par source, avec l'heure du dernier fichier bloqué. Les lecteurs (tenant_admin, security_officer, auditor) comptent toutes les analyses du tenant, les autres seulement les leurs. Demande un principal de tenant. Une fenêtre hors de 1 à 8784 heures répond 400 invalid_request.
Route : /v1/file-security/stats (GET).
Cet élément ne prend aucun paramètre.
Retour : JsonNode. Réponse JSON décodée de l'opération « Lire les statistiques d'analyse ».
Erreurs levées : les erreurs typées du transport (Erreurs).
FileSecurityClient.stats
JsonNode stats(Map<String, ?> query)
Lire les statistiques d'analyse. Nombre d'analyses sur les window_hours dernières heures, par statut, par verdict et par source, avec l'heure du dernier fichier bloqué. Les lecteurs (tenant_admin, security_officer, auditor) comptent toutes les analyses du tenant, les autres seulement les leurs. Demande un principal de tenant. Une fenêtre hors de 1 à 8784 heures répond 400 invalid_request.
Route : /v1/file-security/stats (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
query | Map<String, ?> | oui | Paramètres de la chaîne de requête de la route. |
Retour : JsonNode. Réponse JSON décodée de l'opération « Lire les statistiques d'analyse ».
Erreurs levées : les erreurs typées du transport (Erreurs).
FileSecurityClient.status
JsonNode status()
Lire l'état des moteurs d'analyse. Mode (enforce ou dev), disponibilité, chaîne de traitement et chaque passerelle ClamAV et worker YARA-X, sondés en direct : version, version des signatures, publication et âge avec un indicateur stale au regard de la politique, version, empreinte, nombre et heure de chargement des règles, latence. L'instance est prête quand chaque moteur a au moins un point d'accès sain (en mode enforce, ou quand il est configuré). Demande tenant_admin, security_officer ou auditor (403 forbidden).
Route : /v1/file-security/status (GET).
Cet élément ne prend aucun paramètre.
Retour : JsonNode. Réponse JSON décodée de l'opération « Lire l'état des moteurs d'analyse ».
Erreurs levées : les erreurs typées du transport (Erreurs).
FileSecurityClient.updatePolicy
JsonNode updatePolicy(Map<String, ?> fields)
Modifier la politique de sécurité des fichiers. Modifie les règles modifiables fournies dans le corps ; les autres règles gardent leur valeur. Les tailles ne peuvent être que plus strictes que le plafond de la plateforme, et les règles verrouillées ne changent jamais (422 file_security_rule_locked). Un champ inconnu, un type inconnu ou une valeur hors bornes répond 422 invalid_request avec le champ et la raison. Demande un principal de tenant avec security_officer ou tenant_admin (403 forbidden). La modification est auditée (file_security.policy.update) avec les valeurs avant et après ; la réponse est la nouvelle politique effective.
Route : /v1/file-security/policy (PUT).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
fields | Map<String, ?> | oui | Champs de la méthode (par exemple utilisateur et mot de passe), jusqu'à 16 valeurs texte. |
Retour : JsonNode. Réponse JSON décodée de l'opération « Modifier la politique de sécurité des fichiers ».
Erreurs levées : les erreurs typées du transport (Erreurs).
FileSecurityClient.updatePolicy
JsonNode updatePolicy(Map<String, ?> fields, RequestOptions options)
Modifier la politique de sécurité des fichiers. Modifie les règles modifiables fournies dans le corps ; les autres règles gardent leur valeur. Les tailles ne peuvent être que plus strictes que le plafond de la plateforme, et les règles verrouillées ne changent jamais (422 file_security_rule_locked). Un champ inconnu, un type inconnu ou une valeur hors bornes répond 422 invalid_request avec le champ et la raison. Demande un principal de tenant avec security_officer ou tenant_admin (403 forbidden). La modification est auditée (file_security.policy.update) avec les valeurs avant et après ; la réponse est la nouvelle politique effective.
Route : /v1/file-security/policy (PUT).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
fields | Map<String, ?> | oui | Champs de la méthode (par exemple utilisateur et mot de passe), jusqu'à 16 valeurs texte. | |
options | RequestOptions | oui | Options de l'appel (clé d'idempotence, traceparent, en-têtes, signal d'annulation). |
Retour : JsonNode. Réponse JSON décodée de l'opération « Modifier la politique de sécurité des fichiers ».
Erreurs levées : les erreurs typées du transport (Erreurs).