Firebird Documentation Index → Utilitários do Firebird → GSEC → Modo “Em lote” |
As seguintes descrições de operações em modo lote, assume-se que
tenha-se configurado as variáveis de ambiente ISC_USER
e
ISC_PASSWORD
. Elas permitem rodar o GSEC sem ter que
especificar as opções -user
e
-password
. O reduzindo, por sua vez, a quantidade
de código na linha de comando - significando que quando este arquivo XML
for renderizado num PDF, toda a linha de comando caiba numa única linha
de uma página A4.
Não é seguro manter essas variáveis configuradas todo o tempo, então não deixe-as assim!
Em modo lote, quando você achar que pode verificar o resultado de
uma operação consultando %ERRORLEVEL%
em Windows ou
$?
em vários sabores de Unix. Isto não funciona, pois o
resultado sempre retorna zero.
Em modo lote, a linha de comando para rodar o GSEC é a seguinte:
gsec [ <options> ... ] <command> [ <parameter> ... ]
Para mostrar todos os usuários no BD de segurança, o comando e sua respectiva saída seguem:
C:\>gsec -display user name uid gid full name ------------------------------------------------------------------------ SYSDBA 0 0 NORMAN 0 0 Norman Dunbar EPOCMAN 0 0 Benoit Gilles Mascia
Para mostrar detalhes de um único usuário, passe nome do usuário
como parâmetro do comando display
:
C:\>gsec -display epocman user name uid gid full name ------------------------------------------------------------------------ EPOCMAN 0 0 Benoit Gilles Mascia
do Tradutor: Nas próximas duas seções, ambos os comandos
abordados não retornam confirmação de que a operação foi efetuada com
sucesso. Você deve usar a o comando -display
ou
-display <name>
para verificar.
Abaixo o comando e sua respectiva saída:
C:\>gsec -add newuser -pw newuser -fname New -lname User
C:\>gsec -display user name uid gid full name ------------------------------------------------------------------------ SYSDBA 0 0 NORMAN 0 0 Norman Dunbar NEWUSER 0 0 New User EPOCMAN 0 0 Benoit Gilles Mascia
Abaixo o comando e sua respectiva saída:
C:\>gsec -delete newuser
C:\>gsec -display user name uid gid full name ------------------------------------------------------------------------ SYSDBA 0 0 NORMAN 0 0 Norman Dunbar EPOCMAN 0 0 Benoit Gilles Mascia
Usuários existentes podem ter uma ou mais de suas informações alteradas.
C:\>gsec -modify norman -pw newpassword
C:\>gsec -modify norman -mname MiddleName -fname Fred
C:\>gsec -display user name uid gid full name ------------------------------------------------------------------------ SYSDBA 0 0 NORMAN 0 0 Fred MiddleName Dunbar EPOCMAN 0 0 Benoit Gilles Mascia
Se você deseja remover um ou mais informações do usuário, não passe um novo valor para esse atributo.
C:\>gsec -modify norman -mname -fname -lname
C:\>gsec -display user name uid gid full name ------------------------------------------------------------------------ SYSDBA 0 0 NORMAN 0 0 EPOCMAN 0 0 Benoit Gilles Mascia
Agora ninguém sabe quem eu sou... ;o)
A versão do GSEC pode ser obtida usando o comando
-z
. Porém, note que após a execução desse
comando, o modo interativo será ativado. Ele não sai assim como os
outros comandos em lote, de modo que você tem que utilizar o comando
interativo quit
para sair. Este uma solução de
contorno, a qual segue. A primeira parte mostra o problema.
C:\>gsec -z gsec version WI-V1.5.0.4306 Firebird 1.5 GSEC>
A solução é ter um pequeno arquivo contendo o comando
quit
e forçar GSEC a ler este arquivo quando
necessitar de entrada de dados do usuário, como segue:
C:\>copy con fred quit ^Z 1 file(s) copied.
C:\>gsec -z <fred gsec version WI-V1.5.0.4306 Firebird 1.5 GSEC> C:\>
Isto pode ser uma boa idéia para qualquer dos comandos que deixam
você "preso" no modo interativo quando deveria estar rodando em lote.
Redirecionando a entrada de arquivo de comando, GSEC lerá a linha de
texto desse arquivo a qualquer momento que necessitar entrada de
usuário. Forçando-o a ler o comando quit
, você
consegue sair.
O comando -z não necessita de um -user
e
-password
, ele mostrará os detalhes da versão e
então dirá a você que não tem um nome/senha - mas você pode ignorar
tranqüilamente a mensagem.
Firebird Documentation Index → Utilitários do Firebird → GSEC → Modo “Em lote” |