Todos os produtos
Search
Central de documentação

Data Management:Alterações de SQL

Última atualização: Jun 27, 2026

O recurso SQL Correct é o ponto de entrada para executar alterações de SQL e exige um alto nível de segurança. Ao enviar um ticket para aprovação, um conjunto de regras de segurança verifica a solicitação. Somente instruções SQL aprovadas nessa verificação podem ser executadas.

Pré-requisitos

Você deve ter a função de Administrator, DBA ou Security Administrator.

Informações básicas

As regras de segurança no Data Management (DMS) oferecem recursos flexíveis de linguagem específica de domínio (DSL). Isso permite personalizar os níveis de risco conforme necessário e aplicar fluxos de trabalho de aprovação distintos para alterações com diferentes riscos. Por exemplo, você pode restringir rigorosamente a execução de SQL ou permitir todas as instruções SQL de forma mais permissiva.

Pontos de verificação do módulo SQL Change

Ponto de verificação

Descrição

Exemplo

Basic Configuration Item

Esta seção contém cinco regras padrão:

  • Default approval template for data changes: O ID do modelo de aprovação padrão para tickets de alteração de dados é 853, e o aprovador é o DBA.

    Nota

    Para alterar o modelo de aprovação padrão, consulte Alterar o modelo de aprovação padrão.

  • Risk level list for data changes: Os níveis de risco avaliam os riscos das alterações nos tickets. Defina diferentes níveis de risco e fluxos de trabalho de aprovação para diversos cenários. Este item é usado principalmente nos pontos de verificação Risk Identification Rules e Risk Approval Rules.

    Quatro níveis de risco padrão estão disponíveis:

    • LOW: Baixo risco

    • MIDDLE: Risco médio

    • HIGH: Alto risco

    • HIGHEST: Risco crítico

  • Support for simple mode in data import: Define se há suporte ao modo simples na criação de tickets de importação de dados para bancos de dados que utilizam esta regra de segurança. Para mais informações, consulte Importação de dados.

  • Allow Skipping The Affected Rows Check For Standard Data Changes: Se você ativar esta regra, o DMS proíbe ignorar a verificação de linhas afetadas em tickets de alteração de dados padrão durante a etapa de pré-verificação. Caso contrário, essa verificação pode ser ignorada.

  • Prohibit submitting normal data change tickets with inconsistent row count checks: Quando esta regra está ativada, não é possível enviar tickets de alteração de dados normais com verificação inconsistente de contagem de linhas. Se desativada, o envio é permitido.

-

SQL execution rules

Restringe as instruções SQL executáveis na janela SQL. Apenas instruções permitidas podem ser executadas.

Nota

Se duas regras conflitantes estiverem ativadas, a regra mais restritiva prevalece.

Por exemplo, se as duas regras abaixo estiverem ativadas simultaneamente, o sistema aplica a segunda regra.

  • Permitir que todas as instruções DML sejam executadas diretamente no console SQL.

  • Proibir que todas as instruções DML sejam executadas diretamente no console SQL. Elas devem ser executadas por meio de tickets.

Para permitir que apenas instruções DML modifiquem o banco de dados de produção online, adicione a seguinte regra de execução de SQL:

Premissas

if
  @fac.env_type not in ['product']
  and
  @fac.sql_type in [ 'UPDATE','DELETE','INSERT']
then
  @act.allow_submit
end

Significado: Se o ambiente do banco de dados não for de produção e a instrução SQL for do tipo UPDATE, DELETE ou INSERT, a execução da instrução SQL será permitida.

Risk Identification Rules

Identifica o nível de risco dos tickets enviados. Personalize os níveis de risco com base em condições como ambiente do banco de dados, número de linhas afetadas e tipo de SQL.

Nota

Regras de segurança diferentes classificam uma tarefa de alteração com níveis de risco distintos. O nível de risco final corresponde ao maior nível entre todos os marcados.

Por exemplo, uma tarefa de alteração de SQL com 5 riscos baixos, 3 riscos médios e 1 risco alto será classificada como alto risco.

Para definir ambientes offline como baixo risco, adicione a seguinte regra de identificação de risco:

if
  @fac.env_type not in ['product','pre']
then
  @act.mark_risk 'low' 'Low risk: offline environment'
end

Significado: Se o ambiente do banco de dados não for de produção, o nível de risco é baixo.

Risk Approval Rules

Configure ou personalize regras de aprovação para diferentes níveis de risco.

Se uma alteração de banco de dados não corresponder a nenhum nível de risco no ponto de verificação Risk Identification Rules, ela utilizará o fluxo de trabalho de aprovação especificado pelo Default approval template for data changes na seção Basic Configuration Item.

Por padrão, um ambiente de staging é considerado de baixo risco e não requer aprovação.

Batch data import rules

Regras de validação aplicáveis a tickets de Data Import.

Permite a importação em lote de instruções de inserção.

Alterar o modelo de aprovação padrão

  1. Faça login no DMS 5.0.

  2. Passe o ponteiro sobre o ícone 2023-01-28_15-57-17.png no canto superior esquerdo e escolha All Features > Security and disaster recovery (DBS) > Security Rules.

    Nota

    Se você estiver usando o console do DMS no modo normal, escolha Security and disaster recovery (DBS) > Security Rules na barra de navegação superior.

  3. Na aba Security Rules, localize o conjunto de regras desejado e clique em Edit na coluna Actions.

  4. No painel de navegação à esquerda da página Details, clique em SQL Changes.

  5. Em SQL Change, clique em Basic Configuration Item.

  6. Na linha Default approval template for data changes, clique em Edit na coluna Actions.

  7. Na caixa de diálogo Edit Configuration Item, clique em Switch Approval Template.

  8. Na caixa de diálogo Switch Approval Template, localize o modelo desejado e clique em Select na coluna Actions.

    Nota

    Se os tickets não exigirem aprovação, clique em Reset to Approval-Free para ignorar a etapa de aprovação.

  9. Clique em Submit.

Fatores e ações do módulo SQL Correct

Fatores

Fatores são variáveis internas do sistema. Use-os para obter informações de contexto para a verificação de regras de segurança, como o tipo de SQL e o número de linhas afetadas.

  • Todos os fatores começam com @fac. seguido pelo nome do fator.

  • Cada ponto de verificação nos módulos disponibiliza fatores específicos.

Tabela 1. Lista de fatores

Fator

Descrição

@fac.env_type

O tipo de ambiente. O valor corresponde ao identificador do ambiente, como DEV ou PRODUCT. Para mais informações, consulte Ambientes de instância.

@fac.sql_type

O tipo do script SQL, como UPDATE ou INSERT. Para mais informações, consulte a descrição das subclasses de SQL em SQLConsole.

@fac.detail_type

O tipo de alteração de dados:

  • COMMON: Alteração normal de dados

  • CHUNK_DML: Alteração de dados sem bloqueio

  • PROCEDURE: Procedimento armazenado

  • CRON_CLEAR_DATA: Limpeza agendada de tabela

  • BIG_FILE: Importação de dados em lote

@fac.is_logic

Indica se o banco de dados é lógico.

@fac.extra_info

Outras informações de alteração. Este fator não está em uso.

@fac.is_ignore_affect_rows

Indica se a verificação deve ser ignorada.

@fac.insert_rows

O número de linhas afetadas por uma operação de inserção.

@fac.update_delete_rows

O número de linhas afetadas.

@fac.max_alter_table_size

O tamanho máximo do tablespace da tabela modificada.

@fac.is_has_security_column

Indica se o script SQL contém colunas sensíveis.

@fac.security_column_list

Lista das colunas sensíveis presentes no script SQL.

@fac.risk_level

O nível de risco detectado.

@fac.risk_reason

O motivo da detecção deste nível de risco.

@fac.table_name_list

Lista dos nomes das tabelas envolvidas na alteração de SQL. Exemplo:

if    
   'tb_order' in @fac.table_name_list or 'tb1_order' in @fac.table_name_list
then    
    @act.mark_risk 'high' 'High risk: Involves changes to the order table'
end

Significado: Se a alteração de SQL envolver a tabela tb_order ou tb1_order, o nível de risco será alto.

Ações

Uma ação é um comportamento executado pelo sistema quando a condição if é atendida. Os exemplos incluem proibir o envio de tickets, selecionar um fluxo de trabalho, permitir a execução e rejeitar a execução.

  • Todas as ações começam com @act. seguido pelo nome da ação.

  • Cada ponto de verificação nos módulos disponibiliza ações específicas.

Tabela 2. Lista de ações

Ação

Descrição

@act.allow_submit

Permite o envio do ticket para execução.

@act.allow_execute_direct

Permite execução direta no console SQL.

@act.forbid_execute

Proíbe a execução.

@act.mark_risk

Marca um risco. Uso: @act.mark_risk 'middle' 'Medium risk: production environment'.

@act.do_not_approve

Especifica o ID de um modelo de aprovação. Para mais informações, consulte Definir fluxos de trabalho de aprovação.

@act.choose_approve_template

@act.choose_approve_template_with_reason