Tester l'accessibilité du point d'extrémité Entra ID
Vous devez vous assurer qu'Oracle AI Database peut accéder au point d'extrémité Entra ID.
Si votre client de base de données est configuré pour obtenir des jetons OAuth2 Microsoft Entra ID, le client de base de données doit pouvoir accéder au point d'extrémité Entra ID. Exécutez la commande suivante pour vérifier si vous disposez d'un accès Internet :
curl https://login.windows.net/common/discovery/keysUn code de statut de 200 indique la réussite.
Vérifiez auprès du service d'assistance informatique les informations sur le mandataire si vous n'avez pas réussi à exécuter cette commande.
Pour qu'Oracle AI Database accepte les jetons Entra ID OAuth2, la base de données doit demander la clé publique au point d'extrémité Microsoft Entra ID.
-
Exécutez le test suivant pour déterminer si la base de données peut se connecter au point d'extrémité Microsoft Entra ID :
SET SERVEROUTPUT ON SIZE 40000 DECLARE req UTL_HTTP.REQ; resp UTL_HTTP.RESP; BEGIN UTL_HTTP.SET_WALLET(path => 'system:'); req := UTL_HTTP.BEGIN_REQUEST('https://login.windows.net/common/discovery/keys'); resp := UTL_HTTP.GET_RESPONSE(req); DBMS_OUTPUT.PUT_LINE('HTTP response status code: ' || resp.status_code); UTL_HTTP.END_RESPONSE(resp); END; /Si ce test réussit, un message
PL/SQL procedure successfully completeds'affiche.Si les messages suivants apparaissent, cela signifie qu'une politique de liste de contrôle d'accès au réseau de base de données a bloqué votre test et que vous devrez définir temporairement une politique de liste de contrôle d'accès pour vous permettre de tester ceci :
ORA-29273: HTTP request failed ORA-24247: network access denied by access control list (ACL)-
Définissez la liste de contrôle d'accès comme suit :
BEGIN DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE( host => '*', ace => xs$ace_type(privilege_list => xs$name_list('connect'), principal_name => 'username_placeholder', principal_type => xs_acl.ptype_db)); END; /Remplacez
username_placeholderpar le nom d'utilisateur de l'utilisateur de base de données qui exécute le test. Par exemple :BEGIN DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE( host => '*', ace => xs$ace_type(privilege_list => xs$name_list('connect'), principal_name => 'DBA_DEBRA', principal_type => xs_acl.ptype_db)); END; / -
Réessayez d'exécuter le test.
-
Supprimez la liste de contrôle d'accès, car vous n'en avez plus besoin. Par exemple, si votre nom d'utilisateur est
dba_debra:BEGIN DBMS_NETWORK_ACL_ADMIN.REMOVE_HOST_ACE( host => '*', ace => xs$ace_type(privilege_list => xs$name_list('connect'), principal_name => 'DBA_DEBRA', principal_type => xs_acl.ptype_db)); END; /
-
Si la base de données ne peut pas se connecter au point d'extrémité Microsoft Entra ID, même après avoir défini la politique de liste de contrôle d'accès, vous devrez probablement définir l'ensemble HTTP_PROXY pour votre base de données. Examinez les rubriques répertoriées dans Related Topics, selon que vous utilisez un environnement Oracle AI Database par défaut ou un environnement RAC Oracle Real Application Clusters. L'administrateur de réseau doit être en mesure de vous indiquer le paramètre HTTP_PROXY correct.