Usar Autenticação do IAM (Identity and Access Management) com o Autonomous AI Database
Observação:
A integração do serviço Autonomous AI Database com o serviço Oracle Cloud Infrastructure (OCI) IAM é suportada em tenancies comerciais com domínios da identidade, bem como no Oracle Cloud Infrastructure IAM legado, que não inclui domínios. O Oracle Cloud Infrastructure IAM com domínios de identidade foi introduzido com novas tenancies do OCI criadas após 8 de novembro de 2021. O Autonomous AI Database suporta usuários e grupos em domínios de identidades padrão e não padrão.Sobre Autenticação do Serviço IAM (Identity and Access Management) com o Serviço Autonomous AI Database
A integração do serviço IAM do Oracle Cloud Infrastructure com o serviço Autonomous AI Database suporta tanto a autenticação por senha quanto a autenticação baseada em token. Consulte Autenticando e Autorizando Usuários do Serviço IAM para Oracle Autonomous AI Databases para obter detalhes completos sobre a arquitetura para usar usuários do serviço IAM no Autonomous AI Database.
Autenticação de Senha do Banco de Dados do IAM
Observação:
Qualquer cliente de banco de dados 12c e superior suportado pode ser usado para acesso de senha de banco de dados do serviço IAM ao Autonomous AI Database.Uma senha do Oracle Cloud Infrastructure IAM Database permite a um usuário do serviço IAM fazer log-in em uma instância do Autonomous AI Database, pois os usuários do serviço Oracle Database geralmente fazem log-in com um nome de usuário e senha. O usuário informa seu nome de usuário do IAM e a senha do banco de dados do IAM. Uma senha de banco de dados do IAM é uma senha distinta da senha da Console do Oracle Cloud Infrastructure. Usando um usuário do serviço IAM com o verificador de senha, você pode fazer log-in no serviço Autonomous AI Database com qualquer cliente de banco de dados suportado.
Autenticação Baseada em Token de SSO do IAM (Identity and Access Management)
Há várias formas pelas quais um cliente de banco de dados pode obter um token de banco de dados do IAM:
-
Um aplicativo ou ferramenta cliente pode solicitar o token de banco de dados do IAM para o usuário e pode passar o token de banco de dados por meio da API do cliente. O uso da API para enviar o token substitui outras definições no cliente de banco de dados. Esse tipo de uso de token de banco de dados do IAM é suportado para os seguintes clientes:
- JDBC-thin em todas as plataformas
- Oracle Instant Client OCI-C no Linux
- Oracle Data Provider for .NET (ODP.NET) Core
-
Se o aplicativo ou a ferramenta não oferecer suporte à solicitação de um token de banco de dados do IAM por meio da API do cliente, o usuário do IAM poderá primeiro usar a CLI (interface de linha de comando) do Oracle Cloud Infrastructure para recuperar o token de banco de dados do IAM e salvá-lo em um local de arquivo. Por exemplo, para usar o SQL*Plus e outros aplicativos e ferramentas que usam esse método de conexão, primeiro obtenha o token de banco de dados usando a CLI (Interface de Linha de Comando) do Oracle Cloud Infrastructure (OCI). Se o cliente de banco de dados estiver configurado para tokens de banco de dados do IAM, quando um usuário fizer log-in com o formato de log-in de barra, o driver do banco de dados usará o token do banco de dados do IAM que foi salvo em um local de arquivo padrão ou especificado.
-
Um aplicativo ou ferramenta cliente pode usar um controlador de instâncias ou um controlador de recursos do Oracle Cloud Infrastructure IAM para obter um token de banco de dados do IAM e usar o token de banco de dados do IAM para se autenticar em uma instância do Autonomous AI Database.
-
Os usuários do IAM e os aplicativos OCI podem solicitar um token de banco de dados do IAM com vários métodos, incluindo o uso de uma chave de API. Consulte Configurando uma Conexão do Cliente para o SQL*Plus que Usa um Token do Serviço IAM para obter um exemplo. Consulte Sobre Autenticação e Autorização de Usuários do IAM para um Oracle Autonomous AI Database para ver uma descrição de outros métodos, como usar um token de delegação em um Cloud Shell do OCI.
Se um usuário informar um nome de usuário/senha para fazer log-in, o driver do banco de dados usará o método verificador de senha para acessar o banco de dados, independentemente da definição de token do banco de dados do cliente.
Prerequisites for Identity and Access Management (IAM) Authentication on Autonomous AI Database
Antes de usar a autenticação do IAM (Identity and Access Management) no Autonomous AI Database, você deve garantir o seguinte:
Use o serviço Networking para adicionar um Gateway de Serviço, uma Regra de Roteamento e uma Regra de Segurança de Saída à VCN (Rede Virtual em Nuvem) e sub-redes onde residem seus recursos do serviço Autonomous AI Database.
- Crie um gateway de serviço na VCN (Rede Virtual em Nuvem) onde seus recursos do serviço Autonomous AI Database residem seguindo as instruções na Tarefa 1: Criar o gateway de serviço na Documentação do Oracle Cloud Infrastructure.
- Após criar o gateway do serviço, adicione uma regra da rota e uma regra da segurança da saída a cada sub-rede (na VCN) na qual residem os recursos do serviço Autonomous AI Database para que esses recursos possam usar o gateway para usar a autenticação do Identity and Access Management (IAM):
- Vá para a página Detalhes da Sub-rede da sub-rede.
- Na guia Informações da Sub-rede, clique no nome da Tabela de Rota da sub-rede para exibir sua respectiva página Detalhes da Tabela de Rota.
- Na tabela de Regras de Roteamento existentes, verifique se já existe uma regra com as seguintes características:
- Destino: Todos os Serviços IAD no Oracle Services Network
- Tipo de Destino: Gateway de Serviço
- Destino: O nome do gateway de serviço que você acabou de criar na VCN
Se essa regra não existir, clique em Adicionar Regras de Rota e adicione uma regra de roteamento com essas características.
- Retorne à página Detalhes da Sub-rede da sub-rede.
- Na tabela Listas de Segurança da sub-rede, clique no nome da lista de segurança da sub-rede para exibir a página Detalhes da Lista de Segurança.
- No menu lateral, em Recursos, clique em Regras de Saída.
- Na tabela de Regras de Saída existentes, verifique se já existe uma regra com as seguintes características:
- Sem Monitoramento de Estado: Não
- Destino: Todos os Serviços IAD no Oracle Services Network
- Protocolo IP: TCP
- Intervalo de Portas de Origem: Tudo
- Faixa de Portas de Destino: 443
- Se essa regra não existir, clique em Adicionar Regras de Saída e adicione uma regra de saída com essas características.
As definições de Proxy HTTP em seu ambiente devem permitir que o banco de dados acesse o provedor de serviços em nuvem.
Observação:
A configuração de rede, incluindo o Proxy HTTP, só poderá ser editada até que o Exadata Infrastructure esteja no estado Exige Ativação. Depois de ativado, você não poderá editar essas configurações.A configuração de um Proxy HTTP para uma Infraestrutura do Exadata já provisionada precisa de uma Solicitação de Serviço (SR) no My Oracle Support. Consulte Criar uma Solicitação de Serviço no My Oracle Support para obter detalhes.
Alterar Provedores Externos de Identidade no Autonomous AI Database
Descreve as etapas para alterar o provedor de identidades externo da autenticação e autorização do IAM para outro provedor de autenticação externo e vice-versa.
A autenticação e a autorização do Oracle Cloud Infrastructure (IAM) para usuários estão ativadas para Autonomous AI Databases e Autonomous Container Databases recém-provisionados, por padrão. Há outros esquemas de autenticação externos, como Usuários Gerenciados Centralmente com Active Directory (CMU-AD), Azure AD e Kerberos, que você pode ativar para seu Autonomous AI Database. No entanto, só pode existir um esquema de autenticação externo ativado em um determinado momento.
- Desative a integração do IAM usando o procedimento DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION:
Por exemplo:
Para obter informações adicionais, consulte Procedimento DISABLE_EXTERNAL_AUTHENTICATION.BEGIN DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION; END; / - Siga as etapas descritas nas páginas a seguir para configurar outro esquema de autenticação externo de sua escolha:
- Reative os usuários do IAM para estabelecer conexão com o Autonomous AI Database usando Autenticação e Autorização doOracle Cloud Infrastructure (IAM).
Como usuário ADMIN, execute o procedimento DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION com os parâmetros mostrados abaixo:
BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION( type => 'OCI_IAM' force => TRUE ); END; /O exemplo acima desativa qualquer provedor de autenticação externo que esteja ativado no momento e ativa a Autenticação e a Autorização do Oracle Cloud Infrastructure (IAM).
Neste exemplo:forceé definido comoTRUEpara desativar a autenticação externa ativada no momento.typeé definido como'OCI_IAM'para ativar e usar Autenticação e Autorização do Oracle Cloud Infrastructure (IAM).
Observação:
Por padrão, o parâmetroforceéFALSE. Quando outro método de autenticação externa está ativado eforceéFALSE, o DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION reporta o seguinte erro:ORA-20004: Another external authentication is already enabled.Consulte Procedimento ENABLE_EXTERNAL_AUTHENTICATION para obter mais referências.
- Verifique o valor do parâmetro do sistema
IDENTITY_PROVIDER_TYPE, conforme mostrado abaixo:SELECT NAME, VALUE FROM V$PARAMETER WHERE NAME='identity_provider_type'; NAME VALUE ---------------------- ------- identity_provider_type OCI_IAM
Criar Grupos e Políticas do Serviço IAM (Identity and Access Management) para Usuários do IAM
Descreve as etapas para gravar instruções de política para um grupo do serviço IAM para permitir o acesso dos usuários do serviço IAM aos recursos doOracle Cloud Infrastructure, especificamente para as instâncias do serviço Autonomous AI Database.
Uma política é um grupo de instruções que especifica quem pode acessar recursos específicos e como. O acesso pode ser concedido para toda a tenancy, bancos de dados em um compartimento ou bancos de dados individuais. Isso significa que você grava uma instrução de política que dá a um grupo específico um determinado tipo de acesso a um tipo de recurso definido dentro de um compartimento específico.
Observação:
É necessária a definição de uma política para usar tokens do serviço de IAM para acessar o Autonomous AI Database. Não é necessária uma política ao usar senhas do banco de dados do IAM para acessar o Autonomous AI Database.Para ativar o Autonomous AI Database a fim de permitir que os usuários do IAM se conectem ao banco de dados usando tokens do serviço IAM:
Observações sobre a criação de políticas para uso com usuários do IAM no Autonomous AI Database:
-
As diretivas podem permitir que os usuários do serviço IAM acessem instâncias do serviço Autonomous AI Database em toda a tenancy, em um compartimento, ou podem restringir o acesso a uma única instância do serviço Autonomous AI Database.
-
Você pode usar o controlador de instâncias ou o controlador de recursos para recuperar tokens do banco de Dados a fim de estabelecer uma conexão do aplicativo com uma instância do serviço Autonomous AI Database. Se estiver usando um controlador de instâncias ou um controlador de recursos, você deverá mapear um grupo dinâmico. Portanto, você não pode mapear exclusivamente instâncias e controladores de recursos; só pode mapeá-los por meio de um mapeamento compartilhado e colocar a instância ou instância de recurso em um grupo dinâmico do serviço IAM.
Você pode criar Grupos Dinâmicos e fazer referência a grupos dinâmicos nas políticas criadas para acessar o Oracle Cloud Infrastructure. Consulte Planejar Controles de Acesso e Criar Recursos de Suporte e Gerenciando Grupos Dinâmicos para obter detalhes.
Adicionar Usuários do IAM no Banco de Dados Autônomo do AI
Para adicionar usuários do Serviço IAM para permitir acesso ao Autonomous AI Database, mapeie usuários globais de bancos de dados para grupos ou usuários do Serviço IAM com instruções CREATE USER ou ALTER USER (com cláusula IDENTIFIED GLOBALLY AS).
A autorização dos usuários do Serviço IAM para uma instância do Serviço Autonomous AI Database funciona por meio do mapeamento de usuários globais (esquemas) do IAM para usuários do Serviço IAM (mapeamento exclusivo) ou grupos do IAM (mapeamento de esquema compartilhado).
Para autorizar usuários do IAM em uma instância do serviço Autonomous AI Database:
Observação:
Usuários de banco de dados que não sãoIDENTIFIED GLOBALLY podem continuar a fazer log-in como antes, mesmo quando o Autonomous AI Database está ativado para autenticação do serviço IAM.
Para mapear exclusivamente um usuário local do IAM para um Usuário Global do Oracle Database:
-
Faça log-in como o usuário ADMIN no banco de dados que está ativado para usar o serviço IAM (o usuário ADMIN tem os privilégios de sistema
CREATE USEReALTER USERnecessários para essas etapas). -
Crie um mapeamento entre o usuário (esquema) do Autonomous AI Database com instruções
CREATE USERouALTER USERe inclua a cláusulaIDENTIFIED GLOBALLY AS, especificando o nome de usuário do IAM local do IAM.Por exemplo, para criar um novo usuário global de banco de dados chamado
peter_fitche mapear esse usuário para um usuário local existente do serviço IAM chamadopeterfitch:CREATE USER peter_fitch IDENTIFIED GLOBALLY AS 'IAM_PRINCIPAL_NAME=peterfitch'O exemplo a seguir mostra como criar o usuário especificando um domínio não padrão,
sales_domain:CREATE USER peter_fitch2 IDENTIFIED GLOBALLY AS 'IAM_PRINCIPAL_NAME=sales_domain/peterfitch';
Adicionar Atribuições de IAM no Autonomous AI Database
Opcionalmente, crie atribuições globais para fornecer privilégios e atribuições adicionais do banco de dados a usuários do IAM quando vários usuários do IAM forem mapeados para o mesmo usuário global compartilhado.
O uso de atribuições globais é opcional ao usar um mapeamento exclusivo do IAM para o usuário (esquema) ou mapeamento de usuário compartilhado no Autonomous AI Database. Por exemplo, todos os privilégios e atribuições podem ser concedidos ao esquema compartilhado e todos os usuários do IAM que mapeiam para o esquema compartilhado recebem os privilégios e as atribuições designados ao esquema compartilhado.
Você pode usar uma atribuição global para diferenciar opcionalmente usuários que usam o mesmo esquema compartilhado. Por exemplo, um conjunto de usuários pode ter o mesmo esquema compartilhado e o esquema compartilhado pode ter o privilégio CREATE SESSION. Em seguida, as atribuições globais podem ser usadas para fornecer privilégios e atribuições diferenciados designados a diferentes grupos de usuários que usam o mesmo esquema compartilhado.
A concessão de atribuições adicionais a usuários do serviço IAM no Autonomous AI Database funciona mapeado as atribuições globais do serviço Autonomous AI Database para grupos do serviço IAM.
Para mapear atribuições globais Autonomous AI Database para grupos do serviço IAM:
Se você quiser adicionar mais mapeamentos de atribuição global para outros grupos do serviço IAM, siga estas etapas para cada grupo do IAM.
Criar Senha do Banco de Dados do Serviço IAM para Usuários do IAM
Para adicionar um usuário do serviço IAM e permitir que o usuário do serviço IAM faça login no Autonomous AI Database por meio de um nome de usuário e uma senha, você deve criar uma senha do banco de dados do serviço IAM.
Consulte Como Trabalhar com Senhas do Banco de Dados do Serviço IAM para obter mais informações.
Estabelecer Conexão com o Autonomous AI Database com a Autenticação do Identity and Access Management (IAM)
After the database ADMIN user maps global users and global roles to the IAM users and IAM groups, users log in to the Autonomous AI Database instance using their Oracle Cloud Infrastructure IAM credentials or access the database through an Oracle Cloud Infrastructure IAM database token.
Você ainda pode fazer log-on no Autonomous AI Database usando seu nome de usuário e senha de conta do banco dados local (conta de usuário não global).
Você pode usar um cliente de banco de dados para acessar uma instância do serviço Autonomous AI Database como um usuário do serviço Oracle Cloud Infrastructure IAM. Para usar um cliente com credenciais do nome de usuário e senha do serviço IAM do Oracle Cloud Infrastructure e um verificador da senha, o cliente do banco de Dados deve ser 12c ou um mais recente.
-
O JDBC-Thin com suporte para Autenticação de Token do IAM é suportado com:
-
JDBC versão 19.13.0.0.1 (ou posterior): Consulte JDBC and UCP Downloads para obter drivers JDBC.
-
JDBC versão 21.4.0.0.1 (ou posterior): Consulte Downloads de JDBC e UCP para obter drivers JDBC.
Consulte Suporte para Autenticação Baseada em Token do IAM para obter mais informações:
-
- SQL*Plus e Oracle Instant Client: Compatíveis com SQL*Plus e Instant Client no Linux versões 19.13 ou mais recentes e Instant Client no Linux versões 21.4 ou mais recentes.
Consulte Autenticação Baseada em Token do IAM (Identity and Access Management) para obter mais informações.
-
O cliente do banco de dados também pode ser configurado para recuperar um token de banco de dados usando o nome de usuário do IAM e a senha do banco de dados do IAM.
Consulte Conexões do Cliente que Usam um Token Solicitado por um Nome de Usuário e uma Senha de Banco de Dados do IAM para obter mais informações.
-
Clientes .NET (versão mais recente do Linux ou Windows). Os componentes de software .NET estão disponíveis para download gratuito nos seguintes sites:
Observação:
Se sua instância do serviço Autonomous AI Database estiver no Modo Restrito, somente os usuários com o privilégio RESTRICTED SESSION, como ADMIN, poderão se conectar ao banco de dados.
Sobre a Conexão com uma Instância do Autonomous AI Database on Dedicated Exadata Infrastructure Usando o Serviço IAM
Os usuários do IAM podem se conectar à instância do Autonomous AI Database on Dedicated Exadata Infrastructure usando um verificador de senha de banco de dados do serviço IAM ou um token do serviço IAM.
O uso do verificador de senha do banco de dados do IAM é semelhante ao processo de autenticação de senha do Oracle Database. No entanto, em vez do verificador da senha (hash criptografado da senha) ser armazenado no Autonomous AI Database on Dedicated Exadata Infrastructure, o verificador é armazenado como parte do perfil do usuário IAM do Oracle Cloud Infrastructure (OCI).
O segundo método de conexão, o uso de um token do serviço IAM para o banco de dados, é mais moderno. O uso de acesso baseado em token é mais adequado para recursos de nuvem, como o Autonomous AI Database on Dedicated Exadata Infrastructure. O token se baseia na força que o ponto final do IAM pode impor. Isso pode ser autenticação multifator, que é mais forte do que o uso exclusivo de senhas. Outro benefício do uso de tokens é que o verificador de senha (que é considerado confidencial) nunca fica armazenado ou disponível na memória.
Conexões de Cliente que Usam um Verificador de Senha do Banco de Dados do IAM
Depois de configurar a autorização necessária para o usuário do IAM, esse usuário poderá fazer log-in usando o aplicativo cliente existente, como SQL*Plus ou SQLcl, sem configuração adicional.
O usuário do IAM informa o nome de usuário e a senha do banco de dados do IAM (não a senha da console do Oracle Cloud Infrastructure [OCI]) usando qualquer cliente de banco de dados suportado no momento. A única restrição é que a versão do cliente de banco de dados seja a do Oracle Database release 12.1.0.2 ou mais recente para usar as senhas do Oracle Database 12c. O cliente do banco de dados deve poder usar o verificador de senha 12C. O uso da criptografia do verificador 11G não é suportado com o IAM. Nenhuma configuração especial do cliente ou da ferramenta é necessária para que o usuário do IAM conecte-se à instância do Autonomous AI Database on Dedicated Exadata Infrastructure.
Conexões de Cliente que Usam um Token
Para acesso de token do serviço de IAM ao Autonomous AI Database on Dedicated Exadata Infrastructure, o aplicativo cliente ou ferramenta solicita um token de banco de Dados do serviço de IAM para o usuário do IAM.
O aplicativo cliente passará o token do banco de dados diretamente para o cliente do banco de dados por meio da API do cliente do banco de dados.
Se o aplicativo ou a ferramenta não tiverem sido atualizados para solicitar um token do IAM, o usuário do IAM poderá usar a CLI (interface de linha de comando) do Oracle Cloud Infrastructure (OCI) para solicitar e armazenar o token do banco de dados. Você pode solicitar um token de acesso (db-token) ao banco de dados usando as seguintes credenciais:
- Tokens de segurança (com autenticação do IAM), tokens de delegação (no cloud shell do OCI) e
API-keys, que são credenciais que representam o usuário do IAM para ativar a autenticação - Tokens de controlador de instâncias, que permitem que as instâncias sejam atores (ou entidades) autorizados a executar ações nos recursos de serviço após a autenticação
- Token de controlador de recursos, que é uma credencial que permite que o aplicativo se autentique em outros serviços do Oracle Cloud Infrastructure
Quando os usuários do IAM fazem log-in no cliente com um log-in de barra / e o parâmetro OCI_IAM é configurado (sqlnet.ora, tnsnames.ora ou como parte de uma string de conexão), o cliente do banco de dados recupera o token do banco de dados de um arquivo. Se o usuário do IAM enviar um nome de usuário e uma senha, a conexão usará o acesso do verificador de banco de dados do IAM descrito para conexões de cliente que usam verificadores de senha de banco de dados do IAM. As instruções deste guia mostram como usar a CLI do OCI como auxiliar para o token de banco de dados. Se o aplicativo ou a ferramenta tiverem sido atualizados para trabalhar com o IAM, siga as instruções do aplicativo ou da ferramenta. Alguns casos de uso comuns incluem o seguinte: SQL*Plus no local, SQLcl no local, SQL*Plus no Cloud Shell ou aplicativos que usam wallets SEP.
-
Configurar uma conexão de cliente para o SQL*Plus para usar uma senha do banco de dados do IAM.
-
Configure uma conexão de cliente para o SQL*Plus que use um token do serviço IAM.
-
Acesse o banco de dados por meio de um token de banco de dados do Oracle Cloud Infrastructure IAM usando um controlador de instâncias.
Configurando uma Conexão de Cliente para o SQL*Plus que Usa uma Senha do Banco de Dados do IAM
Você pode configurar o SQL*Plus para usar uma senha do banco de dados do IAM.
Configurando uma Conexão do Cliente para o SQL*Plus que Usa um Token do Serviço IAM
Você pode configurar uma conexão de cliente para o SQL*Plus que usa um token do serviço IAM.
TOKEN_AUTH, o usuário do IAM poderá fazer log-on na instância do Autonomous AI Database executando o comando a seguir para iniciar oSQL*Plus. Você pode incluir o próprio descritor de conexão ou usar o nome do descritor do arquivo tnsnames.ora.connect /@exampledb_highOu:
connect /@(description=
(retry_count=20)(retry_delay=3)
(address=(protocol=tcps)(port=1522)
(host=example.us-phoenix-1.oraclecloud.com))
(connect_data=(service_name=aaabbbccc_exampledb_high.example.oraclecloud.com))
(security=(ssl_server_cert_dn="CN=example.uscom-east-1.oraclecloud.com,
OU=Oracle BMCS US, O=Example Corporation,
L=Redwood City, ST=California, C=US")
(TOKEN_AUTH=OCI_TOKEN)))
O cliente de banco de dados já está configurado para obter um db-token porque o parâmetro TOKEN_AUTH já foi definido, por meio do arquivo sqlnet.ora ou em uma string de conexão. O cliente de banco de dados obtém a db-token e a assina usando a chave privada e, em seguida, envia o token para o Autonomous AI Database. Se um nome de usuário do IAM e uma senha de banco de dados do IAM forem especificados, em vez de uma barra /, o cliente de banco de dados estabelecerá conexão usando a senha, em vez de usar db-token.
Usar Controlador de Instâncias para Acessar o Autonomous AI Database com Autenticação de IAM (Identity and Access Management)
Depois que o usuário ADMIN ativa o Oracle Cloud Infrastructure IAM no Autonomous AI Database, um aplicativo pode acessar o banco do dados por meio de um token de banco do Oracle Cloud Infrastructure IAM usando um agente de instância.
Consulte Acessando a API do Oracle Cloud Infrastructure com Controladores de Instâncias para obter mais informações.
Configurar Autenticação de Proxy
A autenticação de proxy permite que um usuário do IAM faça proxy em um esquema para tarefas como manutenção de aplicativos.
A autenticação de proxy geralmente é usada para autenticar o usuário real e, em seguida, autorizá-lo a usar um esquema com os privilégios e atribuições do esquema para gerenciar um aplicativo. Alternativas como o compartilhamento da senha do esquema do aplicativo são consideradas perigosas e não podem verificar qual usuário real executou uma ação.
Um caso de uso pode estar em um ambiente no qual um usuário do IAM designado que é um administrador de banco de dados de aplicativo pode se autenticar usando suas credenciais e, em seguida, fazer proxy para um usuário de esquema (por exemplo, hrapp). Essa autenticação permite que o administrador do IAM use os privilégios e atribuições hrapp como usuário hrapp para executar a manutenção do aplicativo e ainda use suas credenciais do IAM para autenticação. Um administrador de banco de dados de aplicativo pode acessar o banco de dados e, em seguida, fazer proxy em um esquema de aplicativo para gerenciar esse esquema.
Você pode configurar a autenticação de proxy para os métodos de autenticação de senha e de token.
Configurando a Autenticação de Proxy para o Usuário do IAM
Para configurar a autenticação de proxy para um usuário do IAM, o usuário do IAM já deve ter um mapeamento para um esquema global (mapeamento exclusivo ou compartilhado). Um esquema separado para o usuário do IAM para proxy também deve estar disponível.
-
Faça log-in na instância do Autonomous AI Database como um usuário que tenha os privilégios de sistema
ALTER USER. -
Conceda permissão para que o usuário do IAM faça proxy para a conta de usuário do banco de dados local. Um usuário do IAM não pode ser referenciado no comando para que o proxy seja criado entre o usuário global do banco de dados (mapeado para o usuário do IAM) e o usuário do banco de dados de destino. No exemplo a seguir,
hrappé o esquema para o proxy epeterfitch_schemaé o usuário global do banco de dados mapeado exclusivamente para o usuáriopeterfitch.ALTER USER hrapp GRANT CONNECT THROUGH peterfitch_schema;
Nesse estágio, o usuário do IAM pode fazer log-in na instância do banco de dados usando o proxy. Por exemplo:
CONNECT peterfitch[hrapp]@connect_string
Enter password: passwordCONNECT [hrapp]/@connect_stringValidando a Autenticação de Proxy do Usuário do IAM
-
Faça log-in na instância do Autonomous AI Database como usuário que tenha os privilégios do sistema
CREATE USEReALTER USER. -
Conecte-se como usuário do IAM e execute os comandos
SHOW USEReSELECT SYS_CONTEXT. Por exemplo, suponha que você queira verificar a autenticação de proxy do usuário do IAMpeterfitchquando ele fizer proxy para o usuário do banco de dadoshrapp. Você precisará estabelecer conexão com o banco de dados usando os diferentes tipos de métodos de autenticação mostrados aqui, mas a saída dos comandos que você executar será a mesma para todos os tipos.-
Para autenticação baseada em senha:
CONNECT peterfitch[hrapp]/password\!@connect_string SHOW USER; --The output should be USER is "HRAPP" SELECT SYS_CONTEXT('USERENV','AUTHENTICATION_METHOD') FROM DUAL; --The output should be "PASSWORD_GLOBAL" SELECT SYS_CONTEXT('USERENV','PROXY_USER') FROM DUAL; --The output should be "PETERFITCH_SCHEMA" SELECT SYS_CONTEXT('USERENV','CURRENT_USER') FROM DUAL; --The output should be "HRAPP" -
Para autenticação baseada em token:
CONNECT [hrapp]/@connect_string SHOW USER; --The output should be USER is "HRAPP " SELECT SYS_CONTEXT('USERENV','AUTHENTICATION_METHOD') FROM DUAL; --The output should be "TOKEN_GLOBAL" SELECT SYS_CONTEXT('USERENV','PROXY_USER') FROM DUAL; --The output should be "PETERFITCH_SCHEMA" SELECT SYS_CONTEXT('USERENV','CURRENT_USER') FROM DUAL; --The output should be "HRAPP"
-
Usar um Link de Banco de Dados com Usuários Autenticados do Serviço IAM
Você pode usar um link para estabelecer conexão de uma instância do Autonomous AI Database com outra como um usuário do serviço IAM do Oracle Cloud Infrastructure.
Você pode usar o link de banco de dados de usuário conectado ou fixo para estabelecer conexão com um Autonomous AI Database como um usuário do Oracle Cloud Infrastructure IAM.
Observação:
O link do banco de dados de usuário atual não é suportado para estabelecer conexão com um Autonomous AI Database como um usuário do Oracle Cloud Infrastructure IAM.-
Link de Banco de Dados de Usuário Conectado: Para um link de banco de dados de usuário conectado, um usuário do serviço IAM deve ser mapeado para um esquema nos bancos de dados de origem e de destino conectados por um link de banco de dados. Você pode usar um verificador de senha do banco de dados ou um token de banco de dados do serviço IAM para usar um link de banco de dados do usuário conectado.
-
Link de Banco de Dados de Usuário Fixo: Um link de banco de dados de usuário fixo pode ser criado usando um usuário do banco de dados ou um usuário do serviço IAM. Ao usar um usuário do serviço IAM como um link de banco de dados de usuário fixo, o usuário do serviço IAM deve ter um mapeamento de esquema no banco de dados de destino. O usuário do serviço IAM para um link de banco de dados só pode ser configurado com um verificador de senha.
Desativar Autenticação do Serviço IAM (Identity and Access Management) no Autonomous AI Database
Descreve as etapas para desabilitar o acesso para o usuário da autenticação externa de IAM do Autonomous AI Database
ALTER SYSTEM, conforme mostrado abaixo:ALTER SYSTEM RESET IDENTITY_PROVIDER_TYPE SCOPE=BOTH;
Se você também quiser atualizar do recurso o acesso ao IAM, ou seja, Autonomous Container Database ou Autonomous AI Database, talvez precise remover ou modificar o grupo do IAM e as políticas configuradas para permitir acesso ao IAM por esses recursos.
Observações para Usar Ferramentas do Serviço Autonomous AI Database com Autenticação do IAM (Identity and Access Management)
Fornece observações para usar as ferramentas Autonomous AI Database com autenticação do serviço IAM ativada.
- O Oracle APEX não é suportado para usuários do serviço IAM com o Autonomous AI Database. Consulte Acesse os Oracle Application Express Administration Services para obter informações sobre como usar usuários regulares de banco de dados com o serviço Autonomous AI Database.
-
O Database Actions não é suportado para usuários do serviço IAM com o serviço Autonomous AI Database. Consulte Ativando o Acesso do Usuário ao Database Actions para obter informações sobre como usar usuários regulares de banco de dados com o serviço Autonomous AI Database.
