Mensagem de Segurança do Windows

Oracle Application Express - web application development tool (antigamente conhecido como Oracle HTML-DB)
Responder
danielpbarros
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 67
Registrado em: Dom, 15 Jan 2012 9:34 pm
Contato:
Daniel Barros

Boa tarde pessoal,

Acabo de migrar para a produção um sistema que desenvolvi em APEX. Tudo ocorreu com muita tranquilidade ( até agradeço ao Sérgio pelas informações ) porém sempre os usuários vão logar no sistema, é enviada uma mensagem de Segurança do Windows, onde informa que o servidor em XDB requer um nome de usuário e uma senha.

Eu coloquei o usuário e a senha e marquei para gravar as credenciais, porém sempre pede (aparece o usuario e a senha devido o flg marcado).

Existe uma possibilidade de não aparecer essa mensagem?

Abraços,
Daniel.
Avatar do usuário
stcoutinho
Moderador
Moderador
Mensagens: 850
Registrado em: Qua, 11 Mai 2011 5:15 pm
Localização: são Paulo - SP

Oi Daniel,

Não passei por esta situação, mas encontrei vários foruns que descrevem a solução deste problema.

Em um deles (https://forums.oracle.com/forums/thread ... ID=2201984), o forista explica:
On my system Anonymous and XDB account were already unlocked and both used the same password.
I simply executed the PL/SQL block that you can find here:

http://www.apexexplorer.com/wp-content/ ... -Issue.pdf

I bounced the listener.
Relendo o arquivo PDF mencionado, eu me recordo que a solução me parece ser um dos passos de instalação do APEX em um servidor. Será quie você deixou de executar algum passo na instalação em PRODUCAO?

Confira depois com as instruções que você executou ao instalar o APEX na produção. Confira estes passos com o manual de instalação do APEX, publicado pela ORACLE. Me parece ser algo relacionado com o desbloqueio do usuário XDB e do ANONIMOUS ou com a execução de algum script PL/SQL para desbloquear recursos do APEX.

Abraços e boa sorte,

Sergio Coutinho
danielpbarros
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 67
Registrado em: Dom, 15 Jan 2012 9:34 pm
Contato:
Daniel Barros

então Sérgio,

Segui as instruções de instalação que existe no glufke. Todos os passos foram realizados com sucesso, porém não me lembro de ter que desbloquear o usuário XDB, apenas o ANONYMOUS.

att.
Daniel.
Avatar do usuário
stcoutinho
Moderador
Moderador
Mensagens: 850
Registrado em: Qua, 11 Mai 2011 5:15 pm
Localização: são Paulo - SP

Hum,

Então,

Existe alguma diferença entre o ambiente de DESENVOLVIMENTO e o de PRODUCAO? Por exemplo, a versão do banco, a plataforma, o SO da máquina?

Este problema que você relata ocorre com qualquer browser? Por exemplo, fez os testes com o IE, CHROME, FIREFOX? As versões destes navegadores são as mesmas? Você repetiu os testes em DESENVOLVIMENTO e HOMOLOGACAO?

Eu fiz uma pesquisa rápida nos OTN foruns (ORACLE) .. existem várias possibilidades. Não sei se você executou o script que o link do PDF que te passei. Se não se sente seguro para executar ele (pois é PRODUCAO) sugiro que pesquise um pouco mais nos OTN foruns.

Por favor, continue postando aqui suas dúvidas, ok? Quem sabe outros foristas passaram pelo mesmo problema?

Abraços,

Sergio Coutinho
danielpbarros
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 67
Registrado em: Dom, 15 Jan 2012 9:34 pm
Contato:
Daniel Barros

Ei Sérgio, beleza?

Vou responder as perguntas.

Existe alguma diferença entre o ambiente de DESENVOLVIMENTO e o de PRODUCAO? Por exemplo, a versão do banco, a plataforma, o SO da máquina?

R= Existe diferença no ambiente sim, como sistema operacional (Produção Windows Server 2008 e Desenvolvimento Win 7) porém a versão do Oracle são as mesmas. As máquinas dos usuários são padronizados. Só que o problema ocorre tanto no desenvolvimento quanto em produção, por isso creio que seja algo referente a instalação. Quando coloco a senha do sys, funciona, mas sempre aparece a Mensagem de segurança quando o usuario faz o login.

Este problema que você relata ocorre com qualquer browser? Por exemplo, fez os testes com o IE, CHROME, FIREFOX? As versões destes navegadores são as mesmas? Você repetiu os testes em DESENVOLVIMENTO e HOMOLOGACAO?

R= Como padrão na empresa, é utilizado o internet explorer 8 em todas as máquinas. Porém no meu notebook eu testei com o Mozilla e apresenta a mesma mensagem.

Eu fiz uma pesquisa rápida nos OTN foruns (ORACLE) .. existem várias possibilidades. Não sei se você executou o script que o link do PDF que te passei. Se não se sente seguro para executar ele (pois é PRODUCAO) sugiro que pesquise um pouco mais nos OTN foruns.

R= Executei o script na base teste e o mesmo retornou erro. Porem realizei o desbloqueio do usuário XDB, continuando o mesmo problema.
Retona o erro:

Selecionar tudo

ERRO na linha 1:
ORA-31011: Falha no parse XML
ORA-19202: Ocorreu um erro no processamento XML
LPX-00601: Invalid token in:
'/xdbconfig/sysconfig/protocolconfig/httpconfig/allowrepository-anonymous-access'
ORA-06512: em "SYS.XMLTYPE", line 128
ORA-06512: em line 7
abraços,
Daniel.
Avatar do usuário
stcoutinho
Moderador
Moderador
Mensagens: 850
Registrado em: Qua, 11 Mai 2011 5:15 pm
Localização: são Paulo - SP

Oi Daniel,

Acabei apelando para o Metalink e encontrei uma nota que descreve o problema que você está enfrentando

Troubleshooting: The XDB Login Appears When Running APEX with the 11g Enterprise PL/SQL Gateway (EPG) [ID 565952.1]

Mas antes de continuar com este procedimento, CERTIFIQUE-SE de aplicar o mesmo em um ambiente de TESTES, ok?

Não tenho como garantir que os passos estão 100%. Por isso, teste em um ambiente que você possa restaurar se algo der errado.

Segundo a nota, quando aparece a tela de login do XDB, isso indica um erro na configuração do APEX DAD.

Para verificar se o compomente ORACLE XML DATABASE (XDB) se encontra OK, efetue esta querie na sua base de dados:

Selecionar tudo

SELECT COMP_NAME, STATUS, VERSION FROM DBA_REGISTRY ORDER BY COMP_NAME;
Se o status estiver como INVALID, resolva o problema com os passos abaixo:
1) Às vezes, alguns objetos do XDB se encontram inválidos.
Execute no servidor do banco :

Selecionar tudo

CONN / AS SYSDBA
DESC DBMS_LOB
DESC UTL_FILE
GRANT EXECUTE ON DBMS_LOB TO XDB;
GRANT EXECUTE ON UTL_FILE TO XDB;
@?/rdbms/admin/utlrp.sql -- Este comando recompila os invalidos/ execute duas ou tres vezes


2) Revalide o XDB:

Selecionar tudo

CONNECT / AS SYSDBA
EXECUTE DBMS_REGXDB.VALIDATEXDB;
3) Verifique se a situação se normalizou:

Selecionar tudo

SELECT COMP_NAME, STATUS, VERSION FROM DBA_REGISTRY ORDER BY COMP_NAME;
SELECT OBJECT_NAME, OBJECT_TYPE, OWNER, STATUS FROM DBA_OBJECTS WHERE OWNER = 'XDB' AND STATUS != 'VALID';
4) Se o problema continua, talvez você tenha que tentar reinstalar o XDB:

4.1) Removendo o XDB

Selecionar tudo

connect / as sysdba
shutdown immediate;
startup
@?/rdbms/admin/catnoqm.sql
spool off;
4.2) Reinicie novamente o banco:

Selecionar tudo

shutdown immediate;
startup;
4.3) Instalando o XBD

Selecionar tudo

@?/rdbms/admin/catqm.sql <XDB pwd> <XDB default tbs> <XDB temporary tbs>
@?/rdbms/admin/utlrp.sql
Resolvido o problema do XDB, continue com os passos a seguir:
1) Execute (como SYS ou SYSTEM) o script "epgstat.sql" situado em $ORACLE_HOME/rdbms/admin.

2) Verifique os resultados. O usuário de banco para o APEX DAD deve ser o ANONYMOUS. O schema de autenticação - bem como o usuário de autenticação - também devem ser ANONYMOUS;

3) Debloqueie a conta do ANONYMOUS com o comando ALTER USER ANONYMOUS ACCOUNT UNLOCK;

4) Reinicie o banco de dados (SHUTDOWN + STARTUP) e o LISTENER;

5) Neste ponto você pode fazer um teste acessando http://[servidor].[dominio]:8080/apex. Deve aparecer o login do APEX sem a tela de LOGIN do XDB;

6) Faça um teste de acesso na aplicação;
Espero que estes passos lhe ajudem a resolver seu problema.

Abraços,

Sergio Coutinho
danielpbarros
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 67
Registrado em: Dom, 15 Jan 2012 9:34 pm
Contato:
Daniel Barros

Então Sergio,

já no primeiro select para vericar o XMLDB válido, não apresentou anormalidade, visto que todas as linhas constam como válidas.

Acho que vou precisar recriar o XDB.

abs,
Daniel.
Avatar do usuário
stcoutinho
Moderador
Moderador
Mensagens: 850
Registrado em: Qua, 11 Mai 2011 5:15 pm
Localização: são Paulo - SP

Daniel,

Se o XDB está válido, então você deveria seguir estes passos:

1) Execute (como SYS ou SYSTEM) o script "epgstat.sql" situado em $ORACLE_HOME/rdbms/admin.

2) Verifique os resultados. O usuário de banco para o APEX DAD deve ser o ANONYMOUS. O schema de autenticação - bem como o usuário de autenticação - também devem ser ANONYMOUS;

3) Debloqueie a conta do ANONYMOUS com o comando ALTER USER ANONYMOUS ACCOUNT UNLOCK;

4) Reinicie o banco de dados (SHUTDOWN + STARTUP) e o LISTENER;

5) Neste ponto você pode fazer um teste acessando http://[servidor].[dominio]:8080/apex. Deve aparecer o login do APEX sem a tela de LOGIN do XDB;

6) Faça um teste de acesso na aplicação;
Se depois destes passos, seu problema continuar, poste aqui o resultado do script solicitado no procedimento acima e me informe a versão do seu Banco de Dados.


Abraços,

Sergio Coutinho
danielpbarros
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 67
Registrado em: Dom, 15 Jan 2012 9:34 pm
Contato:
Daniel Barros

Bom dia Sérgio, tudo bem?

Demorei para responder devido as férias coletivas da empresa, com isso, consegui realizar os testes hoje com sucesso.
Fiz toda verificação da instalação e dos usuários criados. Depois executei o script que você me envio pelo link e reiniciei banco e listener.

Novamente agradeço sua ajuda.

O script:

Selecionar tudo

SET SERVEROUTPUT ON
DECLARE
l_configxml XMLTYPE;
l_value VARCHAR2(5) := 'true'; -- (true/false)
BEGIN
l_configxml := DBMS_XDB.cfg_get();
IF l_configxml.existsNode('/xdbconfig/sysconfig/protocolconfig/httpconfig/allowrepository-
anonymous-access') = 0 THEN
-- Add missing element.
SELECT insertChildXML
(
l_configxml,
'/xdbconfig/sysconfig/protocolconfig/httpconfig',
'allow-repository-anonymous-access',
XMLType('<allow-repository-anonymous-access
xmlns="http://xmlns.oracle.com/xdb/xdbconfig.xsd">' ||
l_value ||
'</allow-repository-anonymous-access>'),
'xmlns="http://xmlns.oracle.com/xdb/xdbconfig.xsd"'
)
INTO l_configxml
FROM dual;
DBMS_OUTPUT.put_line('Element inserted.');
ELSE
-- Update existing element.
SELECT updateXML
(
DBMS_XDB.cfg_get(),
'/xdbconfig/sysconfig/protocolconfig/httpconfig/allow-repository-anonymousaccess/
text()',
l_value,
'xmlns="http://xmlns.oracle.com/xdb/xdbconfig.xsd"'
)
INTO l_configxml
FROM dual;
DBMS_OUTPUT.put_line('Element updated.');
END IF;
DBMS_XDB.cfg_update(l_configxml);
DBMS_XDB.cfg_refresh;
END;
/
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 11 visitantes