sábado, dezembro 20, 2025

Como Liberar Acesso ao Banco Adabas no RACF

Para que o banco de dados Adabas funcione corretamente como uma Started Task (STC), ele precisa de uma identidade dentro do sistema. Diferente de um usuário comum que faz logon com senha, o Adabas precisa de um USERID associado ao seu procedimento para startar o banco de dados, para que o RACF possa validar suas permissões de leitura e escrita nos datasets (arquivos). Abaixo são os comandos que temos que dar no RACF;

ADDUSER (ADABAS80) DFLTGRP(STCGRP) OWNER(STCGRP) NOPASSWORD NAME('ADABAS DBID 80') DATA('ADABAS BANCO ID 80')
ALTUSER (ADABAS80) OMVS(HOME(/) PROGRAM(/bin/sh) UID(0000000000) SHARED)
RDEFINE STARTED ADABAS80*.* STDATA(USER(ADABAS80) GROUP(STCGRP) TRUSTED(YES))
PE 'ADABAS.*.ASSO1.**' ID(ADABAS80) ACCESS(UPDATE) GEN
SETROPTS RACLIST(STARTED) REFRESH

1. Criando o Usuário do Banco

O primeiro passo é criar o perfil do usuário. Note o parâmetro NOPASSWORD, que garante que ninguém consiga usar esse ID para fazer um logon interativo (TSO), aumentando a segurança.

ADDUSER (ADABAS80) DFLTGRP(STCGRP) OWNER(STCGRP) NOPASSWORD NAME('ADABAS DBID 80') DATA('ADABAS BANCO ID 80')

2. Configurando o Segmento OMVS

Muitas versões modernas do Adabas e ferramentas auxiliares exigem acesso a serviços do Unix System Services (USS). O comando abaixo define o perfil OMVS para o usuário:

ALTUSER (ADABAS80) OMVS(HOME(/) PROGRAM(/bin/sh) UID(0) SHARED) 

3. Associando o Procedimento ao Usuário (STARTED)

Aqui é onde a "mágica" acontece. Estamos dizendo ao RACF que qualquer procedure que comece com ADABAS80 deve rodar com a autoridade do usuário que criamos acima.

RDEFINE STARTED ADABAS80*.* STDATA(USER(ADABAS80) GROUP(STCGRP) TRUSTED(YES)) 

Nota: O parâmetro TRUSTED(YES) concede alta autoridade de sistema, evitando a necessidade de diversas regras de acesso individuais, mas deve ser usado seguindo as políticas de segurança da sua empresa.

4. Autorizando Acesso aos Datasets

O Adabas precisa de acesso de atualização nos arquivos de ASSO, DATA e WORK. Use o comando PERMIT (ou a abreviação PE) para liberar os nomes de datasets (DSNs):

PE 'ADABAS.*.ASSO1.**' ID(ADABAS80) ACCESS(UPDATE) GEN 

5. Atualizando as Tabelas em Memória

Por fim, é necessário dar um refresh o RACF para que as novas definições da classe STARTED entrem em vigor imediatamente.

SETROPTS RACLIST(STARTED) REFRESH 

0 comentários:

Enviar um comentário