Partager via


Créer l’URI de connexion Oracle Database

L’URI de connexion de l’adaptateur Microsoft BizTalk pour Oracle Database contient des propriétés que l’adaptateur utilise pour établir une connexion à la base de données Oracle. Cette rubrique fournit des informations sur la façon de spécifier l’URI de connexion pour se connecter à la base de données Oracle à l’aide de tnsnames.ora et sans utiliser tnsnames.ora. Il fournit également des informations sur l’utilisation de l’URI de connexion pour se connecter à la base de données Oracle.

URI de connexion pour se connecter à la base de données Oracle à l’aide de tnsnames.ora

Important

  • Pour cette approche, vous devez ajouter l’entrée de nom de service net dans le fichier tnsnames.ora sur l’ordinateur sur lequel le client de l’adaptateur est installé. Pour plus d’informations sur l’entrée de nom de service net, consultez Configurer le client Oracle pour l’adaptateur Oracle Database.
  • En raison d’une limitation du client Oracle, le paramètre DataSourceName (nom du service net) dans l’URI de connexion ne peut pas contenir plus de 39 caractères si vous effectuez des opérations dans une transaction. Par conséquent, assurez-vous que la valeur spécifiée pour le paramètre DataSourceName est inférieure ou égale à 39 caractères si vous effectuez des opérations dans une transaction.

Un URI d’adresse de point de terminaison classique dans WCF est représenté comme suit : scheme://userauthparams@hostinfoparams?query_string, où :

  • scheme est le nom du schéma.
  • userauthparams est une collection nom-valeur des paramètres requis pour l’authentification utilisateur par le point de terminaison.
  • hostinfoparams est les informations nécessaires pour établir la connexion à l’hôte ; par exemple, un chemin d’accès.
  • query_string est une collection nom-valeur facultative de paramètres délimités par un point d’interrogation ( ?).

L’URI de connexion de l’adaptateur Oracle Database respecte ce format de base et est implémenté comme suit :

oracledb://[NET_SERVICE_NAME]?PollingId=[POLLING_ID]  

Ou, dans des scénarios plus avancés :

oracledb://User=[USER_NAME];Password=[PASSWORD]@[NET_SERVICE_NAME]?PollingId=[POLLING_ID]  

Le tableau suivant décrit les propriétés contenues dans l’URI de connexion :

Propriété URI de connexion Category Description
[USER_NAME] userauthparams Nom d’utilisateur à utiliser pour l’authentification sur la base de données Oracle, tel que SCOTT. Vous devez définir la propriété de liaison AcceptCredentialsInUri sur true pour spécifier le nom d’utilisateur et le mot de passe dans l’URI de connexion. La propriété de liaison AcceptCredentialsInUri n’est pas disponible dans l’onglet Liaison BizTalk Server.

Note L’adaptateur Oracle Database conserve la casse de la valeur que vous entrez pour le nom d’utilisateur lorsqu’il ouvre une connexion sur la base de données Oracle. Les noms d’utilisateur sur la base de données Oracle respectent la casse. Vous devez vous assurer de fournir des noms d’utilisateur Oracle à l’adaptateur Oracle Database dans le cas attendu par votre base de données Oracle. En règle générale, cela signifie que le nom d’utilisateur dans les informations d’identification SCOTT/TIGER doit être en majuscules : « SCOTT ».
[MOT DE PASSE] userauthparams Mot de passe à utiliser pour l’authentification sur la base de données Oracle, tel que TIGER. Vous devez définir la propriété de liaison AcceptCredentialsInUri sur true pour spécifier le nom d’utilisateur et le mot de passe dans l’URI de connexion. La propriété de liaison AcceptCredentialsInUri n’est pas disponible dans l’onglet Liaison BizTalk Server.

Note L’adaptateur Oracle Database conserve la casse de la valeur que vous entrez pour le mot de passe lorsqu’il ouvre une connexion sur la base de données Oracle. Pour la version 10g et les versions antérieures, les mots de passe sur le système Oracle ne respectent pas la casse.
[NET_SERVICE_NAME] hostinfoparams Nom de service net spécifié dans le fichier tnsnames.ora sur l’ordinateur sur lequel l’adaptateur Oracle Database est installé. Pour plus d’informations sur les noms de service net et tnsnames.ora, consultez Configurer le client Oracle pour l’adaptateur Oracle Database.
[POLLING_ID] query_string Chaîne facultative qui doit être ajoutée par l’adaptateur à l’espace de noms standard de l’opération POLLINGSTMT. Cela vous permet de spécifier un espace de noms unique pour chaque opération d’interrogation lorsqu’un projet contient plusieurs opérations d’interrogation. Vous n’avez pas besoin de spécifier une chaîne PollingId si votre projet contient une seule opération POLLINGSTMT.

Notes

Les paramètres de requête sont également utilisés dans l’URI de connexion lorsqu’une adresse de point de terminaison est spécifiée pour un client Wcf Metadata Exchange.

URI de connexion pour se connecter à la base de données Oracle sans utiliser tnsnames.ora

Important

  • Pour cette approche, le nom du service net dans le fichier tnsnames.ora ou le fichier tnsnames.ora lui-même n’a pas besoin d’être présent sur l’ordinateur client.
  • Ce mode de connectivité n’est pas pris en charge si vous effectuez des opérations dans une transaction. Cela est dû à une limitation du client Oracle.

Un URI d’adresse de point de terminaison classique dans WCF est représenté comme suit : scheme://userauthparams@hostinfoparams?query_string, où :

  • scheme est le nom du schéma.
  • userauthparams est une collection nom-valeur des paramètres requis pour l’authentification utilisateur par le point de terminaison.
  • hostinfoparams est les informations nécessaires pour établir la connexion à l’hôte ; par exemple, nom du serveur, numéro de port, etc.
  • query_string est une collection nom-valeur facultative de paramètres délimités par un point d’interrogation ( ?).

L’URI de connexion de l’adaptateur Oracle Database respecte ce format de base et est implémenté comme suit :

oracledb://[SERVER_ADDRESS]:[PORT_NUMBER]/[SERVICE_NAME]/[SERVICE_TYPE]?PollingId=[POLLING_ID]  

Ou, dans des scénarios plus avancés :

oracledb://User=[USER_NAME];Password=[PASSWORD]@[SERVER_ADDRESS]:[PORT_NUMBER]/[SERVICE_NAME]/[SERVICE_TYPE]?PollingId=[POLLING_ID]  

Le tableau suivant décrit les propriétés contenues dans l’URI de connexion :

Propriété URI de connexion Category Description
[USER_NAME] userauthparams Nom d’utilisateur à utiliser pour l’authentification sur la base de données Oracle ; par exemple, SCOTT. Vous devez définir la propriété de liaison AcceptCredentialsInUri sur true pour spécifier le nom d’utilisateur et le mot de passe dans l’URI de connexion. La propriété de liaison AcceptCredentialsInUri n’est pas disponible dans l’onglet Liaison BizTalk Server.

Note L’adaptateur Oracle Database conserve la casse de la valeur que vous entrez pour le nom d’utilisateur lorsqu’il ouvre une connexion sur la base de données Oracle. Les noms d’utilisateur sur la base de données Oracle respectent la casse. Vous devez vous assurer de fournir des noms d’utilisateur Oracle à l’adaptateur Oracle Database dans le cas attendu par votre base de données Oracle. En règle générale, cela signifie que le nom d’utilisateur dans les informations d’identification SCOTT/TIGER doit être en majuscules : « SCOTT ».
[MOT DE PASSE] userauthparams Mot de passe à utiliser pour l’authentification sur la base de données Oracle ; par exemple, TIGER. Vous devez définir la propriété de liaison AcceptCredentialsInUri sur true pour spécifier le nom d’utilisateur et le mot de passe dans l’URI de connexion. La propriété de liaison AcceptCredentialsInUri n’est pas disponible dans l’onglet Liaison BizTalk Server.

Note L’adaptateur Oracle Database conserve la casse de la valeur que vous entrez pour le mot de passe lorsqu’il ouvre une connexion sur la base de données Oracle. Pour la version 10g et les versions antérieures, les mots de passe sur le système Oracle ne respectent pas la casse.
[SERVER_ADDRESS] hostinfoparams Nom ou adresse IP du serveur sur lequel la base de données Oracle s’exécute. Cela est obligatoire si vous utilisez ce type de connectivité.
[PORT_NUMBER] hostinfoparams Port d’écouteur Oracle Net. Si aucune valeur n’est spécifiée, l’adaptateur prend la valeur par défaut 1521.
[SERVICE_NAME] hostinfoparams Nom du service de base de données Oracle. Cela est obligatoire si vous utilisez ce type de connectivité.
[SERVICE_TYPE] hostinfoparams Type de service Oracle. Les valeurs possibles sont Dedicated ou Shared. Un service dédié utilise un processus de serveur dédié pour servir un seul processus utilisateur. Un service partagé utilise un processus de serveur partagé qui peut servir plusieurs processus utilisateur. La valeur par défaut est Dédié.
[POLLING_ID] query_string Chaîne facultative qui doit être ajoutée par l’adaptateur à l’espace de noms standard de l’opération POLLINGSTMT. Cela vous permet de spécifier un espace de noms unique pour chaque opération d’interrogation lorsqu’un projet contient plusieurs opérations d’interrogation. Vous n’avez pas besoin de spécifier une chaîne PollingId si votre projet contient une seule opération POLLINGSTMT.

Notes

Les paramètres de requête sont également utilisés dans l’URI de connexion lorsqu’une adresse de point de terminaison est spécifiée pour un client Wcf Metadata Exchange.

Informations d’identification Oracle Database et URI de connexion

Par défaut, l’adaptateur Oracle Database lève une exception lorsque les informations d’identification de la base de données Oracle sont spécifiées dans l’URI de connexion. En effet, ces informations d’identification sont représentées en texte brut dans l’URI de connexion, ce qui présente un risque de sécurité. Vous pouvez définir la propriété de liaison AcceptCredentialsInUri pour contrôler si l’URI de connexion peut contenir des informations d’identification pour la base de données Oracle. Si la propriété AcceptCredentialsInUri a la valeur false, l’adaptateur Oracle Database lève une exception si l’URI de connexion contient des informations d’identification de base de données Oracle ; si la propriété a la valeur true, aucune exception n’est levée.

Il existe quelques scénarios limités dans lesquels il est nécessaire de spécifier des informations d’identification dans l’URI de connexion. Par exemple, pour recevoir l’opération POLLINGSTMT entrante lorsque vous utilisez le modèle de service WCF ou le modèle de canal WCF. Toutefois, dans la plupart des cas, vous devez éviter de fournir des informations d’identification dans l’URI de connexion. Pour plus d’informations sur la façon de fournir des informations d’identification plus sécurisées pour la base de données Oracle, consultez Sécuriser vos applications Oracle Database.

Important

En raison des risques de sécurité liés à la transmission d’informations d’identification dans des chaînes en texte brut, vous devez éviter de spécifier les informations d’identification de connexion à la base de données Oracle dans l’URI de connexion.

Utilisation de caractères réservés dans l’URI de connexion

L’adaptateur Oracle Database ne prend pas en charge la spécification d’un URI de connexion comportant des caractères spéciaux pour l’une des valeurs de paramètre. Si les valeurs des paramètres de connexion contiennent des caractères spéciaux, assurez-vous d’effectuer l’une des opérations suivantes :

  • Si vous spécifiez l’URI dans Visual Studio à l’aide du plug-in Add Adapter Service Reference plug-in ou Consume Adapter Service Add-in, vous devez le spécifier tel quel dans l’onglet Propriétés de l’URI , c’est-à-dire sans utiliser de caractères d’échappement. Si vous spécifiez l’URI directement dans le champ Configurer un URI et que les paramètres de connexion contiennent des caractères réservés, vous devez spécifier les paramètres de connexion à l’aide des caractères d’échappement appropriés.

  • Si vous spécifiez l’URI lors de la création d’un port d’envoi ou de réception dans BizTalk Server console d’administration et que les paramètres de connexion contiennent des caractères réservés, vous devez spécifier les paramètres de connexion à l’aide des caractères d’échappement appropriés.

Utilisation de l’URI de connexion pour se connecter à la base de données Oracle

Voici un exemple d’URI de connexion pour l’adaptateur Oracle Database.

Utilisation de tnsnames.ora Sans utiliser tnsnames.ora
oracledb://ADAPTER

Dans cet exemple, ADAPTER est un nom de service net associé au NOM DU SERVICE et aux informations de connexion pour la base de données Oracle cible dans tnsnames.ora.
oracledb://yourOracleServer:1521/yourOracleDatabaseServiceName/Dedicated

Dans cet exemple, le nom du serveur est « yourOracleServer » et le nom du service est « yourOracleDatabaseServiceName ».

Voici un exemple d’URI de connexion pour une opération POLLINGSTMT. Cet URI inclut un paramètre PollingId pour modifier l’espace de noms de l’opération POLLINGSTMT.

Utilisation de tnsnames.ora Sans utiliser tnsnames.ora
oracledb://ADAPTER?PollingId=MyPollingNotification1 oracledb://yourOracleServer:1521/yourOracleDatabaseServiceName/Dedicated? PollingId=MyPollingNotification1

Pour les URI de connexion ci-dessus, l’adaptateur Oracle Database crée l’espace de noms suivant pour l’opération POLLINGSTMT.

http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMTMyPollingNotification1  

Pour plus d’informations sur l’établissement d’une connexion à la base de données Oracle lorsque vous :

Voir aussi

Créer une connexion à Oracle Database
Configurer le client Oracle pour l’adaptateur Oracle Database