Paramétrez Openflow Connector for Box

Note

Le connecteur est soumis aux conditions d’utilisation du connecteur.

Cette rubrique décrit les étapes pour paramétrer Openflow Connector for Box.

Conditions préalables

  1. Assurez-vous d’avoir consulté À propos de Openflow Connector for Box.

  2. Assurez-vous que vous avez paramétré Openflow.

Obtenir les identifiants de connexion

En tant que Box ou administrateur Box, créez une application Box Platform comme suit :

  1. Naviguez vers Box Developer Console.

  2. Sélectionnez Create Platform App.

  3. Sélectionnez Custom App comme type d’application.

  4. Donnez un nom et une description à l’application et sélectionnez un objectif dans la liste déroulante.

  5. Sélectionnez Server Authentication (with JWT) comme méthode d’authentification.

  6. Sélectionnez Create App.

  7. Pour configurer l’application, accédez à l’onglet Configuration.

  8. Dans la section App Access Level, sélectionnez App + Enterprise Access.

  9. Dans la section Application Scopes, sélectionnez les options suivantes :

    • Read all files and folders stored in Box.

    • Write all files and folders stored in Box : pour télécharger des fichiers et des dossiers. Notez que le connecteur ne peut pas télécharger de fichiers. Snowflake recommande de n’attribuer au compte de service que le rôle de visualiseur. Pour accorder à l’application l’accès aux fichiers dans Box, sélectionnez un dossier à synchroniser. Partagez-le avec le compte de service de l’application en utilisant l’email du compte de service de l’étape n. Openflow Connector for Box peut identifier et de télécharger des fichiers à partir du dossier spécifié et de tous ses sous-dossiers, mais il ne peut pas modifier les fichiers.

    • Manage users : pour lire les utilisateurs dans l’entreprise.

    • Manage groups : pour lire les groupes et leurs membres dans l’entreprise.

    • Manage enterprise properties : pour lire les événements de l’entreprise.

  10. Dans la section Add and Manage Public Keys, générez une paire de clés publique/privée. Box télécharge un fichier de configuration JSON avec une clé privée.

  11. Enregistrez les modifications.

  12. Accédez à l’onglet Authorization et soumettez l’application à l’autorisation d’accès à l’entreprise.

  13. Demandez à l’administrateur de votre entreprise d’approuver l’application.

  14. Une fois l’approbation accordée, allez dans l’onglet General Settings et enregistrez l’adresse électronique du compte de service de l’application.

    Pour plus d’informations, voir Configuration avec JWT.

Paramétrage du compte Snowflake

En tant qu’administrateur de compte Snowflake, effectuez les tâches suivantes manuellement ou à l’aide du script inclus ci-dessous :

  1. Créez un nouveau rôle ou utilisez un rôle existant et accordez le Privilèges de base de données.

  2. Créez un nouvel utilisateur du service Snowflake avec le type SERVICE.

  3. Autorisez l’utilisateur du service Snowflake le rôle que vous avez créé dans les étapes précédentes.

  4. Configurez avec l’authentification par paire de clés pour l’utilisateur de Snowflake SERVICE de l’étape 2.

  5. Snowflake recommande vivement cette étape. Configurez un gestionnaire de secrets pris en charge par Openflow, par exemple AWS, Azure et Hashicorp, et stockez les clés publiques et privées dans le magasin de secrets.

    Note

    Si, pour une raison quelconque, vous ne souhaitez pas utiliser un gestionnaire de secrets, il vous incombe de protéger les fichiers de clés publiques et privées utilisés pour l’authentification par paires de clés conformément aux politiques de sécurité de votre organisation.

    1. Une fois le gestionnaire de secrets configuré, déterminez comment vous vous y authentifierez. Sur AWS, il est recommandé d’utiliser le rôle de l’instance EC2 associée à Openflow, car de cette manière, aucun autre secret ne doit être conservé.

    2. Dans Openflow, configurez un fournisseur de paramètres associé à ce gestionnaire de secrets, à partir du menu hamburger en haut à droite. Naviguez vers Controller Settings » Parameter Provider et récupérez les valeurs de vos paramètres.

    3. À ce stade, tous les identifiants peuvent être référencés avec les chemins de paramètres associés et aucune valeur sensible ne doit être conservée dans Openflow.

  6. Si d’autres utilisateurs de Snowflake ont besoin d’accéder aux documents bruts ingérés et aux tables ingérées par le connecteur (par exemple, pour un traitement personnalisé dans Snowflake), accordez à ces utilisateurs le rôle créé à l’étape 1.

  7. Désignez un entrepôt à utiliser par le connecteur. Commencez par la taille d’entrepôt la plus petite, puis faites des essais en fonction du nombre de tables répliquées et de la quantité de données transférées. Les tables de grande taille s’adaptent généralement mieux aux entrepôts multi-clusters, plutôt qu’aux entrepôts de grande taille.

Exemple de configuration

--The following script assumes you'll need to create all required roles, users, and objects.
--However, you may want to reuse some that are already in existence.

--Create a Snowflake service user to manage the connector
USE ROLE USERADMIN;
CREATE USER <openflow_service_user> TYPE=SERVICE COMMENT='Service user for Openflow automation';

--Create a pair of secure keys (public and private). For more information, see
--key-pair authentication. Store the private key for the user in a file to supply
--to the connector’s configuration. Assign the public key to the Snowflake service user:
ALTER USER <openflow_service_user> SET RSA_PUBLIC_KEY = '<pubkey>';


--Create a role to manage the connector and the associated data and
--grant it to that user
USE ROLE SECURITYADMIN;
CREATE ROLE <openflow_connector_admin_role>;
GRANT ROLE <openflow_connector_admin_role> TO USER <openflow_service_user>;


--The following block is for the use case: Ingest files and perform processing with Cortex
--Create a role for read access to the cortex search service created by this connector.
--This role should be granted to any role that will use the service
CREATE ROLE <cortex_search_service_read_only_role>;
GRANT ROLE <cortex_search_service_read_only_role> TO ROLE <whatever_roles_will_access_search_service>;

--Create the database the data will be stored in and grant usage to the roles created
USE ROLE ACCOUNTADMIN; --use whatever role you want to own your DB
CREATE DATABASE IF NOT EXISTS <destination_database>;
GRANT USAGE ON DATABASE <destination_database> TO ROLE <openflow_connector_admin_role>;

--Create the schema the data will be stored in and grant the necessary privileges
--on that schema to the connector admin role:
USE DATABASE <destination_database>;
CREATE SCHEMA IF NOT EXISTS <destination_schema>;
GRANT USAGE ON SCHEMA <destination_schema> TO ROLE <openflow_connector_admin_role>;
GRANT CREATE TABLE, CREATE DYNAMIC TABLE, CREATE STAGE, CREATE SEQUENCE, CREATE CORTEX
SEARCH SERVICE ON SCHEMA <destination_schema> TO ROLE <openflow_connector_admin_role>;

--The following block is for use case: Ingest files and perform processing with Cortex
--Grant the Cortex read-only role access to the database and schema
GRANT USAGE ON DATABASE <destination_database> TO ROLE <cortex_search_service_read_only_role>;
GRANT USAGE ON SCHEMA <destination_schema> TO ROLE <cortex_search_service_read_only_role>;

--Create the warehouse this connector will use if it doesn't already exist. Grant the
--appropriate privileges to the connector admin role. Adjust the size according to your needs.
CREATE WAREHOUSE <openflow_warehouse>
WITH
   WAREHOUSE_SIZE = 'MEDIUM'
   AUTO_SUSPEND = 300
   AUTO_RESUME = TRUE;
GRANT USAGE, OPERATE ON WAREHOUSE <openflow_warehouse> TO ROLE <openflow_connector_admin_role>;
Copy

Cas d’utilisation

Vous pouvez configurer le connecteur pour les cas d’utilisation suivants :

Ingestion de fichiers uniquement

Utilisez la définition du connecteur pour :

  • Traitez les fichiers ingérés avec Document AI.

  • Effectuer des performances personnalisées sur les fichiers ingérés.

Définir le connecteur

En tant qu’ingénieur des données, effectuez les tâches suivantes pour installer et configurer le connecteur :

Installer le connecteur
  1. Naviguez jusqu’à la page d’aperçu d’Openflow. Dans la section Featured connectors, sélectionnez View more connectors.

  2. Sur la page des connecteurs Openflow, trouvez le connecteur et sélectionnez Add to runtime.

  3. Dans la boîte de dialogue Select runtime, sélectionnez votre environnement d’exécution dans la liste déroulante Available runtimes.

  4. Sélectionnez Add.

    Note

    Avant d’installer le connecteur, assurez-vous que vous avez créé une base de données et un schéma dans Snowflake pour que le connecteur puisse stocker les données ingérées.

  5. Authentifiez-vous au déploiement avec les identifiants de votre compte Snowflake et sélectionnez Allow lorsque vous êtes invité à autoriser l’application d’exécution à accéder à votre compte Snowflake. Le processus d’installation du connecteur prend quelques minutes.

  6. Authentifiez-vous auprès de l’environnement d’exécution avec les identifiants de votre compte Snowflake.

Le canevas Openflow apparaît avec le groupe de processus du connecteur ajouté.

Configuration du connecteur
  1. Cliquez avec le bouton droit de la souris sur le groupe de processus importé et sélectionnez Parameters.

  2. Saisissez les valeurs des paramètres requis comme décrit dans Paramètres d’ingestion Box, Paramètres de destination Box et Paramètres source Box.

Paramètres source Box

Paramètre

Description

Configuration JSON de l’application Box

Une configuration JSON de l’application qui a été téléchargée lors de la création de l’application.

Fichier de configuration de l’application Box

Un fichier JSON de l’application qui a été téléchargé lors de la création de l’app. Le paramètre Fichier de configuration de l’application Box ou JSON de configuration de l’application Box doit être configuré. Cochez la case Reference asset pour télécharger le fichier de configuration.

Paramètres de destination Box

Paramètre

Description

Base de données de destination

La base de données dans laquelle les données seront conservées. Doit déjà exister dans Snowflake.

Schéma de destination

Le schéma dans lequel les données seront conservées. Doit déjà exister dans Snowflake.

Identificateur de compte Snowflake

Nom du compte Snowflake formaté comme suit : [[nom de l’organisation] -[[nom du compte] où les données seront conservées

Stratégie d’authentification Snowflake

Stratégie d’authentification auprès de Snowflake. Valeurs possibles : SNOWFLAKE_SESSION_TOKEN, lorsque vous exécutez le flux sur SPCS et KEY_PAIR lorsque vous souhaitez établir l’accès à l’aide d’une clé privée.

Clé privée de Snowflake

La clé privée RSA utilisée pour l’authentification. La clé RSA doit être formatée selon les normes PKCS8 et comporter les en-têtes et pieds de page standard PEM. Notez que vous devez définir soit le fichier de clé privée de Snowflake, soit la clé privée de Snowflake.

Fichier de clé privée de Snowflake

Le fichier qui contient la clé privée RSA utilisée pour l’authentification à Snowflake, formaté selon les normes PKCS8 et comportant les en-têtes et pieds de page standard PEM. La ligne d’en-tête commence par -----BEGIN PRIVATE. Cochez la case Reference asset pour télécharger le fichier de la clé privée.

Mot de passe de la clé privée de Snowflake

Le mot de passe associé au fichier de la clé privée de Snowflake

Rôle Snowflake

Rôle Snowflake utilisé lors de l’exécution de la requête

Nom d’utilisateur Snowflake

Nom d’utilisateur utilisé pour se connecter à l’instance de Snowflake

Entrepôt Snowflake

L’entrepôt de Snowflake est utilisé pour exécuter des requêtes

Paramètres d’ingestion Box

Paramètre

Description

ID de dossier Box

ID du dossier à partir duquel les fichiers doivent être lus. Le paramètre 0 permet de synchroniser tous les dossiers auxquels l’application Box a accès. Il peut être récupéré à partir de l’URL, par exemple https://app.box.com/folder/FOLDER_ID.

Extensions de fichiers à ingérer

Une liste séparée par des virgules qui spécifie les extensions de fichiers à ingérer. Le connecteur essaie d’abord de convertir les fichiers au format PDF, si possible. Néanmoins, la vérification de l’extension est effectuée sur l’extension du fichier d’origine. Si certaines des extensions de fichiers spécifiées ne sont pas prises en charge par Cortex Parse Document, le connecteur ignore ces fichiers, connecte un message d’avertissement dans un journal d’événements et poursuit le traitement des autres fichiers.

Nom de la table de hachage du fichier Snowflake

Nom de la table dans laquelle sont stockés les hachages de fichiers afin de déterminer si le contenu a été modifié. Ce paramètre ne doit généralement pas être modifié.

Exécutez le flux

  1. Cliquez avec le bouton droit de la souris sur l’avion et sélectionnez Enable all Controller Services.

  2. Cliquez avec le bouton droit de la souris sur le groupe de processus importé et sélectionnez Start. Le connecteur démarre l’ingestion des données.

Après avoir démarré le connecteur, il récupère tous les fichiers du dossier spécifié, puis consomme les événements admin_logs_streaming survenus au cours des 14 derniers jours. Cette opération a pour but de capturer des données qui auraient pu être omises au cours du processus d’initialisation. Pendant ce temps, des erreurs not found peuvent se produire, causées par des fichiers qui apparaissent dans les événements mais qui ne sont plus présents.

Ingérez des fichiers et effectuez des performances avec Cortex

Utilisez la définition du connecteur pour :

  • Créez des assistants AI pour les documents publics au sein de l’entreprise Box de votre organisation

  • Permettez à vos assistants AI d’adhérer aux contrôles d’accès spécifiés dans l’entreprise Box de votre organisation

Définir le connecteur

En tant qu’ingénieur des données, effectuez les tâches suivantes pour installer et configurer le connecteur :

Installer le connecteur
  1. Naviguez jusqu’à la page d’aperçu d’Openflow. Dans la section Featured connectors, sélectionnez View more connectors.

  2. Sur la page des connecteurs Openflow, trouvez le connecteur et sélectionnez Add to runtime.

  3. Dans la boîte de dialogue Select runtime, sélectionnez votre environnement d’exécution dans la liste déroulante Available runtimes.

  4. Sélectionnez Add.

    Note

    Avant d’installer le connecteur, assurez-vous que vous avez créé une base de données et un schéma dans Snowflake pour que le connecteur puisse stocker les données ingérées.

  5. Authentifiez-vous au déploiement avec les identifiants de votre compte Snowflake et sélectionnez Allow lorsque vous êtes invité à autoriser l’application d’exécution à accéder à votre compte Snowflake. Le processus d’installation du connecteur prend quelques minutes.

  6. Authentifiez-vous auprès de l’environnement d’exécution avec les identifiants de votre compte Snowflake.

Le canevas Openflow apparaît avec le groupe de processus du connecteur ajouté.

Configuration du connecteur
  1. Cliquez avec le bouton droit de la souris sur le groupe de processus importé et sélectionnez Parameters.

  2. Renseignez les valeurs des paramètres requis comme décrit dans Paramètres d’ingestion Box Cortex Connect, Paramètres de destination Box Cortex Connect et Paramètres source Box Cortex Connect.

Paramètres source Box Cortex Connect

Paramètre

Description

Configuration JSON de l’application Box

Une configuration JSON de l’application qui a été téléchargée lors de la création de l’application.

Fichier de configuration de l’application Box

Un fichier JSON de l’application qui a été téléchargé lors de la création de l’app. Le paramètre Fichier de configuration de l’application Box ou JSON de configuration de l’application Box doit être configuré. Cochez la case Reference asset pour télécharger le fichier de configuration.

Paramètres de destination Box Cortex Connect

Paramètre

Description

Base de données de destination

La base de données dans laquelle les données seront conservées. Doit déjà exister dans Snowflake.

Schéma de destination

Le schéma dans lequel les données seront conservées. Elle doit déjà exister dans Snowflake

Identificateur de compte Snowflake

Nom du compte Snowflake formaté comme suit : [[nom de l’organisation] -[[nom du compte] où les données seront conservées

Stratégie d’authentification Snowflake

Stratégie d’authentification auprès de Snowflake. Valeurs possibles : SNOWFLAKE_SESSION_TOKEN, lorsque vous exécutez le flux sur SPCS et KEY_PAIR lorsque vous souhaitez établir l’accès à l’aide d’une clé privée.

Clé privée de Snowflake

La clé privée RSA utilisée pour l’authentification. La clé RSA doit être formatée selon les normes PKCS8 et comporter les en-têtes et pieds de page standard PEM. Notez que vous devez définir soit le fichier de clé privée de Snowflake, soit la clé privée de Snowflake.

Fichier de clé privée de Snowflake

Le fichier qui contient la clé privée RSA utilisée pour l’authentification à Snowflake, formaté selon les normes PKCS8 et comportant les en-têtes et pieds de page standard PEM. La ligne d’en-tête commence par -----BEGIN PRIVATE. Cochez la case Reference asset pour télécharger le fichier de la clé privée.

Mot de passe de la clé privée de Snowflake

Le mot de passe associé au fichier de la clé privée de Snowflake

Rôle Snowflake

Rôle Snowflake utilisé lors de l’exécution de la requête

Nom d’utilisateur Snowflake

Nom d’utilisateur utilisé pour se connecter à l’instance de Snowflake

Entrepôt Snowflake

L’entrepôt de Snowflake est utilisé pour exécuter des requêtes

Paramètres d’ingestion Box Cortex Connect

Paramètre

Description

ID de dossier Box

ID du dossier à partir duquel les fichiers doivent être lus. Le paramètre 0 permet de synchroniser tous les dossiers auxquels l’application Box a accès. Il peut être récupéré à partir de l’URL, par exemple https://app.box.com/folder/FOLDER_ID.

Extensions de fichiers à ingérer

Une liste séparée par des virgules qui spécifie les extensions de fichiers à ingérer. Le connecteur essaie d’abord de convertir les fichiers au format PDF, si possible. Néanmoins, la vérification de l’extension est effectuée sur l’extension du fichier d’origine. Si certaines des extensions de fichiers spécifiées ne sont pas prises en charge par Cortex Parse Document, le connecteur ignore ces fichiers, connecte un message d’avertissement dans un journal d’événements et poursuit le traitement des autres fichiers.

Nom de la table de hachage du fichier Snowflake

Nom de la table dans laquelle sont stockés les hachages de fichiers afin de déterminer si le contenu a été modifié. Ce paramètre ne doit généralement pas être modifié.

Mode OCR

Le mode OCR à utiliser lors de l’analyse des fichiers avec la fonction Cortex PARSE_DOCUMENT. La valeur peut être OCR ou LAYOUT.

Rôle de l’utilisateur Snowflake Cortex Search Service

Identificateur d’un rôle auquel sont attribuées des autorisations d’utilisation du service Cortex Search.

Nom de la table de hachage du fichier Snowflake

Nom de la table dans laquelle sont stockés les hachages de fichiers afin de déterminer si le contenu a été modifié. Ce paramètre ne doit généralement pas être modifié.

Exécutez le flux

  1. Cliquez avec le bouton droit de la souris sur l’avion et sélectionnez Enable all Controller Services.

  2. Cliquez avec le bouton droit de la souris sur le groupe de processus importé et sélectionnez Start. Le connecteur démarre l’ingestion des données.

Après avoir démarré le connecteur, il récupère tous les fichiers du dossier spécifié, puis consomme les événements admin_logs_streaming survenus au cours des 14 derniers jours. Cette opération a pour but de capturer toutes les données qui ont pu être omises au cours du processus d’initialisation. Pendant ce temps, des erreurs not found peuvent se produire, causées par les fichiers qui apparaissent dans les événements mais qui ne sont plus présents.

Requête auprès du service Cortex Search Service

Vous pouvez utiliser le service Cortex Search Service pour créer des applications de chat et de recherche permettant de dialoguer avec vos documents dans Box ou d’y effectuer des requêtes.

Une fois que vous avez installé et configuré le connecteur et qu’il commence à ingérer le contenu de Box, vous pouvez lancer une requête auprès du service Cortex Search. Pour plus d’informations sur l’utilisation de Cortex Search, voir Requête à un service de Cortex Search.

Réponses des filtres

Pour limiter les réponses du service Cortex Search aux documents auxquels un utilisateur spécifique a accès dans Box, vous pouvez spécifier un filtre contenant l’ID ou l’e-mail de l’utilisateur lorsque vous effectuez une requête auprès de Cortex Search. Par exemple, filter.@contains.user_ids ou filter.@contains.user_emails. Le nom du service Cortex Search créé par le connecteur est search_service dans le schéma Cortex.

Exécutez le code SQL suivant dans une feuille de calcul SQL pour interroger le service Cortex Search avec des fichiers ingérés depuis votre site Box.

Remplacez les éléments suivants :

  • application_instance_name: Nom de votre base de données et de votre instance d’application connecteur.

  • user_emailID: ID d’email de l’utilisateur pour lequel vous souhaitez filtrer les réponses.

  • your_question: La question pour laquelle vous souhaitez obtenir des réponses.

  • number_of_results: Nombre maximal de résultats à renvoyer dans la réponse. La valeur maximale est de 1 000 et la valeur par défaut est de 10.

SELECT PARSE_JSON(
  SNOWFLAKE.CORTEX.SEARCH_PREVIEW(
    '<application_instance_name>.cortex.search_service',
      '{
        "query": "<your_question>",
         "columns": ["chunk", "web_url"],
         "filter": {"@contains": {"user_emails": "<user_emailID>"} },
         "limit": <number_of_results>
       }'
   )
)['results'] AS results
Copy

Voici la liste complète des valeurs que vous pouvez saisir pour columns:

Nom de la colonne

Type

Description

full_name

Chaîne

Un chemin complet vers le fichier à partir de la racine des documents du site Box. Exemple : folder_1/folder_2/file_name.pdf.

web_url

Chaîne

Une URL qui affiche un fichier Box original dans un navigateur.

last_modified_date_time

Chaîne

Date et heure de la dernière modification de l’élément.

chunk

Chaîne

Un morceau de texte du document qui correspond à la requête de Cortex Search.

user_ids

Tableau

Un tableau des IDs des utilisateurs qui ont accès à la documentation.

user_emails

Tableau

Un tableau des e-mails des IDs des utilisateurs qui ont accès au document. Il inclut également les IDs de courriels utilisateurs de tous les groupes Microsoft 365 qui sont affectés au document.

Exemple : Requête auprès d’un assistant AI pour obtenir des informations sur les ressources humaines (HR)

Vous pouvez utiliser Cortex Search pour interroger un assistant AI à l’intention des employés afin d’obtenir les dernières versions des informations HR, telles que l’onboarding, le code de conduite, les processus d’équipe et les politiques de l’organisation. À l’aide de filtres de réponse, vous pouvez également autoriser les membres de l’équipe HR à effectuer des requêtes sur les contrats des employés tout en respectant les contrôles d’accès configurés dans Box.

Exécutez la procédure suivante dans une feuille calcul SQL pour interroger le service Cortex Search avec des fichiers ingérés à partir de Box. Sélectionnez la base de données comme nom d’instance de votre application et le schéma comme Cortex.

Remplacez les éléments suivants :

  • application_instance_name: Nom de votre base de données et de votre instance d’application connecteur.

  • user_emailID: ID d’email de l’utilisateur pour lequel vous souhaitez filtrer les réponses.

SELECT PARSE_JSON(
     SNOWFLAKE.CORTEX.SEARCH_PREVIEW(
          '<application_instance_name>.cortex.search_service',
          '{
             "query": "What is my vacation carryover policy?",
             "columns": ["chunk", "web_url"],
             "filter": {"@contains": {"user_emails": "<user_emailID>"} },
             "limit": 1
          }'
     )
 )['results'] AS results
Copy

Extrayez les métadonnées Box à l’aide de Box AI et ingérez-les dans une table Snowflake

Utilisez la définition du connecteur pour :

  • Extrayez les métadonnées de vos fichiers Box et ingérez-les dans une table Snowflake

  • Effectuez des opérations sur les métadonnées de vos fichiers stockés dans Box

Créez une table Snowflake pour stocker les métadonnées Box

  1. Assurez-vous que Box AI est activé pour l’extraction des métadonnées. Pour plus d’informations, voir Configuration de Box AI.

  2. Créez une table Snowflake dans laquelle les métadonnées seront envoyées

    Pour que le connecteur sache quel type de métadonnées extraire, vous devez créer une table Snowflake dans votre base de données et votre schéma avec les noms des colonnes des champs que vous souhaitez extraire. Ajoutez des descriptions à chaque colonne afin d’améliorer les performances du modèle utilisé pour extraire les métadonnées des fichiers.

  3. Dans la table créée à l’étape précédente, assurez-vous qu’il existe une colonne pour stocker le fichier Box ID et qu’elle est de type VARCHAR.

    Le nom de cette colonne doit être saisi en tant que paramètre de la colonne d’identification du fichier Box dans les étapes suivantes. La liste des types de colonnes pris en charge pour la table des métadonnées est la suivante : VARCHAR, STRING, TEXT, FLOAT, DOUBLE et DATE.

Voici un exemple de table que vous pouvez créer pour ce connecteur :

CREATE OR REPLACE TABLE OPENFLOW.BOX_METADATA_SCHEMA.LOAN_AGREEMENT_METADATA (
  BOX_FILE_ID               VARCHAR    COMMENT 'Box file identifier column',
  LOAN_ID                   STRING     COMMENT 'Unique loan agreement identifier (e.g. L-2025-0001)',
  BORROWER_NAME             STRING     COMMENT 'Name of the borrower entity or individual',
  LENDER_NAME               STRING     COMMENT 'Name of the lending institution',
  LOAN_AMOUNT               DOUBLE     COMMENT 'Principal amount of the loan (in USD)',
  INTEREST_RATE             FLOAT      COMMENT 'Annual interest rate (%)',
  EFFECTIVE_DATE            DATE       COMMENT 'Date on which the loan becomes effective',
  MATURITY_DATE             DATE       COMMENT 'Scheduled loan maturity date',
  LOAN_TERM_MONTHS          FLOAT      COMMENT 'Original term length in months',
  COLLATERAL_DESCRIPTION    TEXT       COMMENT 'Description of collateral securing the loan',
  CREDIT_SCORE              FLOAT      COMMENT 'Borrower credit score',
  JURISDICTION              STRING     COMMENT 'Governing law jurisdiction (e.g. NY, CA)'
);
Copy

Définir le connecteur

En tant qu’ingénieur des données, effectuez les tâches suivantes pour installer et configurer le connecteur :

Installer le connecteur
  1. Naviguez jusqu’à la page d’aperçu d’Openflow. Dans la section Featured connectors, sélectionnez View more connectors.

  2. Sur la page des connecteurs Openflow, trouvez le connecteur et sélectionnez Add to runtime.

  3. Dans la boîte de dialogue Select runtime, sélectionnez votre environnement d’exécution dans la liste déroulante Available runtimes.

  4. Sélectionnez Add.

    Note

    Avant d’installer le connecteur, assurez-vous que vous avez créé une base de données et un schéma dans Snowflake pour que le connecteur puisse stocker les données ingérées.

  5. Authentifiez-vous au déploiement avec les identifiants de votre compte Snowflake et sélectionnez Allow lorsque vous êtes invité à autoriser l’application d’exécution à accéder à votre compte Snowflake. Le processus d’installation du connecteur prend quelques minutes.

  6. Authentifiez-vous auprès de l’environnement d’exécution avec les identifiants de votre compte Snowflake.

Le canevas Openflow apparaît avec le groupe de processus du connecteur ajouté.

Configuration du connecteur
  1. Cliquez avec le bouton droit de la souris sur le groupe de processus importé et sélectionnez Parameters.

  2. Renseignez les valeurs des paramètres requis comme décrit dans Paramètres source des métadonnées d’ingestion Box, Paramètres de destination des métadonnées d’ingestion Box et Paramètres d’ingestion des métadonnées d’ingestion Box.

Paramètres de la source de métadonnées d’ingestion Box

Paramètre

Description

Configuration JSON de l’application Box

Une configuration JSON de l’application qui a été téléchargée lors de la création de l’application.

Fichier de configuration de l’application Box

Un fichier JSON de l’application qui a été téléchargé lors de la création de l’app. Le paramètre Fichier de configuration de l’application Box ou JSON de configuration de l’application Box doit être configuré. Cochez la case Reference asset pour télécharger le fichier de configuration.

Paramètres de destination des métadonnées d’ingestion Box

Paramètre

Description

Base de données de destination

La base de données dans laquelle les données seront conservées. Elle doit déjà exister dans Snowflake

Schéma de destination

Le schéma dans lequel les données seront conservées. Elle doit déjà exister dans Snowflake

Identificateur de compte Snowflake

Nom du compte Snowflake formaté comme suit : [[nom de l’organisation] -[[nom du compte] où les données seront conservées

Stratégie d’authentification Snowflake

Stratégie d’authentification auprès de Snowflake. Valeurs possibles : SNOWFLAKE_SESSION_TOKEN - lorsque nous exécutons le flux sur SPCS, KEY_PAIR lorsque nous voulons configurer l’accès à l’aide d’une clé privée

Clé privée de Snowflake

La clé privée RSA utilisée pour l’authentification. La clé RSA doit être formatée selon les normes PKCS8 et comporter les en-têtes et pieds de page standard PEM. Notez que vous devez définir soit le fichier de clé privée de Snowflake, soit la clé privée de Snowflake

Fichier de clé privée de Snowflake

Le fichier qui contient la clé privée RSA utilisée pour l’authentification à Snowflake, formaté selon les normes PKCS8 et comportant les en-têtes et pieds de page standard PEM. La ligne d’en-tête commence par -----BEGIN PRIVATE. Cochez la case Reference asset pour télécharger le fichier de la clé privée.

Mot de passe de la clé privée de Snowflake

Le mot de passe associé au fichier de la clé privée de Snowflake

Rôle Snowflake

Rôle Snowflake utilisé lors de l’exécution de la requête

Nom d’utilisateur Snowflake

Nom d’utilisateur utilisé pour se connecter à l’instance de Snowflake

Entrepôt Snowflake

L’entrepôt de Snowflake est utilisé pour exécuter des requêtes

Paramètres d’ingestion des métadonnées d’ingestion Box

Paramètre

Description

ID de dossier Box

ID du dossier à partir duquel les fichiers doivent être lus. Le paramètre 0 permet de synchroniser tous les dossiers auxquels l’application Box a accès. L’ID peut être récupéré à partir de l’URL, par exemple https://app.box.com/folder/FOLDER_ID.

Colonne de l’identificateur du fichier Box

La colonne de la table des métadonnées qui stockera l’ID de fichier Box pour associer les métadonnées données à un fichier. Cette colonne doit être de type VARCHAR et faire partie de la table créée dans Créez une table Snowflake pour stocker les métadonnées Box.

Table des métadonnées de destination

La table Snowflake que vous avez créée à l’adresse Créez une table Snowflake pour stocker les métadonnées Box, qui comporte les colonnes des métadonnées que vous souhaitez collecter.

Exécutez le flux

  1. Cliquez avec le bouton droit de la souris sur l’avion et sélectionnez Enable all Controller Services.

  2. Cliquez avec le bouton droit de la souris sur le groupe de processus importé et sélectionnez Start. Le connecteur démarre l’ingestion des données.

Après avoir démarré le connecteur, il récupère tous les fichiers du dossier spécifié, puis consomme admin_logs_streaming événements des 14 derniers jours. Cette opération a pour but de capturer toutes les données qui ont pu être omises au cours du processus d’initialisation. Pendant ce temps, des erreurs not found peuvent se produire, causées par les fichiers qui apparaissent dans les événements mais qui ne sont plus présents.

Synchronisez les instances de métadonnées des fichiers Box avec une table Snowflake

Utilisez la définition du connecteur pour effectuer une transformation de données sur les métadonnées Box dans une table de connecteur Snowflake et ajoutez les modifications à une instance de métadonnées Box.

Créez un flux Snowflake pour stocker les métadonnées Box

  1. Créez un flux Snowflake pour la table de métadonnées que vous souhaitez utiliser. Le flux est utilisé pour surveiller les modifications apportées à la table avec laquelle vous souhaitez synchroniser vos fichiers Box. Pour savoir comment créer une table pour le stockage des métadonnées Box, voir Créer une table Snowflake pour le stockage des métadonnées Box. Si le connecteur est arrêté au-delà de la durée de conservation des données et que le flux devient périmé, vous devez recréer un flux et remplacer le précédent. Pour en savoir plus sur la gestion des flux, consultez le site Gestion des flux.

    Voici un exemple de flux que vous pouvez créer pour ce connecteur :

    CREATE OR REPLACE STREAM OPENFLOW.BOX_METADATA_SCHEMA.LOAN_AGREEMENT_METADATA_STREAM
    ON TABLE OPENFLOW.BOX_METADATA_SCHEMA.LOAN_AGREEMENT_METADATA
    
    Copy
  2. Dans la table des métadonnées, veillez à ce qu’une colonne stocke l’ID de fichier Box et qu’elle soit de type VARCHAR.

    Le nom de cette colonne doit être saisi en tant que paramètre de la colonne d’identification du fichier Box dans les étapes suivantes. La liste des types de colonnes pris en charge pour la table des métadonnées est la suivante : VARCHAR, STRING, TEXT, FLOAT, DOUBLE et DATE.

Définir le connecteur

En tant qu’ingénieur des données, effectuez les tâches suivantes pour installer et configurer le connecteur :

Installer le connecteur
  1. Naviguez jusqu’à la page d’aperçu d’Openflow. Dans la section Featured connectors, sélectionnez View more connectors.

  2. Sur la page des connecteurs Openflow, trouvez le connecteur et sélectionnez Add to runtime.

  3. Dans la boîte de dialogue Select runtime, sélectionnez votre environnement d’exécution dans la liste déroulante Available runtimes.

  4. Sélectionnez Add.

    Note

    Avant d’installer le connecteur, assurez-vous que vous avez créé une base de données et un schéma dans Snowflake pour que le connecteur puisse stocker les données ingérées.

  5. Authentifiez-vous au déploiement avec les identifiants de votre compte Snowflake et sélectionnez Allow lorsque vous êtes invité à autoriser l’application d’exécution à accéder à votre compte Snowflake. Le processus d’installation du connecteur prend quelques minutes.

  6. Authentifiez-vous auprès de l’environnement d’exécution avec les identifiants de votre compte Snowflake.

Le canevas Openflow apparaît avec le groupe de processus du connecteur ajouté.

Configuration du connecteur
  1. Cliquez avec le bouton droit de la souris sur le groupe de processus importé et sélectionnez Parameters.

  2. Renseignez les valeurs des paramètres requis comme décrit dans Paramètres de la source de métadonnées de publication Box, Paramètres de destination des métadonnées de publication Box et Paramètres d’ingestion des métadonnées de publication Box.

Paramètres de la source de métadonnées de publication Box

Paramètre

Description

Base de données source

Base de données Snowflake qui contient le schéma contenant le flux Snowflake qui ingère les modifications

Schéma de la source

Schéma qui contient le flux Snowflake qui ingère les modifications

Identificateur de compte Snowflake

Nom du compte Snowflake formaté comme suit : [[nom de l’organisation] -[[nom du compte] où les données seront conservées

Stratégie d’authentification Snowflake

Stratégie d’authentification auprès de Snowflake. Valeurs possibles : SNOWFLAKE_SESSION_TOKEN - lorsque nous exécutons le flux sur SPCS, KEY_PAIR lorsque nous voulons configurer l’accès à l’aide d’une clé privée

Clé privée de Snowflake

La clé privée RSA utilisée pour l’authentification. La clé RSA doit être formatée selon les normes PKCS8 et comporter les en-têtes et pieds de page standard PEM. Notez que vous devez définir soit le fichier de clé privée de Snowflake, soit la clé privée de Snowflake

Fichier de clé privée de Snowflake

Le fichier qui contient la clé privée RSA utilisée pour l’authentification à Snowflake, formaté selon les normes PKCS8 et comportant les en-têtes et pieds de page standard PEM. La ligne d’en-tête commence par -----BEGIN PRIVATE. Cochez la case Reference asset pour télécharger le fichier de la clé privée.

Mot de passe de la clé privée de Snowflake

Le mot de passe associé au fichier de la clé privée de Snowflake

Rôle Snowflake

Rôle Snowflake utilisé lors de l’exécution de la requête

Nom d’utilisateur Snowflake

Nom d’utilisateur utilisé pour se connecter à l’instance de Snowflake

Entrepôt Snowflake

L’entrepôt de Snowflake est utilisé pour exécuter des requêtes

Nom du flux Snowflake

Nom du flux Snowflake utilisé pour l’ingestion des modifications de la table Snowflake source. Vous devez le créer avant de lancer le connecteur et le lien vers la table.

Paramètres de destination des métadonnées de publication Box

Paramètre

Description

Configuration JSON de l’application Box

Une configuration JSON de l’application qui a été téléchargée lors de la création de l’application.

Fichier de configuration de l’application Box

Un fichier JSON de l’application qui a été téléchargé lors de la création de l’app. Le paramètre Fichier de configuration de l’application Box ou JSON de configuration de l’application Box doit être configuré. Cochez la case Reference asset pour télécharger le fichier de configuration.

Paramètres d’ingestion des métadonnées de publication Box

Paramètre

Description

Colonne de l’identificateur du fichier Box

La colonne de la table des métadonnées qui stockera l’ID de fichier Box pour associer les métadonnées données à un fichier. Cette colonne doit être de type VARCHAR et faire partie de la table créée dans Créez une table Snowflake pour stocker les métadonnées Box.

Nom du modèle de métadonnées Box

Nom du modèle de métadonnées Box qui sera ajouté aux fichiers Box. Vous n’avez pas besoin de créer manuellement un modèle avant de lancer le connecteur. Si vous saisissez une valeur dans ce paramètre, un modèle est automatiquement créé avec ce nom de modèle. Le nom fourni ne doit pas faire double emploi avec un modèle que vous avez déjà créé dans votre environnement Box.

Clé du modèle de métadonnées Box

La clé du modèle de métadonnée Box qui sera ajoutée aux fichiers Box. Il s’agit de la clé qui sera utilisée pour référencer le modèle dans l’API Box. Vous n’avez pas besoin de créer manuellement un modèle avant de lancer le connecteur. Si vous saisissez une valeur dans ce paramètre, un modèle est automatiquement créé avec cette clé de modèle. La clé fournie ne doit pas faire double emploi avec un modèle que vous avez déjà créé dans votre environnement Box.

Exécutez le flux

  1. Cliquez avec le bouton droit de la souris sur l’avion et sélectionnez Enable all Controller Services.

  2. Cliquez avec le bouton droit de la souris sur le groupe de processus importé et sélectionnez Start. Le connecteur démarre l’ingestion des données.

Après avoir exécuté le flux, vous pouvez interroger le service Cortex Search. Pour obtenir des informations sur la manière d’interroger le service Cortex Search, consultez Requête auprès du service Cortex Search.