Como configurar o Jet 4.0 para evitar que funções inseguras sejam executadas no Access 2000 e no Access 2002

Traduções deste artigo Traduções deste artigo
ID do artigo: 239482 - Exibir os produtos aos quais esse artigo se aplica.
Este artigo se aplica somente a um banco de dados do Microsoft Access (.mdb).

Moderado: Requer básica de macro, codificação e interoperabilidade habilidades.
Para uma versão deste artigo do Microsoft Office Access 2003, consulte 294698.

importante Este artigo contém informações sobre como modificar o registro. Antes de modificar o registro, certifique-se de backup e certifique-se que você saiba como restaurar o registro se ocorrer um problema. Para obter informações sobre como fazer backup, restaurar e editar o registro, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
256986Descrição do registro do Microsoft Windows
Expandir tudo | Recolher tudo

Neste artigo

Sumário

O mecanismo de banco de dados do Microsoft Jet 4.0 permite que você chamar não seguros Microsoft Visual Basic para funções de aplicativos através do serviço de expressões Jet da Microsoft. O Jet Expression Service é usado para avaliar expressões em formulários, relatórios e consultas.

Por exemplo, a instrução SQL a seguir pode causar todos os arquivos a ser excluído da pasta atual em seu computador:
SELECT Shell("Cmd /c del *.*") As c1 From Customers
Observação O Shell comando neste exemplo funciona no Windows NT. Você deve modificar o comando da seguinte maneira para o comando trabalhar em um computador que esteja executando o Microsoft Windows 95 ou Microsoft Windows 98:
SELECT Shell("Command.com /c del *.*") As c1 From Customers
o risco de segurança ocorre quando as expressões contêm Visual Basic para comandos de aplicativos que podem danos ao computador que está executando a consulta, tal como comandos do shell para excluir arquivos ou formatar o computador.

NESTA TAREFA

INTRODUÇÃO

A avaliação de expressões é um comportamento que é desejável em muitas circunstâncias. No entanto, se parte da expressão contém um comando do shell, o comando shell é analisado e, em seguida, executado no computador.

Você pode usar o modo seguro para bloquear essas operações. No entanto, o padrão para o modo seguro do Jet 4.0 é não permitir modo seguro para consultas que são executados no Microsoft Access. Modo seguro está habilitado para todos os outros não-Access aplicativos, como ODBC (Open Database Connectivity).

Entender como habilitar ou como desativar o modo seguro

Aviso Se você usar o Editor do Registro incorretamente, você pode causar problemas sérios que talvez exijam a reinstalação do sistema operacional. A Microsoft não garante que você pode resolver problemas resultantes do uso incorreto do Editor do Registro. Use o Editor do registro por sua própria conta e risco.

Você pode habilitar o modo seguro para aplicativos do Access não. Para fazer isso, instale o Microsoft Jet 4.0 Service Pack 3 (SP3) ou posterior. Depois de instalar esta atualização, na próxima vez que executar uma nova chave de registro do Jet é adicionada ao registro. Essa nova chave do Registro impede que esse tipo de possíveis riscos de segurança. A chave do registro que é adicionada é:

\\HKEY_LOCAL_MACHINE\Software\Microsoft\Jet\4.0\engines\SandboxMode


Para obter informações adicionais sobre como obter o Service Pack mais recente do Jet 4.0, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
239114Como obter o service pack mais recente para o Microsoft Jet 4.0 Database Engine
Para tornar seu sistema mais resistente a ataques mal-intencionados e, ao mesmo tempo possibilita aplicativos mais antigos manter em execução, a operação de modo seguro alterada no Jet 4.0 Service Pack 8 assim que seguro modo completamente estiver sob seu controle.

Você pode definir a chave para os seguintes valores, com 0 (zero) sendo mais permissiva e 3 sendo menos permissiva:

Recolher esta tabelaExpandir esta tabela
ConfiguraçãoDescrição
0Modo seguro está desabilitado em todos os horários.
1Modo seguro é usado para aplicativos do Access, mas não para não-Access aplicativos.
2Modo seguro é usado para aplicativos não-Access, mas não para aplicativos do Access. Esse é o valor padrão.
3O modo seguro é usado em todos os horários.

Após você ativar o modo seguro e, em seguida, tentar usar o Visual Basic não seguro para funções de aplicativos em uma consulta de Jet 4.0, você receber a seguinte mensagem de erro:

Função 'nomedafunção' na expressão indefinida

Implementar operações de modo seguro

Como você pode implementar modo seguro é estendido no Jet 4.0 Service Pack 8 para serem mais compatíveis com bancos de dados do Access. Implementações anteriores do modo seguro eram muito restritivas para a maioria dos aplicativos do Access. Começando com o Jet 4.0 Service Pack 8, o modo seguro aprimorado continua a bloquear inseguro funções Visual Basic for Applications, mas o Jet 4.0 Service Pack 8 agora permite a execução de funções definidas pelo usuário.

Usar Operações de modo seguro com o Jet 4.0 Service Pack 3 e posterior

Você pode usar a lista de funções a seguir em consultas de Jet quando o modo seguro está habilitado. Todas as funções que não aparecem na lista não estão disponíveis no modo seguro.
Recolher esta tabelaExpandir esta tabela
ABS matriz ASC ASCB ASCW ATN
CBOOL CBYTE CCUR CDATE CDBL Escolha
CHR CHR $ CHRB $ CHRB CHRW CHRW $
CINT CLNG COS CSNG CSTR CVAR
CvDate CVErr Data DATA $ DATEADD dateDiff
datePart DATESERIAL DATA.VALOR dia DDB Erro
Erro $ EXP corrigir formato formato $ VF
hex $ hex HORA IIF IMEStatus inStr
INT IPMT IRR isDate isEmpty ISERROR
isNull isNumeric isObject lCase lCase $ ESQUERDA
$ ESQUERDO LEFTB LEFTB $ LEN LENB LOG
lTrim lTrim $ MID $ MID MIDB $ MIDB
MINUTO MIRR MÊS AGORA NPER NPV
out $ out partição PGTO PPMT VP
QBColor TAXA RGB DIREITA $ DIREITA RIGHTB
$ RIGHTB arredondada Arredondar rTrim rTrim $ SEGUNDO
Sgn SIN SLN espaço espaço $ Sqr
Str Str $ strComp strConv seqüência de caracteres seqüência de caracteres $
Alternar SYD TAN TEMPO TEMPO $ Timer
timeSerial TIMEVALUE APARAR TRIM $ typeName uCase
uCase $ valor varType DIA DA SEMANA ANO

Compreender o Visual Basic para aplicativos funções que causam erros quando chamada de uma consulta de Jet ou uma propriedade de acesso ao usar o Jet 4.0 Service Pack 8

Visual Basic a seguir para funções de aplicativos causará um erro quando as funções são chamadas de uma expressão em uma consulta de Jet ou de uma propriedade do Access:
Recolher esta tabelaExpandir esta tabela
AppActivateAlarme sonoroCalendárioCallByNameChDir
ChDriveComandoComando $CreateObjectCurDir
CurDir $DeleteSettingDoEventsEnviron (ambiente)Environ (ambiente) $
EOFErroFileAttrFileCopyFileDateTime
FileLenFreeFileGetAllSettingsGetAttrGetObject
GetSettingEntradaEntrada $InputBInputB $
EliminarCargaLOCLOFAleatória
RedefinirSaveSettingBuscaSendKeysSetAttr
ShellSpcGuiaDescarregarUserForms
Largura

Propriedades

ID do artigo: 239482 - Última revisão: terça-feira, 10 de agosto de 2004 - Revisão: 6.0
A informação contida neste artigo aplica-se a:
  • Microsoft Access 2000 Standard Edition
  • Microsoft Access 2002 Standard Edition
  • Driver Microsoft Open Database Connectivity para Access 4.0
  • Microsoft Office 2000 Professional Edition
Palavras-chave: 
kbmt kbhowto kbconfig kbinfo kbfix KB239482 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 239482

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com