Instructions SQL, procédures stockées et code personnalisé

On-premises Connector for Generic Databases propose trois méthodes pour effectuer des opérations sur votre système de base de données local : les instructions SQL, les procédures stockées et le code personnalisé. Vous pouvez configurer ces méthodes pour importer des données sur les utilisateurs et les droits dans Okta, mais aussi gérer les changements d’approvisionnement depuis Okta vers votre base de données.

Instructions SQL

Les instructions SQL sont des commandes uniques utilisées pour effectuer des tâches spécifiques telles que la récupération, la mise à jour ou la suppression de données. Le connecteur peut exécuter ces instructions pour obtenir des données sur les utilisateurs et les droits de votre base de données ou pour envoyer des modifications depuis Okta.

Pour les opérations qui nécessitent des informations spécifiques à l'utilisateur (telles qu’ID d'un utilisateur), On-premises Connector for Generic Databases utilise un espace réservé représenté par un point d'interrogation (?) dans l'instruction SQL. Cet espace réservé est remplacé de façon dynamique par l'attribut utilisateur réel au moment de l'exécution.

Voici quelques exemples d'instructions SQL pour des opérations courantes.

  • Obtenir des utilisateurs : récupère tous les utilisateurs et leurs données depuis une table utilisateur :

    SELECT USER_ID, USERNAME, FIRSTNAME, LASTNAME, EMAIL FROM USERS

  • Créer un utilisateur : insère un nouvel utilisateur dans la table utilisateur.

    INSERT INTO USERS (USERNAME, USER_ID, EMAIL, FIRSTNAME, LASTNAME) VALUES (?,?,?,?,?)

  • Mettre à jour un utilisateur : met à jour les informations d'un utilisateur en fonction de son ID.

    UPDATE USERS SET USERNAME = ?, FIRSTNAME = ? WHERE USER_ID=?

Procédures stockées

Une procédure stockée est un ensemble d'instructions SQL précompilées qui sont enregistrées par leur nom dans votre base de données. Vous pouvez appeler une procédure stockée par son nom au lieu d'écrire de manière répétée des requêtes complexes. Okta On-prem SCIM Server peut appeler ces procédures pour les opérations d'importation et d'approvisionnement.

De la même manière que pour les instructions SQL, vous pouvez utiliser un ? en tant qu'espace réservé pour transmettre les attributs utilisateur ou de droit à la procédure stockée. La procédure peut également être configurée pour renvoyer les données ligne par ligne, ce qui est utile pour les tâches de récupération de données complexes.

Obtenir des utilisateurs : invoque une procédure stockée pour récupérer une liste d'utilisateurs actifs.

GET_ACTIVE_USERS

Code personnalisé

Le code personnalisé vous permet d'utiliser votre propre code Java à l'aide du SDK SCIM fourni par Okta pour effectuer des opérations de base de données qui exigent une logique plus complexe que de simples instructions SQL ou que des procédures stockées. Bien que cette méthode prenne en charge l'ensemble des approvisionnement sortants (par exemple : Créer, Mettre à jour, Activer), elle ne permet pas d'importer des données dans Okta. Par conséquent, vous devez utiliser des instructions SQL ou des procédures stockées pour importer des utilisateurs et des droits.

Pour utiliser du code personnalisé, vous devez d'abord développer votre code Java et le générer dans un fichier JAR. Ensuite, vous devez placer ce fichier JAR sur le serveur où est installé Okta On-prem SCIM Server. L'Admin Console fournit des champs permettant de spécifier le nom de votre fichier JAR, le nom de la classe qui contient votre code, ainsi qu'un hachage SHA256 pour vérifier l'intégrité du fichier.