Conexiones a Oracle Database

Para crear una conexión a ADB con IP pública mediante mTLS

Abra un símbolo del sistema y ejecute oci dbtools connection create-oracle-database para crear una nueva conexión de Database Tools en el compartimento especificado:

oci dbtools connection create-oracle-database -c <target_compartment_ocid> --user-name <database_user> --user-password-secret-id <vault_secret_ocid> --key-stores <keystore_json_array> --connection-string <connection_string> --display-name <connection_name>
Nota

En este ejemplo se asume que los secretos necesarios ya existen en un almacén.

Por ejemplo, especificando todos los detalles necesarios como argumentos:

oci dbtools connection create-oracle-database -c ocid1.compartment.oc1..example1example25qrlpo4agcmothkbgqgmuz2zzum45ibplooqtabwk3zz --user-name "example-user" --user-password-secret-id ocid1.vaultsecret.oc1.phx.example1secrettxiu7mwuabcdefxl67fj5niy4akfzsabcdefzf3423ya --key-stores '[{ "keyStoreContent":{ "secretId": "ocid1.vaultsecret.oc1.phx.example1ssowalletxiu7mwuabcdefxl67fj5niy4akfzsabcdefzf3423ya","valueType": "SECRETID" }, "keyStoreType": "SSO" }]' --connection-string '(description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.us-phoenix-1.oraclecloud.com))(connect_data=(service_name=example_databaseservice_low.adb.oraclecloud.com))(security=(ssl_server_cert_dn="CN=adwc.uscom-east-1.oraclecloud.com, OU=Oracle BMCS US, O=Oracle Corporation, L=Redwood City, ST=California, C=US")))' --display-name example-connection

Para crear una conexión a ADB con IP pública mediante mTLS en un archivo JSON

Abra un símbolo del sistema y ejecute oci dbtools connection create-oracle-database para crear una nueva conexión de Database Tools como se especifica en el archivo JSON:

oci dbtools connection create-oracle-database --from-json "file://<path-to-json>"
Nota

En este ejemplo se asume que los secretos necesarios ya existen en un almacén.

Por ejemplo, especificando todos los detalles necesarios en un archivo JSON:

{
  "compartmentId": "ocid1.compartment.oc1..example1example25qrlpo4agcmothkbgqgmuz2zzum45ibplooqtabwk3zz",
  "connectionString": "(description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.us-phoenix-1.oraclecloud.com))
(connect_data=(service_name=example_databaseservice_low.adb.oraclecloud.com))
(security=(ssl_server_cert_dn=\"CN=adwc.uscom-east-1.oraclecloud.com, OU=Oracle BMCS US, O=Oracle Corporation, L=Redwood City, ST=California, C=US\")))",
  "displayName": "example-connection-from-json",
  "keyStores": [
    {
      "keyStoreContent": {
        "secretId": "ocid1.vaultsecret.oc1.phx.example1ssowalletxiu7mwuabcdefxl67fj5niy4akfzsabcdefzf3423ya",
        "valueType": "SECRETID"
      },
      "keyStoreType": "SSO"
    }
  ],
  "userName": "example-user",
  "userPasswordSecretId": "ocid1.vaultsecret.oc1.phx.example1secrettxiu7mwuabcdefxl67fj5niy4akfzsabcdefzf3423ya"
}
Nota

En este ejemplo, hay un archivo JSON en el directorio de trabajo actual denominado example.json, como se muestra anteriormente.
oci dbtools connection create-oracle-database --from-json "file://example.json"

Para crear una conexión a un sistema de base de datos Oracle VM mediante un punto final privado

Abra un símbolo del sistema y ejecute oci dbtools connection create-oracle-database para crear una nueva conexión de Database Tools en el compartimento especificado:

oci dbtools connection create-oracle-database -c <target_compartment_ocid> --user-name <database_user> --user-password-secret-id <vault_secret_ocid> --connection-string <connection_string> -private-endpoint-id <private_endpoint_ocid> --display-name <connection_name>
Nota

En este ejemplo se asume que los secretos necesarios ya existen en un almacén.

Por ejemplo:

oci dbtools connection create-oracle-database -c ocid1.compartment.oc1..example1example25qrlpo4agcmothkbgqgmuz2zzum45ibplooqtabwk3zz --user-name "example-user" --user-password-secret-id ocid1.vaultsecret.oc1.phx.example1secrettxiu7mwuabcdefxl67fj5niy4akfzsabcdefzf3423ya --connection-string "examplevmdb.privatesubnet.example.oraclevcn.com:1521/example_pdb.privatesubnet.example.oraclevcn.com" --private-endpoint-id ocid1.databasetoolsprivateendpoint.oc1.phx.exampleendpoint25qrlpo4agcmothkbgqgmuz2zzum45ibplooqtabcdefg --display-name example-connection

Para crear una conexión de proxy a Oracle Database con nombre de usuario

Abra un símbolo del sistema y ejecute oci dbtools connection create-oracle-database para crear una nueva conexión de Database Tools en el compartimento especificado:

oci dbtools connection create-oracle-database -c <target_compartment_ocid> 
--user-name <database_user[proxy_client]> --user-password-secret-id <vault_secret_ocid> 
--key-stores <keystore_json_array> --connection-string <connection_string> 
--private-endpoint-id <private_endpoint_ocid> --display-name <connection_name>
Nota

En este ejemplo se supone que ya existe un punto final privado y el secreto necesario en un almacén. Este ejemplo se puede utilizar sin autenticación de proxy.

Por ejemplo:

oci dbtools connection create-oracle-database -c ocid1.compartment.oc1..example1example25qrlpo4agcmothkbgqgmuz2zzum45ibplooqtabwk3zz --user-name "example-user[proxy-client]" --user-password-secret-id ocid1.vaultsecret.oc1.phx.example1secrettxiu7mwuabcdefxl67fj5niy4akfzsabcdefzf3423ya --connection-string "(description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.us-phoenix-1.oraclecloud.com))(connect_data=(service_name=example_databaseservice_low.adb.oraclecloud.com))(security=(ssl_server_cert_dn="CN=adwc.uscom-east-1.oraclecloud.com,OU=Oracle BMCS US, O=Oracle Corporation, L=Redwood City, ST=California, C=US")))" --key-stores '[{ "keyStoreContent":{ "secretId": "ocid1.vaultsecret.oc1.phx.example1ssowalletxiu7mwuabcdefxl67fj5niy4akfzsabcdefzf3423ya", "valueType": "SECRETID" }, "keyStoreType": "SSO" }]' --private-endpoint-id ocid1.databasetoolsprivateendpoint.oc1.phx.exampleendpoint25qrlpo4agcmothkbgqgmuz2zzum45ibplooqtabcdefg --display-name example-connection

Crear una conexión de proxy a Oracle Database con propiedades avanzadas

Abra un símbolo del sistema y ejecute oci dbtools connection create-oracle-database para crear una nueva conexión de Database Tools en el compartimento especificado:

oci dbtools connection create-oracle-database -c <target_compartment_ocid> 
--user-name <database_user> --user-password-secret-id <vault_secret_ocid> --key-stores <keystore_json_array>
--connection-string <connection_string> --private-endpoint-id <private_endpoint_ocid>
--display-name <connection_name> --advanced-properties <advanced_properties_json>
Nota

En este ejemplo se supone que ya existe un punto final privado y el secreto necesario en un almacén. Este ejemplo se puede utilizar sin autenticación de proxy.

Por ejemplo:

oci dbtools connection create-oracle-database -c ocid1.compartment.oc1..example1example25qrlpo4agcmothkbgqgmuz2zzum45ibplooqtabwk3zz --user-name "example-user" --user-password-secret-id ocid1.vaultsecret.oc1.phx.example1secrettxiu7mwuabcdefxl67fj5niy4akfzsabcdefzf3423ya --connection-string "(description= retry_count=20)(retry_delay=3)(address=(protocol=tcps) (port=1522)(host=adb.us-phoenix-1.oraclecloud.com))(connect_data=(service_name=example_databaseservice_low.adb.oraclecloud.com)) (security=(ssl_server_cert_dn="CN=adwc.uscom-east-1.oraclecloud.com, OU=Oracle BMCS US, O=Oracle Corporation, L=Redwood City, ST=California, C=US")))" --key-stores '[{ "keyStoreContent":{ "secretId": "ocid1.vaultsecret.oc1.phx.example1ssowalletxiu7mwuabcdefxl67fj5niy4akfzsabcdefzf3423ya", "valueType": "SECRETID" }, "keyStoreType": "SSO" }]' --private-endpoint-id ocid1.databasetoolsprivateendpoint.oc1.phx.exampleendpoint25qrlpo4agcmothkbgqgmuz2zzum45ibplooqtabcdefg --display-name example-connection --advanced-properties '{ "oracle.jdbc.proxyClientName": "proxy-client" }'

Para crear una conexión de proxy a Oracle Database con el parámetro proxy-client

Abra un símbolo del sistema y ejecute oci dbtools connection create-oracle-database para crear una nueva conexión de Database Tools en el compartimento especificado:

oci dbtools connection create-oracle-database -c <target_compartment_ocid> --user-name
<database_user> --user-password-secret-id <vault_secret_ocid> --key-stores <keystore_json_array>
--connection-string <connection_string> --private-endpoint-id <private_endpoint_ocid>
--display-name <connection_name> --proxy-client <proxy_client_json>
Nota

En este ejemplo se supone que ya existe un punto final privado y el secreto necesario en un almacén. Este ejemplo se puede utilizar sin autenticación de proxy.

Por ejemplo:

oci dbtools connection create-oracle-database -c ocid1.compartment.oc1..example1example25qrlpo4agcmothkbgqgmuz2zzum45ibplooqtabwk3zz --user-name "example-user" --user-password-secret-id ocid1.vaultsecret.oc1.phx.example1secrettxiu7mwuabcdefxl67fj5niy4akfzsabcdefzf3423ya --connection-string "(description=(retry_count=20)(retry_delay=3)(address=(protocol=tcps) (port=1522)(host=adb.us-phoenix-1.oraclecloud.com)) (connect_data=(service_name=example_databaseservice_low.adb.oraclecloud.com)) (security=(ssl_server_cert_dn="CN=adwc.uscom-east-1.oraclecloud.com, OU=Oracle BMCS US, O=Oracle Corporation, L=Redwood City, ST=California, C=US")))" --key-stores '[{ "keyStoreContent":{ "secretId": "ocid1.vaultsecret.oc1.phx.example1ssowalletxiu7mwuabcdefxl67fj5niy4akfzsabcdefzf3423ya", "valueType": "SECRETID" }, "keyStoreType": "SSO" }]' --private-endpoint-id ocid1.databasetoolsprivateendpoint.oc1.phx.exampleendpoint25qrlpo4agcmothkbgqgmuz2zzum45ibplooqtabcdefg --display-name example-connection --proxy-client '{ "proxy-authentication-type": "USER_NAME", "user-name": "proxy-client", "roles": [ "connect" ]}'

Para crear una conexión de proxy a Oracle Database con el parámetro de cliente proxy en el archivo JSON

Abra un símbolo del sistema y ejecute oci dbtools connection create-oracle-database para crear una nueva conexión de Database Tools como se especifica en el archivo JSON:

oci dbtools connection create-oracle-database --from-json "file://<path-to-json>"
Nota

En este ejemplo se supone que ya existe un punto final privado y el secreto necesario en un almacén. Este ejemplo se puede utilizar sin autenticación de proxy.

Por ejemplo, especificando todos los detalles necesarios en un archivo JSON:

{
  "compartmentId": "ocid1.compartment.oc1..example1example25qrlpo4agcmothkbgqgmuz2zzum45ibplooqtabwk3zz",
  "connectionString": "(description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.us-phoenix-1.oraclecloud.com))(connect_data=(service_name=example_databaseservice_low.adb.oraclecloud.com))(security=(ssl_server_cert_dn=\"CN=adwc.uscom-east-1.oraclecloud.com, OU=Oracle BMCS US, O=Oracle Corporation, L=Redwood City, ST=California, C=US\")))",
  "displayName": "example-connection-from-json",
  "keyStores": [
    {
      "keyStoreContent": {
        "secretId": "ocid1.vaultsecret.oc1.phx.example1ssowalletxiu7mwuabcdefxl67fj5niy4akfzsabcdefzf3423ya",
        "valueType": "SECRETID"
      },
      "keyStoreType": "SSO"
    }
  ],
  "userName": "example-user",
  "userPasswordSecretId": "ocid1.vaultsecret.oc1.phx.example1secrettxiu7mwuabcdefxl67fj5niy4akfzsabcdefzf3423ya",
  "proxyClient": {
     "proxyAuthenticationType": "USER_NAME",
     "userName": "proxyClient",
     "userPassword": {
        "valueType": "SECRETID",
        "secretId": "ocid1.vaultsecret.oc1.phx.amaaaaaacsc5xjaanv6tjndg4dujfcarguywkftbvgsolw5w6fb22rhpb6ta"
     },
     "roles": [ "connect" ]
  }
}

Conexiones autenticadas por IAM

Crear una conexión a Oracle Database mediante la autenticación basada en token de IAM

Abra un símbolo del sistema y ejecute oci dbtools connection create-oracle-database para crear una nueva conexión de Database Tools en el compartimento especificado:

oci dbtools connection create-oracle-database --compartment-id <compartment_ocid> 
--display-name <connection_name> --connection-string <connection_string> --authentication-type TOKEN

Por ejemplo:

oci dbtools connection create-oracle-database --compartment-id ocid1.compartment.oc1..exampleexamplegs3lajseq 
--display-name example-iam-connection 
--connection-string "(description=(retry_count=0)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=<adb-hostname>))(connect_data=(service_name=service-name))(security=(ssl_server_dn_match=yes)))" 
--authentication-type TOKEN

Para crear una conexión de proxy a Oracle Database mediante la autenticación basada en token de IAM

Utilice esta opción cuando IAM autentica el usuario de proxy y la sesión de base de datos se establece como usuario de cliente de proxy.

Abra un símbolo del sistema y ejecute oci dbtools connection create-oracle-database para crear una nueva conexión de Database Tools en el compartimento especificado:

oci dbtools connection create-oracle-database --compartment-id <compartment_ocid> --display-name <connection_name> 
--connection-string <connection_string> --user-name '[proxy_client1]' --authentication-type TOKEN

Por ejemplo:

 oci dbtools connection create-oracle-database --compartment-id ocid1.compartment.oc1..example7augka7wugqsmsdcyw5olcazkp4no3h47lia 
--display-name proxy-abc --connection-string "(description=(retry_count=0)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=<adb-hostname>))(connect_data=(service_name=<service-name))(security=(ssl_server_dn_match=yes)))'"
--user-name '[proxy_client1]' --authentication-type TOKEN --endpoint "https://dbtools.<region>.oci.oraclecloud.com" 

Para crear una conexión proxy con un nombre de usuario mediante la autenticación de contraseña

Utilice esta opción para autenticarse con una contraseña de base de datos y conectarse a través de un usuario de cliente proxy.

Abra un símbolo del sistema y ejecute oci dbtools connection create-oracle-database para crear una nueva conexión de Database Tools en el compartimento especificado:

oci dbtools connection create-oracle-database --compartment-id <compartment_ocid> 
--display-name <connection_name> --connection-string <connection_string> --user-name 'proxy_user[proxy_client1]' 
--authentication-type PASSWORD --user-password-secret-id <password-secret-ocid>

Por ejemplo:

oci dbtools connection create-oracle-database --compartment-id ocid1.compartment.oc1..exampleaugka7wugqsmsdcyw5olcazkp4no3h47lia
--display-name proxy-abc --connection-string "(description=(retry_count=0)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=<adb-hostname>))(connect_data=(service_name=service-name))(security=(ssl_server_dn_match=yes)))" 
--user-name 'proxy_user[proxy_client1]' --authentication-type PASSWORD 
--user-password-secret-id ocid1.vaultsecret.oc1.exampleaaiaqsoeecjlur7kyptlhu7yggiffb5oqdvfayf6rozrpxma

Para crear una conexión proxy con propiedades avanzadas mediante la autenticación de contraseña

Utilice esta opción cuando desee especificar el usuario de cliente proxy mediante las propiedades de conexión.

Abra un símbolo del sistema y ejecute oci dbtools connection create-oracle-database para crear una nueva conexión de Database Tools en el compartimento especificado:

oci dbtools connection create-oracle-database --compartment-id <compartment_ocid> --display-name <connection_name>
--connection-string <connection_string> --user-name proxy_user --authentication-type PASSWORD
--user-password-secret-id <vault_secret_ocid> --advanced-properties '{ "oracle.jdbc.proxyClientName": "proxy_client1" }' --endpoint <region-url>

Por ejemplo:

oci dbtools connection create-oracle-database --compartment-id ocid1.compartment.oc1..exampleaugka7wugqsmsdcyw5olcazkp4no3h47lia
--display-name proxy-abc --connection-string  "(description=(retry_count=0)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=<adb-hostname>))(connect_data=(service_name=service-name))(security=(ssl_server_dn_match=yes)))"
--user-name proxy_user --authentication-type PASSWORD --user-password-secret-id ocid1.vaultsecret.oc1.examplekyptlhu7yggiffb5oqdvfayf6rozrpxma
--advanced-properties '{"oracle.jdbc.proxyClientName":"proxy_client1"}' --endpoint "https://dbtools.<region>.oci.oraclecloud.com/20201005" 

Crear una conexión de proxy con propiedades avanzadas mediante la autenticación basada en token

Utilice esta opción cuando desee especificar el usuario de cliente proxy mediante las propiedades de conexión.

Abra un símbolo del sistema y ejecute oci dbtools connection create-oracle-database para crear una nueva conexión de Database Tools en el compartimento especificado:

oci dbtools connection create-oracle-database --compartment-id <compartment_ocid> --display-name <connection_name>
--connection-string <connection_string> --user-name proxy_user --authentication-type TOKEN
--advanced-properties '{ "oracle.jdbc.proxyClientName": "proxy_client1" }' --endpoint <region-url>

Por ejemplo:

oci dbtools connection create-oracle-database --compartment-id ocid1.compartment.oc1..exampleaugka7wugqsmsdcyw5olcazkp4no3h47lia
--display-name proxy-abc --connection-string  "(description=(retry_count=0)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=<adb-hostname>))(connect_data=(service_name=service-name))(security=(ssl_server_dn_match=yes)))"
--user-name proxy_user --authentication-type TOKEN --advanced-properties '{"oracle.jdbc.proxyClientName":"proxy_client1"}' 
--endpoint "https://dbtools.<region>.oci.oraclecloud.com" 

Para crear una conexión de proxy con el parámetro proxy-client mediante la autenticación de contraseña

Utilice esta opción para proporcionar detalles de cliente proxy de forma explícita.

Abra un símbolo del sistema y ejecute oci dbtools connection create-oracle-database para crear una nueva conexión de Database Tools en el compartimento especificado:

oci dbtools connection create-oracle-database --compartment-id <compartment_ocid> --display-name <connection_name>
--connection-string <connection_string> --user-name proxy_user --authentication-type PASSWORD
--user-password-secret-id <vault_secret_ocid> --proxy-client <proxy_client_json> --endpoint <region-url>

Por ejemplo:

oci dbtools connection create-oracle-database --compartment-id ocid1.compartment.oc1..examplewugqsmsdcyw5olcazkp4no3h47lia
--display-name proxy-abc--connection-string '(description=(retry_count=0)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=<adb-hostname>))(connect_data=(service_name=service-name))(security=(ssl_server_dn_match=yes)))'
--user-name 'proxy_user' --authentication-type PASSWORD 
--user-password-secret-id ocid1.vaultsecret.oc1.exampleyptlhu7yggiffb5oqdvfayf6rozrpx
--proxy-client '{"proxyAuthenticationType":"USER_NAME","userName":"proxy_client1"}'
--endpoint 'https://dbtools.<region>.oci.oraclecloud.com'

Para crear una conexión de proxy con un cliente de proxy detectado automáticamente mediante autenticación basada en token

Utilice esta opción para determinar dinámicamente el cliente de proxy en tiempo de ejecución.

Abra un símbolo del sistema y ejecute oci dbtools connection create-oracle-database para crear una nueva conexión de Database Tools en el compartimento especificado:

oci dbtools connection create-oracle-database --compartment-id <compartment_ocid> --display-name <connection_name>
--connection-string <connection_string> --authentication-type TOKEN 
--proxy-client '{"proxyAuthenticationType":"USER_NAME","userName":"<proxy-client>"}' --endpoint <region-url>

Por ejemplo:

oci dbtools connection create-oracle-database --compartment-id ocid1.compartment.oc1..exampleugka7wugqsmsdcyw5olcazkp4no3h47lia
--display-name proxy-abc --connection-string '(description=(retry_count=0)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=<adb-hostname>))(connect_data=(service_name=service-name))(security=(ssl_server_dn_match=yes)))'
--authentication-type TOKEN --proxy-client '{"proxyAuthenticationType":"USER_NAME_AUTO_DETECT"}'
--endpoint 'https://dbtools.<region>.oci.oraclecloud.com'