Notas do Pacote PL/SQL para o Autonomous AI Database
Observações para pacotes PL/SQL do Oracle Database no Autonomous AI Database.
Pacotes PL/SQL Não Disponíveis
-
DBMS_DEBUG_JDWP -
DBMS_DEBUG_JDWP_CUSTOM
DBMS_LDAP Observações do Pacote PL/SQL
Fornece notas para o pacote DBMS_LDAP:
-
Não é permitido especificar um endereço IP no nome do host.
-
A única porta permitida é 636.
-
Os argumentos
SSLWRLeSSLWALLETPASSWDpara o procedimentoOPEN_SSLsão ignorados. O valor padrão da propriedadeSSLWRLé definido como a wallet usada porUTL_HTTPeDBMS_CLOUDpara fazer solicitações Web de saída no Autonomous AI Database. -
Os subprogramas
DBMS_LDAP.SIMPLE_BIND_SeDBMS_LDAP.BIND_Sexecutam autenticação no servidor de diretórios.Os subprogramas
DBMS_LDAP.SIMPLE_BIND_SeDBMS_LDAP.BIND_Ssão modificados para aceitar objetos de credencial como argumento.A seguir estão as notas de uso e exemplos desses subprogramas modificados:
-
Os subprogramas
SIMPLE_BIND_SeBIND_Smodificados permitem que você informe objetos de credencial para definir a autenticação do servidor de diretórios. Os objetos de credencial são objetos de esquema; portanto, eles só podem ser acessados por usuários privilegiados e permitem que você configure privilégios no nível do esquema para acessar as credenciais. A aprovação de credenciais do scheduler é uma maneira apropriada e segura de armazenar e gerenciar nome de usuário/senha/chaves para autenticação. -
Os subprogramas
SIMPLE_BIND_SeBIND_Smodificados são uma alternativa segura e conveniente para os subprogramasSIMPLE_BIND_SeBIND_Sexistentes anteriormente.Consulte FUNCTION simple_bind_s e FUNCTION bind_s para obter mais informações.
-
O argumento
CREDENTIALdas funçõesSIMPLE_BIND_SeBIND_Sé usado para executar a autenticação baseada em credencial no servidor de diretórios. -
Por exemplo:
-
Crie um objeto de credencial:
BEGIN DBMS_CLOUD.CREATE_CREDENTIAL ( credential_name => 'LDAP_CRED', username => 'web_app_user', password => 'password' ); END;Isso cria um objeto de credencial que cria um par de nome de usuário/senha armazenado.
Consulte CREATE_CREDENTIAL Procedures para obter mais informações.
Consulte Especificando Credenciais do Job do Scheduler para obter mais informações.
-
Chame
DBMS_LDAP.SIMPLE_BIND_S:DECLARE l_mail_conn DBMS_LDAP.INIT; BEGIN l_ldap_conn := DBMS_LDAP.INIT('ldap.example.com', 636); l_auth_result := DBMS_LDAP.SIMPLE_BIND_S(l_ldap_conn, 'LDAP_CRED'); ... END;O código neste exemplo primeiro chama a função
DBMS_LDAP.INITque inicializa uma sessão com um servidor LDAP e estabelece uma conexão com o servidor LDAPldap.example.comna porta número636. O valorl_ldap_connna funçãoSIMPLE_BIND_Sé o handle de sessão LDAP eLDAP_CREDé o nome das credenciais. -
O
function bind_sexecuta uma autenticação complexa no servidor de diretórios. Por exemplo:DECLARE l_mail_conn DBMS_LDAP.INIT; BEGIN l_ldap_conn := DBMS_LDAP.INIT('ldap.example.com', 636); l_auth_result := DBMS_LDAP.BIND_S(l_ldap_conn, 'LDAP_CRED', METH => DBMS_LDAP.AUTH_SIMPLE); ... END;O código neste exemplo primeiro chama a função
DBMS_LDAP.INITque inicializa uma sessão com um servidor LDAP e estabelece uma conexão com o servidor LDAPldap.example.comna porta número636. O valorl_ldap_connna funçãoBIND_Sé o handle de sessão LDAP eLDAP_CREDé o nome das credenciais.METHé o método de autenticação. O único valor válido éDBMS_LDAP_UTL.AUTH_SIMPLE.
-
-
Os privilégios
EXECUTEnoDBMS_CLOUDouDWROLEsão necessários para criar credenciais do scheduler. -
A credencial informada deve estar presente no esquema atual ou ter um sinônimo apontando para uma credencial no esquema e estar no estado ativado.
-
Um sinônimo público ou privado que aponta para uma credencial em um esquema de usuário diferente pode ser fornecido como um valor para o parâmetro
CREDENTIAL, desde que você tenha o privilégioEXECUTEno objeto de credencial base apontado pelo sinônimo. Consulte Visão Geral de Sinônimos para obter mais informações.
-
-
SSL/TLS é aplicado para toda a comunicação que ocorre entre o servidor LDAP e o Autonomous AI Database.
-
Quando sua instância do Autonomous AI Database estiver configurada com um ponto final privado, defina o parâmetro de banco de dados
ROUTE_OUTBOUND_CONNECTIONScomo 'PRIVATE_ENDPOINT' para especificar que todas as conexões LDAP de saída estejam sujeitas às regras de saída da VCN do ponto final privado da instância do Autonomous AI Database. Consulte Segurança Aprimorada para Conexões de Saída com Pontos Finais Privados para obter mais informações. -
Para usar
DBMS_LDAPpara uma conexão em um ponto final privado, useDBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACEe especifique o parâmetroprivate_targetcom o valorTRUE.Observação
Se você definirROUTE_OUTBOUND_CONNECTIONScomoPRIVATE_ENDPOINT, não será necessário definir o parâmetroprivate_targetcomoTRUEnesta API. Consulte Segurança Aprimorada para Conexões de Saída com Pontos Finais Privados para obter mais informações. -
DBMS_LDAPErroMensagem de Erro Causa Potencial ORA-31400: Missing or invalid scheduler credentialAs credenciais especificadas são NULAS ou inválidas.
Consulte DBMS_LDAP em Referência de Tipos e Pacotes PL/SQL para obter mais informações.
DBMS_NETWORK_ACL_ADMIN Observações do Pacote PL/SQL
Fornece notas para o pacote DBMS_NETWORK_ACL_ADMIN:
-
Não é permitido conceder privilégios de ACL em endereços IP.
-
A ACL
HTTP_PROXYé permitida em pontos finais privados.
Consulte DBMS_NETWORK_ACL_ADMIN em Referência de Tipos e Pacotes PL/SQL para obter mais informações.
DBMS_SCHEDULER Notas do Pacote
Fornece notas para o pacote DBMS_SCHEDULER.
No Autonomous AI Database, o procedimento DBMS_SCHEDULER.CREATE_JOB suporta os tipos de job PLSQL_BLOCK e STORED_PROCEDURE para o parâmetro job_type.
Usando um job_type não suportado, você pode ver mensagens como as seguintes:
ORA-27399: job type EXECUTABLE requires the CREATE EXTERNAL JOB privilege
ORA-27369: JOB OF TYPE EXECUTABLE FAILED WITH EXIT CODE: OPERATION NOT PERMITTED
Consulte Classes de Job Predefinidas com o Oracle Scheduler e DBMS_SCHEDULER para obter mais informações.
UTL_HTTP Observações do Pacote PL/SQL
Fornece notas para o pacote UTL_HTTP:
-
Não são permitidas conexões por meio de endereços IP.
-
Somente
HTTPSé permitido quando a instância do Autonomous AI Database está em um ponto final público. Quando a instância do Autonomous AI Database está em um ponto final privado, são permitidas conexõesHTTPSeHTTP_PROXY(as conexõesHTTPnão são permitidas para pontos finais públicos e privados). -
A API
UTL_HTTP.set_proxyé permitida quando a instância do Autonomous AI Database está em um ponto final privado. -
Quando a instância do Autonomous AI Database está em um ponto final privado e você usa
HTTP_PROXYou a APIUTL_HTTP.SET_PROXY:-
As solicitações
DBMS_CLOUDnão respeitam o servidor proxy definido comUTL_HTTP.SET_PROXY. Isso incluiDBMS_CLOUD.SEND_REQUESTe todo o acesso ao armazenamento de objetos para tabelas externasDBMS_CLOUDque você define comDBMS_CLOUD.CREATE_EXTERNAL_TABLE,DBMS_CLOUD.CREATE_EXTERNAL_PART_TABLEouDBMS_CLOUD.CREATE_HYBRID_PART_TABLE. -
As solicitações
APEX_WEB_SERVICEnão respeitam o servidor proxy definido comUTL_HTTP.SET_PROXY.
-
-
Todos os Web services devem ser protegidos. A única porta permitida é 443 quando a instância do Autonomous AI Database está em um ponto final público. Quando a instância do Autonomous AI Database está em um ponto final privado, essa restrição não se aplica.
Sua instância do Autonomous AI Database é pré-configurada com uma Oracle Wallet que contém mais de 90 dos certificados SSL raiz e intermediários mais confiáveis. O Oracle Wallet é gerenciado centralmente. Você pode configurar o
UTL_HTTPpara usar uma wallet para um site protegido usando certificados SSL autoassinados. Consulte Usar uma Wallet Gerenciada pelo Cliente para Chamadas Externas com o UTL_HTTP para obter mais informações. -
O procedimento
SET_AUTHENTICATION_FROM_WALLETnão é permitido. -
Os argumentos
WALLET_PATHeWALLET_PASSWORDpara os procedimentosCREATE_REQUEST_CONTEXT,REQUESTeREQUEST_PIECESsão ignorados. -
O argumento
CREDENTIALdo procedimentoSET_CREDENTIALé usado para passar o objeto de credencial como uma entrada para o procedimento. Consulte Especificando Credenciais do Job do Scheduler e Procedimento CREATE_CREDENTIAL para obter mais informações. -
Os privilégios
EXECUTEemDBMS_CLOUDouDWROLEsão necessários para criar objetos de credencial. -
As credenciais especificadas devem estar presentes no esquema do usuário atual e estar no estado ativado.
-
Um sinônimo público ou privado que aponta para uma credencial em um esquema de usuário diferente pode ser fornecido como um valor para o parâmetro
CREDENTIAL, desde que você tenha o privilégioEXECUTEno objeto de credencial base apontado pelo sinônimo. Consulte Visão Geral de Sinônimos para obter mais informações. -
A configuração do Oracle Wallet não pode ser alterada. Todos os argumentos para o procedimento
SET_WALLETsão ignorados. -
Quando sua instância do Autonomous AI Database for configurada com um ponto final privado, defina o parâmetro de banco de dados
ROUTE_OUTBOUND_CONNECTIONScomo 'PRIVATE_ENDPOINT' para especificar que todas as conexõesUTL_HTTPde saída estejam sujeitas às regras de saída da VCN do ponto final privado da instância do Autonomous AI Database. Consulte Segurança Aprimorada para Conexões de Saída com Pontos Finais Privados para obter mais informações. -
UTL_HTTPErrosA tabela a seguir mostra mensagens de erro e possíveis causas para essas mensagens de erro ao usar
UTL_HTTP:Mensagem de Erro Causa Potencial ORA-12545: Connect failed because target host or object does not existO host ou objeto de destino não existe ou é privado.
ORA-24247: network access denied by access control list (ACL)Não foi possível encontrar a lista de controle de acesso (ACL) do host especificado.
ORA-29024: Certificate validation failureO certificado do host não existe ou não está entre os certificados suportados.
ORA-29261: Bad argumentAs credenciais informadas são inválidas ou desativadas ou o usuário não tem privilégios suficientes na credencial.
Consulte UTL_HTTP em Referência de Tipos e Pacotes PL/SQL para obter mais informações.
UTL_INADDR Observações do Pacote PL/SQL
Fornece notas para o pacote UTL_INADDR:
-
O pacote
UTL_INADDRestá disponível para uso em uma instância do Autonomous AI Database com um ponto final privado (PE). -
A função
GET_HOST_ADDRESSestá disponível. -
A função
GET_HOST_NAMEnão está disponível.
Consulte UTL_INADDR em Referência de Tipos e Pacotes PL/SQL para obter mais informações.
UTL_SMTP Observações do Pacote PL/SQL
Fornece notas para o pacote UTL_SMTP:
-
Os pontos finais SMTP públicos podem ser usados desde que o roteamento seja feito por meio do ponto final de conexão reversa (RCE) do cliente.
-
Não é permitido e-mail com um endereço IP no nome do host.
-
Os únicos portos permitidos são 25 e 587.
-
O argumento
CREDENTIALda funçãoSET_CREDENTIALé usado para informar o objeto de credenciais do scheduler como uma entrada para a função. Consulte Especificando Credenciais do Job do Scheduler e Procedimento CREATE_CREDENTIAL para obter mais informações. -
Os privilégios
EXECUTEemDBMS_CLOUDouDWROLEsão necessários para criar objetos de credencial. -
O argumento
CREDENTIALdo procedimentoSET_CREDENTIALé usado para passar o objeto de objetos de credencial como uma entrada para o procedimento. Consulte Especificando Credenciais do Job do Scheduler para obter mais informações. -
As credenciais especificadas devem estar presentes no esquema do usuário atual e estar no estado ativado.
-
Um sinônimo público ou privado que aponta para uma credencial em um esquema de usuário diferente pode ser fornecido como um valor para o parâmetro
CREDENTIAL, desde que você tenha o privilégioEXECUTEno objeto de credencial base apontado pelo sinônimo. Consulte Visão Geral de Sinônimos para obter mais informações. -
Quando sua instância do Autonomous AI Database for configurada com um ponto final privado, defina o parâmetro de banco de dados
ROUTE_OUTBOUND_CONNECTIONScomo 'PRIVATE_ENDPOINT' para especificar que todas as conexõesUTL_SMTPde saída estejam sujeitas às regras de saída da VCN do ponto final privado da instância do Autonomous AI Database. Consulte Segurança Aprimorada para Conexões de Saída com Pontos Finais Privados para obter mais informações. -
UTL_SMTPErroMensagem de Erro Causa Potencial ORA-29261: Bad argumentAs credenciais informadas são inválidas ou desativadas ou o usuário não tem privilégios suficientes na credencial.
Consulte UTL_SMTP em Referência de Tipos e Pacotes PL/SQL para obter mais informações.
UTL_TCP Observações do Pacote PL/SQL
Fornece notas para o pacote UTL_TCP:
-
O endereço IP não é permitido no nome do host.
-
As únicas portas permitidas são: 443 (HTTP) 25 e 587 (SMTP).
-
Para a porta 443, somente URLs HTTPS são permitidos.
-
Os argumentos
WALLET_PATHeWALLET_PASSWORDdo procedimentoOPEN_CONNECTIONsão ignorados. O valor padrão para as propriedadesWALLET_PATHeWALLET_PASSWORDé definido como a wallet usada porUTL_HTTPeDBMS_CLOUDpara fazer solicitações Web de saída no Autonomous AI Database. -
O SSL/TLS é aplicado a todas as comunicações que acontecem em conexões TCP/IP.
-
Quando sua instância do Autonomous AI Database for configurada com um ponto final privado, defina o parâmetro de banco de dados
ROUTE_OUTBOUND_CONNECTIONScomo 'PRIVATE_ENDPOINT' para especificar que todas as conexõesUTL_TCPde saída estejam sujeitas às regras de saída da VCN do ponto final privado da instância do Autonomous AI Database. Consulte Segurança Aprimorada para Conexões de Saída com Pontos Finais Privados para obter mais informações.
Consulte UTL_TCP em Referência de Tipos e Pacotes PL/SQL para obter mais informações.
Tópico principal: Observações de Usuários Migrando de Outros Bancos de Dados da Oracle