☕ Um Café no Bellacosa Mainframe
Gostou do conteúdo? Ajude a manter o café quente, o COBOL compilando e o mainframe acordado. 😄
☕ Pague um café ao Bellacosa

Translate

Mostrar mensagens com a etiqueta omvs. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta omvs. Mostrar todas as mensagens

sexta-feira, 15 de julho de 2022

☕💥 A Jornada do Sysprog Padawan – ACEE : Anatomia do Crachá Mágico do Reino IBM Z - Parte II

 

Bellacosa Mainframe apresenta o ACEE Parte II

☕💥 A Jornada do Sysprog Padawan – Parte 2

ACEE – Anatomia do Crachá Mágico do Reino IBM Z

O que realmente existe dentro de um ACEE?

"Todo Sysprog olha para um dump. O Sysprog Jedi conversa com os control blocks."

Bellacosa Mainframe


Introdução

Na Parte 1 descobrimos que o ACEE é praticamente o crachá encantado do Reino IBM Z.

Mas afinal...

O que existe dentro dele?

Ele possui apenas o userid?

Possui senha?

Está criptografado?

Pode ser alterado?

Quem consegue enxergá-lo?

Quanto espaço ocupa?

É isso que vamos explorar.


Antes de tudo

O ACEE é um Control Block do RACF.

Ele é criado em memória.

Não é VSAM.

Não é DB2.

Não é Dataset.

Não é USS File.

Ele simplesmente nasce, vive durante a sessão e desaparece ao final dela.


Onde mora o ACEE?

Depende.

Pode estar associado a:

TCB

Task Control Block


ASCB

Address Space Control Block


SRB

Service Request Block


OMVS Process


DB2 Thread


CICS Task


IMS Region


Started Task


Anatomia simplificada

Podemos imaginar o ACEE como uma estrutura lógica.

+--------------------------------+
| ACEE HEADER                    |
+--------------------------------+
| USERID                         |
+--------------------------------+
| GROUPS                         |
+--------------------------------+
| SPECIAL FLAGS                  |
+--------------------------------+
| UID / GID                      |
+--------------------------------+
| CERTIFICATES                   |
+--------------------------------+
| MFA                            |
+--------------------------------+
| SECURITY LABELS                |
+--------------------------------+
| CUSTOM ATTRIBUTES              |
+--------------------------------+
| POINTERS                       |
+--------------------------------+

Naturalmente a IBM não documenta tudo detalhadamente para programação de aplicações comuns.

Mas Sysprogs adoram estudar essas estruturas.


Campo 1 — USERID

O mais conhecido.

Exemplo

VBELLACO

Pode possuir até oito caracteres.


Ele representa:

Quem você é.


Mas atenção.

Senha NÃO fica armazenada.


Passphrase também não.


Hash de senha também não.


Segurança agradece.


Campo 2 — Nome do Grupo

Exemplo

SYS1

ou

MQADMIN

Grupo primário.


Grupo conectado.


Grupo default.


Campo 3 — Connected Groups

Pode haver dezenas.

Exemplo

DBA

SYSOPER

MQADM

IMSADM

DEVOPS

SECURITY

Essas informações permitem decisões rápidas.


Sem voltar ao banco RACF.


Campo 4 — Special Attributes

Muito importante.


Flag SPECIAL

Administrador.


OPERATIONS

Super usuário RACF.


AUDITOR

Auditoria.


CLAUTH

Gerencia Classes.


ROAUDIT

Read-only.


Curiosidade Bellacosa ☕

SPECIAL é praticamente:

A chave mestra do castelo.


OPERATIONS

É o passe VIP.


AUDITOR

É o fiscal do reino.


Campo 5 — OMVS Segment

Chegamos ao USS.


UID

Exemplo

1000

GID

100

HOME

/u/vbellaco

PROGRAM

/bin/sh

Campo 6 — Certificados

Muito usado hoje.


Digital Certificate


PKI


TLS


SSH


MQ


zOS Connect


API Gateway


Open Banking


PIX


Pode existir referência ao certificado associado ao usuário.


Campo 7 — MFA

Nos ambientes modernos.


RSA


TOTP


Smartcard


Passkey


FIDO


Token Context


Campo 8 — Labels

Pouco utilizados.

Mas interessantes.


MLS

Mandatory Access Control


Exemplos

PUBLIC


CONFIDENTIAL


SECRET


TOPSECRET

Muito comum em:

Defesa

Governo

Militar


Campo 9 — ACEE Tokens

Pouco comentado.

Muito poderoso.


Permitem passar contexto.


CICS utiliza.


DB2 utiliza.


MQ utiliza.


Subsystems utilizam.


Cross-memory utiliza.


Campo 10 — Ponteiros

Sysprog gosta.


Ponteiro para:

TCB

ASCB

Groups

Security Labels

OMVS

Certificates


É um verdadeiro mini ecossistema.


Quanto memória consome?

Pergunta clássica.


Resposta curta.

Depende.


Usuário simples

Alguns KB.


Usuário com muitos grupos

Mais.


Certificados

Mais.


MFA

Mais.


Custom Attributes

Mais.


Na prática.

Centenas.

Milhares.

De ACEEs.

Não representam um problema.


O impacto em CPU

Muito pequeno.


Comparado ao custo de consultar RACF.


ACEE economiza:

CPU

I/O

Locks

ENQ

Contention


Em um banco.

100 mil sessões.

Economia enorme.


z/OS 3.1

Novidade interessante.


Custom Fields.


Permitem aplicações modernas.

Consultar contexto.


Sem voltar ao RACF.


Menos latência.


Menos I/O.


Mais escalabilidade.


O que NÃO existe no ACEE?

Senha.


Passphrase.


Hash.


Histórico.


Dataset profiles.


Banco RACF completo.


Quem pode enxergar um ACEE?

Usuário comum?

Não.


COBOL?

Normalmente não.


Sysprog?

Sim.


IPCS

Sim.


Dumps

Sim.


Ferramentas IBM

Sim.


IPCS

Nosso sabre de luz.


Dump

IPCS

VERBX

Interpretar ACEE


Ferramentas comerciais ajudam bastante.


zSecure


Security Server utilities


IBM Support Tools


Easter Egg Bellacosa ☕

Se você abrir um dump e encontrar:

TCB

ASCB

ACEE

UID

SPECIAL

CERT


Parabéns.

Você acabou de entrar no clube dos Sysprogs que começam a conversar com os control blocks.


Analogia Bellacosa

Imagine novamente o castelo.


No crachá mágico existem:

Nome

Guilda

Permissões

Passaporte

Cartão diplomático

Etiqueta de segurança

Passe do metrô USS

Certificado digital

Token MFA


Tudo em um único objeto.


E o melhor.

O guarda SAF apenas olha para ele.


Não precisa voltar ao cartório RACF.


Economizando tempo.

CPU.

E trabalho.


Resumo para guardar

CampoFunção
USERIDIdentidade
GROUPSGrupos
SPECIALAdministração
UIDUSS
GIDUSS
CERTTLS
MFAAutenticação
LABELMLS
TOKENContexto
POINTERSLigações internas

☕💥 Continua na Parte 3

O Nascimento do ACEE

Como ele é criado no TSO, CICS, IMS, Batch, Started Tasks, USS, MQ e DB2, incluindo RACROUTE VERIFY, SAF, FASTAUTH, diagramas passo a passo e exemplos reais de fluxo de autenticação.


terça-feira, 8 de janeiro de 2008

🧠 OMVS Shell no z/OS

 

Bellacosa Mainframe com o Unix no Mainframe ZOS conheça o Posix OMVS shell

🧠 OMVS Shell no z/OS

O Unix que mora dentro do Mainframe

👉 Ao estilo Bellacosa Mainframe


🎬 Abertura – “Tem Unix dentro do meu z/OS?”

Sim.
E não é gambiarra.
Não é emulação.
Não é “meio Unix”.

👉 É Unix de verdade, certificado POSIX, rodando lado a lado com JES2, CICS, DB2 e batch.

O nome da criatura é:

z/OS UNIX System Services (USS)

E o portal de entrada é o OMVS shell.

Se você é padawan de mainframe e ainda acha que tudo é JCL + ISPF, prepare-se:
o OMVS vai expandir sua visão do universo.


🕰️ Um pouco de história (porque Bellacosa não pula contexto)

Anos 90.
O mundo gritava: “Unix! TCP/IP! Open Systems!”

A IBM poderia ter brigado.
Mas fez o que sempre faz melhor:

👉 Engoliu o mundo… e integrou.

Nasce o USS:

  • Compatível com POSIX

  • Suporte a C, Java, shell scripts

  • Base para:

    • TCP/IP

    • OpenSSH

    • FTP

    • NFS

    • WebSphere

    • DB2 Utilities

    • Ferramentas modernas

👉 Sem OMVS, z/OS não conversa com o mundo moderno.


🚪 Entrando no OMVS – Primeiro contato do Padawan

Opção 1️⃣ – ISPF Command Line

OMVS

Boom 💥
Você saiu do mundo verde clássico e entrou no shell Unix do mainframe.


Opção 2️⃣ – Via TSO

TSO OMVS

Mesmo efeito.
Outra porta do mesmo templo.


Opção 3️⃣ – SSH (modo Jedi)

ssh usuario@hostname

👉 Aqui você já nasce adulto.
Terminal moderno, scripts, automação.


🐣 Onde estou? Quem sou eu?

Primeiro comando que todo padawan executa:

pwd

Resposta típica:

/u/renato

📌 /u é o “HOME” padrão dos usuários USS.

Confirme quem você é:

whoami

📁 Navegação básica (sem medo)

ls # lista arquivos ls -l # lista detalhada ls -a # mostra arquivos ocultos cd dir # entra no diretório cd .. # sobe um nível cd # volta pro HOME

👉 Sim, igual Linux.
👉 Não, não é coincidência.


📄 Trabalhando com arquivos

touch arquivo.txt vi arquivo.txt cat arquivo.txt more arquivo.txt less arquivo.txt rm arquivo.txt cp a b mv a b

⚠️ Cuidado Bellacosa
rm no USS não pergunta.
Não tem ISPF UNDO.
Aqui é vida real.


🧬 Comandos essenciais do OMVS (lista de ouro)

Sistema

uname -a # info do sistema df -k # espaço em disco du -sk * # tamanho de diretórios ps -ef # processos top # monitor em tempo real

Usuários e permissões

id chmod 755 file chown user:grp file

📌 Sim, RACF manda por baixo.
USS respeita UID, GID, mas quem manda é o SAF.


Processos

ps -ef | grep nome kill -9 PID

👉 Sim, você pode matar processo.
👉 Não, não mate coisa que você não entende 😈


🔄 “Bellacosa, como eu VOLTO pro z/OS?”

Pergunta clássica.
Resposta simples:

exit

Ou:

logout

👉 Você volta direto pro TSO/ISPF, são e salvo.

📌 Não existe reboot do mainframe porque você saiu do OMVS.
Relaxa.


🧙‍♂️ Truques & Dicas de Velho Jedi

🧩 1. Dataset ≠ Arquivo USS

USS usa HFS/ZFS, não dataset.

Mas existe ponte:

cat "//'HLQ.DATASET'"

🤯 Sim.
Dataset como se fosse arquivo.


🧩 2. Shell scripts no z/OS

#!/bin/sh echo "Hello, Mainframe Unix!"

Executa:

chmod +x script.sh ./script.sh

👉 Batch + Shell = automação poderosa.


🧩 3. Variáveis de ambiente

export PATH=$PATH:/usr/local/bin

👉 Java, DB2, ferramentas modernas dependem disso.


🧩 4. Histórico secreto

Setinha ↑ ↓ funciona 😏
Sim, até no OMVS.


🥚 Easter Eggs do USS

🥚 echo $?
Mostra o return code do último comando
👉 Sim, tipo COND CODE do Unix.

🥚 /bin/date
Unix date rodando no mainframe desde os anos 90.

🥚 Strings Unix em dumps z/OS
Sim, você já viu stack trace Unix dentro de dump mainframe.
Agora sabe por quê.


🤔 Comentários Bellacosa (sem filtro)

👉 OMVS é:

  • Subestimado

  • Mal ensinado

  • Essencial

👉 Quem ignora USS:

  • Sofre com FTP

  • Não entende WebSphere

  • Apanha em troubleshooting TCP/IP

👉 Mainframe não é só batch.
É plataforma híbrida antes de “cloud híbrida” virar buzzword.


🧑‍🎓 Caminho do Padawan → Jedi

Passo a passo recomendado:

1️⃣ Aprender navegação básica
2️⃣ Editar arquivos com vi
3️⃣ Entender permissões
4️⃣ Usar ps, kill, df
5️⃣ Integrar shell com batch
6️⃣ Acessar via SSH
7️⃣ Automatizar tarefas
8️⃣ Entender RACF + USS
9️⃣ Troubleshooting real
🔟 Virar referência na equipe 😎


🏁 Encerramento

OMVS não é “opcional”.
É parte do DNA moderno do z/OS.

Quem domina OMVS:

  • Entende o passado

  • Opera o presente

  • Está pronto pro futuro

👉 Mainframe não é velho.
Velho é quem não explora tudo o que ele tem.


Vagner Renato Bellacosa, IBM Champion e especialista em IBM Mainframe
IBM Z17 SYSTEM ONLINE
Sobre o autor

Vagner Renato Bellacosa

IBM Champion 2026 • Especialista em IBM Mainframe

Vagner Renato Bellacosa trabalha com IBM Mainframe desde 1988 , é IBM Champion e especialista em COBOL, CICS, Db2, z/OS e IBM Z. Compartilha experiências profissionais, conhecimento técnico, história da computação e práticas do universo mainframe para aproximar novas gerações das tecnologias que sustentam empresas, bancos e governos ao redor do mundo.

IBM Champion IBM Z COBOL CICS Db2 z/OS Mainframe desde 1988
GitHub LinkedIn
Inicializando conteúdo...