Configurar o Controle de Acesso Baseado em Atribuição Automaticamente usando um Script
Configure o RBAC (Role-Based Access Control) para autenticação do IAM automaticamente usando um script no Oracle Cloud Infrastructure.
Você pode executar o script no Cloud Shell para gerar arquivos de Conexões do IAM rapidamente. Esse processo de automação reduz significativamente o tempo necessário para executar a configuração detalhada do RBAC. Depois que um usuário Administrador gera o arquivo Conexões, ele pode ser compartilhado na organização para permitir o acesso ao banco de dados em Suplementos de Planilha.
A seção a seguir descreve como:
-
Gerar arquivo Conexões usando script
-
Fazer download do arquivo Conexões
-
Permitir acesso para usuários de domínio
Pré-requisitos
Para usar o script para configuração RBAC, você deve ter:
-
Uma conta de Administrador no Oracle Cloud Infrastructure
-
Um domínio do IAM
-
Uma instância e um esquema do Autonomous AI Database
Gerar Arquivo de Conexões usando Script
Observação:
Embora o script execute as tarefas de configuração automaticamente, ele é um script interativo, que exige que as entradas do usuário continuem.
Faça log-in na console do Oracle Cloud Infrastructure, se ainda não tiver feito log-in, e faça o seguinte.
-
No ícone de Ferramentas do Desenvolvedor ao lado da região, abra o Cloud Shell e execute o arquivo de script na janela de terminal.
adb-create-cred.sh -
O script descobre se sua conta do Oracle Cloud tem uma chave de API e uma impressão digital existentes. Se não for encontrado, o script criará um par de chaves para você.
You have an existing API Key and Fingerprint! Do you want to try to reuse them? (y/n): yPressione y para reutilizar as teclas existentes. O script cria sua credencial nativa em arquivos SQL e JSON. Se quiser gerar um novo par de chaves de API, pressione n.
-
O script oferece a geração de um Perfil do AI para seu banco de dados.
Proceed to generate the AI Profile script? (y/n): nNeste exemplo, pressione n para continuar sem o Perfil do AI.
-
Gere Conexões do IAM para Suplementos de Planilha.
Proceed to generate the Spreadsheet add-ins IAM connection? (y/n): yPressione y para continuar.
-
Selecione o domínio com os usuários que você deseja permitir estabelecer conexão com a instância do banco de dados. Insira o número correspondente nos domínios disponíveis.
Select a domain (1-3):O script cria o seguinte:-
Um atributo personalizado do usuário denominado Suplementos de Planilha RBAC
-
Um aplicativo integrado de domínio chamado Suplementos de Planilha
-
Uma reivindicação personalizada JWT
O script também gera um script PL/SQL,
create_jwt_profile.sql, contendo informações de perfil JWT.Observação:
Você pode reutilizar o atributo de usuário existente e a reivindicação personalizada ou criar novos usando o script. Se um aplicativo integrado já existir, você poderá criar um novo, mas qualquer conexão antiga usada pelo aplicativo se tornará inválida.
-
-
Execute o script de credencial para o esquema necessário no seu Autonomous AI Database.
Proceed to run the Credential Scripts on your Autonomous Database? (y/n): yPressione y para continuar.
-
Selecione o compartimento e o banco de dados no qual o esquema reside.
Select the number pertaining to your Compartment: ... Select the number pertaining to your Autonomous Database: -
Você pode usar uma Wallet do Cloud existente ou criar uma nova, se necessário. Se o script descobrir uma Cloud Wallet existente, ele solicitará se você deseja reutilizá-la.
You have an existing Wallet File for [DB_NAME]. Do you want to reuse it? (y/n):Se uma wallet não existir, você poderá configurar uma nova.
-
Especifique as credenciais de log-in do esquema ao qual você deseja permitir a conexão do RBAC.
Enter Autonomous Database username (ADMIN): Enter Autonomous Database password:O script executa o arquivo SQL que contém as informações do Perfil JWT criadas anteriormente e gera um arquivo de Conexões do serviço IAM no formato JSON em sua pasta home.Spreadsheet connection file: [$HOME/iam_connection_[DB_NAME]_[schema].json] created.Observação:
Você pode copiar o nome do arquivo Conexões, excluindo a parte
$HOME/, e usar o mesmo nome durante o download do arquivo. Se o script ainda estiver em execução, usar Ctrl + C para copiar pode interromper ou interromper o script com força. -
Por fim, o script solicita se você deseja repetir as etapas e criar o arquivo Conexões para outro banco de dados ou sair do script. Assim, você pode configurar o acesso do usuário do domínio para vários esquemas.
Faça Download do Arquivo Connections
-
Na janela do Cloud Shell, clique no ícone de engrenagem para abrir o menu do Cloud Shell e clique em Download.
-
Você pode colar o mesmo nome de arquivo copiado anteriormente ou especificar um novo nome para o arquivo Conexões no formato JSON.
-
Clique em Fazer Download na janela de mensagens para fazer download do arquivo Conexões.
Você pode usar o arquivo Conexões em Suplementos de Planilha para estabelecer conexão com seu banco de dados e compartilhá-lo com outros usuários.
Permitir acesso para usuários de domínio
Faça log-in na console do Oracle Cloud Infrastructure, se ainda não tiver feito log-in, e faça o seguinte.
-
Clique no menu de hambúrguer e vá para Identidade e Segurança e selecione Domínios.
-
Em Nome, clique no domínio para o qual você criou o arquivo Conexões, por exemplo, Padrão.
-
Vá para a guia Gerenciamento de Usuários e clique no nome de usuário cujo acesso você deseja permitir.
-
Clique em Editar Usuário para modificar as informações do usuário.
-
Role para baixo até a seção Outras informações. No campo Spreadsheet add-ins RBAC, digite
SQL Developer. -
Clique em Salvar Alterações para adicionar a função ao usuário.
A partir do ORDS 26.2, as funções do ORDS são desativadas por padrão. Para usar uma função ORDS, você deve ativar a função. Por exemplo:
BEGIN
ords.set_property(
p_key => 'security.jwt.profile.allowed.roles',
p_value => 'SQL Developer'
);
COMMIT;
END;
/
Para obter mais informações sobre atribuições de usuário do ORDS, consulte Sobre Atribuições de Usuário do Oracle REST Data Services.
Tópico principal: Usar Controle de Acesso Baseado em Atribuição para Autenticação do IAM