Como configurar o Jet 4.0 para impedir que funções não seguras sejam executados no Access 2000 e Access 2002

Traduções de Artigos Traduções de Artigos
Artigo: 239482 - Ver produtos para os quais este artigo se aplica.
Este artigo aplica-se apenas a uma base de dados do Microsoft Access (.mdb).

Moderado: Requer básica macros, codificação e interoperabilidade competências.
Para obter uma versão do Microsoft Office Access 2003 deste artigo, consulte 294698.

importante Este artigo contém informações sobre como modificar o registo. Antes de modificar o registo, certifique-se de que efectua uma cópia de segurança e de que compreende como o restaurar o registo se ocorrer um problema. Para obter informações sobre como efectuar uma cópia de segurança, restaurar e editar o registo, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
256986Descrição do registo do Microsoft Windows
Expandir tudo | Reduzir tudo

Nesta página

Sumário

O motor de base de dados Microsoft Jet 4.0 permite-lhe chamar inseguro Microsoft Visual Basic for Applications funções através do Microsoft Jet Expression Service. O serviço de expressão do Jet é utilizado para avaliar expressões nos formulários, no relatórios e nas consultas.

Por exemplo, a seguinte instrução de SQL poderá fazer com que todos os ficheiros a ser eliminado da pasta actual no computador:
SELECT Shell("Cmd /c del *.*") As c1 From Customers
NOTA: A Shell comandos neste exemplo funciona no Windows NT. Tem de modificar o comando do seguinte modo para o comando para funcionar num computador com 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 do Visual Basic para aplicações comandos que podem danificar ao computador que está a executar a consulta, como a shell de comandos para eliminar ficheiros ou para formatar o computador.

NESTA TAREFA

INTRODUÇÃO

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

Pode utilizar o modo sandbox para bloquear essas operações. No entanto, a predefinição para o modo sandbox do Jet 4.0 é não activar o modo sandbox para as consultas que são executados no Microsoft Access. O modo sandbox é activado para todas as outras não acesso aplicações, tais como interligação da base de dados (ODBC).

Compreender como activar ou sobre como desactivar o modo sandbox

aviso Se utilizar o Editor de registo incorrectamente, poderá provocar problemas graves que poderão forçar a reinstalação do sistema operativo. Microsoft não garante que os problemas resultantes da utilização incorrecta do Editor de registo possam ser resolvidos. As suas próprias risco da utilização do Editor de registo.

Pode activar o modo sandbox para aplicações do Access não. Para efectuar este procedimento, tem de instalar Microsoft Jet 4.0 Service Pack 3 (SP3) ou posterior. Depois de instalar esta actualização, da próxima vez que executar uma nova chave de registo Jet é adicionada ao registo. Esta nova chave de registo impede que este tipo de possível risco de segurança. Segue-se a chave de registo é 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 de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
239114Como obter o service pack mais recente para o motor de base de dados do Microsoft Jet 4.0
Para tornar o seu sistema mais resistente a ataques maliciosos e, em simultâneo possibilitam aplicações mais antigas para manter em execução, o funcionamento do modo sandbox alterada no Jet 4.0 Service Pack 8 até que sandbox modo completamente está sob o controlo.

Pode definir a chave para os seguintes valores, com 0 (zero) a ser mais permissiva e 3 a ser menos permissiva:

Reduzir esta tabelaExpandir esta tabela
DefiniçãoDescrição
0O modo sandbox é desactivado permanentemente.
1O modo sandbox é utilizado para aplicações do Access, mas não para não Access aplicações.
2O modo sandbox é utilizado para aplicações do Access não, mas não para aplicações do Access. Este é o valor predefinido.
3O modo sandbox é utilizado sempre.

Depois de activar o modo sandbox e, em seguida, tentar utilizar o Visual Basic não seguro para funções de aplicações numa consulta Jet 4.0, receberá a seguinte mensagem de erro:

Não definido ' função 'nomedafunção' numa expressão

Implementar as operações do modo sandbox

Como pode implementar o modo sandbox é expandido no Jet 4.0 Service Pack 8 para que seja mais compatível com bases de dados do Access. Implementações anteriores do modo sandbox foram demasiado restritivas para a maior parte das aplicações do Access. A partir do Jet 4.0 Service Pack 8, o modo sandbox avançado continua a bloquear não seguro do Visual Basic para funções de aplicações, mas Jet 4.0 Service Pack 8 agora permite a execução de funções definidas pelo utilizador.

Utilizar Operações de modo sandbox com o Jet 4.0 Service Pack 3 e versões posteriores

Pode utilizar a seguinte lista de funções em consultas de Jet quando o modo sandbox é activado. Todas as funções que não aparecem na lista não estão disponíveis no modo sandbox.
Reduzir esta tabelaExpandir esta tabela
ABS matriz ASC ASCB ASCW ATN
CBOOL CBYTE CCUR CDATE CDBL Escolher
CHR CHR $ CHRB CHRB $ CHRW CHRW $
CINT CLNG COS CSNG CSTR CVAR
CvDate CVErr Data DATA $ DATEADD dateDiff
PartData DATESERIAL DATEVALUE dia DDB Erro
Erro $ ESP. corrigir formato formato $ VF
hex $ hex HORA IIF IMEStatus inStr
INT IPMT IRR isDate isEmpty ISERROR
isNull isNumeric isObject lCase lCase $ ESQUERDA
$ PARA A ESQUERDA LEFTB LEFTB $ NÚM.CARACT LENB REGISTO
lTrim lTrim $ AO CENTRO MID $ MIDB MIDB $
MINUTO MIRR MÊS AGORA NPER NPV
Oct Oct $ partição PGTO PPMT VA
QBColor TAXA RGB DIREITA $ PARA A DIREITA RIGHTB
RIGHTB $ Rnd arredondar rTrim rTrim $ SEGUNDO
Sgn SIN SLN espaço espaço $ Sqr
STR STR $ strComp strConv cadeia cadeia $
parâmetro SYD TAN TEMPO TIME $ temporizador
timeSerial TIMEVALUE CORTAR CORTAR $ typeName uCase
uCase $ valor varType DIA DA SEMANA ANO

Compreender o Visual Basic para funções de aplicações que causam erros quando chamado a partir de uma consulta de Jet ou uma propriedade de acesso quando utiliza o Jet 4.0 Service Pack 8

O seguinte Visual Basic for Applications funções causará um erro quando as funções são chamadas a partir de uma expressão numa consulta Jet ou de uma propriedade de acesso:
Reduzir esta tabelaExpandir esta tabela
AppActivateAlarme sonoroCalendárioCallByNameChDir
ChDriveComandoComando $CreateObjectActDir
ActDir $DeleteSettingDoEventsAmbienteAmbiente $
EOFERRAtrFichFileCopyDataHoraFich
ComprFichFichLivreObterTodasDefiniçõesObterAtributoGetObject
ObterDefiniçãoEntradaEntrada $Centrada$ Centrada
EliminarCargaLocalizaçãoLOFOrdenar aleatoriamente
ReporSaveSettingProcurarSendKeysSetAttr
ShellESPSeparadorDescarregarUserForms
Largura

Propriedades

Artigo: 239482 - Última revisão: 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
  • Controlador 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 revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes 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