Upload
internet
View
121
Download
2
Embed Size (px)
Citation preview
TISSNet
Interligando Aplicativos TISS
2
Conteúdo
• TISS e TISSNet.
• Origens do TISSNet.
• Requisitos do Padrão TISSNet.
• Modelo de Referência.
• Implementação do Padrão.
• Direções Futuras.
• Interoperabilidade.
3
TISS e TISSNet
• Ambos são padrõespadrões, não programas produtoprogramas produto.
• Os aplicativos construídos são implementações de implementações de referênciareferência, não “software de prateleira”“software de prateleira”.
• Será livre o uso do código fonte das implementações implementações de referênciade referência produzidas.
• TISSTISS -> define as transações (os eventos geradores de mensagens), o padrão geral das mensagens, o conteúdo e o formato destas mensagens.
• TISSNetTISSNet -> define o padrão de troca de mensagens entre emissor e destinatário.
4
TISSNet - Origens
• TISS -> TTroca de IInformações em SSaúde SSuplementar.
• Padrão definia formato, método e conteúdo, mas não forma de comunicação na troca de mensagens.
• Implementação de referência registrava transações e gerava mensagens, mas não trocava mensagens.
➔ Padrão de troca de mensagens que não Padrão de troca de mensagens que não trocava mensagens!!!trocava mensagens!!!
• Necessidade de oferta de sugestão de implementação de referência para cobrir, pelo menos, a forma mais simples de troca de mensagens.
5
TISSNet - Origens
• Subcomitê de COMUNICAÇÃO E SEGURANÇA do TISS optou por estabelecer um guia de “melhores práticas” e um padrão para comunicação transacional baseado em “web services” (ou outra tecnologia de amplo uso que venha a se estabelecer).
• A comunicação hoje JÁ SE FAZ via terminais ou aplicativos POS proprietários.
• A ANS tenta oferecer uma opção para comunicação simples, não transacional, baseada em padrão aberto de rede e protocolo => uma sugestão de implementação não proprietária que possa ser usada pela INTERNET.
6
TISSNet - Origens
• Logo, esta sugestão:
NÃO É de adoção obrigatória.
NÃO É um padrão de comunicação definido.
É uma oferta pública de sugestão de caminho a seguir para comunicação não transacional.
PRETENDE SER uma oferta da ANS ao mercado.
7
TISSNet - Requisitos do Padrão
• PORTABILIDADEPORTABILIDADE – o componente de comunicação deve poder executar em qualquer sistema operacional.
• SEGURANÇASEGURANÇA – o tráfego gerado pelo componente deve ser criptografado por padrão mundial de segurança comprovada e aceitável.
• LEVEZALEVEZA – as informações transmitidas devem fluir no menor número possível de “bytes”, com o máximo possível de compressão.
• FACILIDADE DE USOFACILIDADE DE USO – um pequeno prestador deve poder transmitir seus dados sem dificuldade de ordem técnica.
8
TISSNet - Requisitos do Padrão
• MODULARIDADEMODULARIDADE – o componente de comunicação deve poder se integrar, de forma transparente, a uma aplicação desenvolvida, que deve ter a liberdade para comandá-lo internamente <=> o componente deve se apresentar como um “objeto opaco”, com uma interface de uso bem definida.
• EXTENSIBILIDADEEXTENSIBILIDADE – o componente de comunicação deve poder ser facilmente expandido, para incorporar novas técnicas e formas de transmissão (“web services”, envio de mensagens que não estejam em XML, etc).
9
TISSNet - Modelo de Referência
TISSPrestador
Para aOperadora
TISSNetPrestador
TISSNetOperadora
Para oPrestador
TISSOperadora
doPrestador
daOperadora
Modelo baseado no conceito de caixa de entrada/ caixa de saída
10
TISSNet – Modelo de Referência
TISSPrestador
Para aOperadora
TISSNetPrestador
TISSNetOperadora
Para oPrestador
TISSOperadora
doPrestador
daOperadora
COMUNICAÇÃO
• Protocolo de amplo uso (TCP/IP)• Rede pública de amplo uso (INTERNET)• Suporte a “proxy servers”• Suporte a SSL (opcional)• Identificação por certificado (opcional)• Detecção automática de SSL• “Fallback” automático
11
TISSNet – Modelo de Referência
TISSPrestador
Para aOperadora
TISSNetPrestador
TISSNetOperadora
Para oPrestador
TISSOperadora
doPrestador
daOperadora
COMUNICAÇÃO / “FALL BACK”
➔ SSL via proxy➔ SSL diretamente➔ Aberta via proxy➔ Aberta diretamente➔ Falha
12
TISSNet – Modelo de Referência
TISSPrestador
Para aOperadora
TISSNetPrestador
TISSNetOperadora
Para oPrestador
TISSOperadora
doPrestador
daOperadora
FILAS DE RECEPÇÃO:
• Ordenadas por data de recepção, destinatário, remetente e sequencial de transação TISS.• Suportam, assim, prestadores de serviços que atuem em nome de vários destinatários.• Permitem processamento das mensagens em ordem de sequencial de transação TISS.
13
TISSNet – Modelo de Referência
TISSPrestador
Para aOperadora
TISSNetPrestador
TISSNetOperadora
Para oPrestador
TISSOperadora
doPrestador
daOperadora
FILA DE TRANSMISSÃO DO PRESTADOR:
• Administrada pelo aplicativo (prestador pode ser usuário leigo em informática)• Arquivos podem estar em qualquer pasta – não se exige uma organização de diretórios padrão.• Aplicativo monta a fila através de operações simples e intuitivas, tipo “arrastar e soltar”.
14
TISSNet – Modelo de Referência
TISSPrestador
Para aOperadora
TISSNetPrestador
TISSNetOperadora
Para oPrestador
TISSOperadora
doPrestador
daOperadora
FILA DE TRANSMISSÃO DA OPERADORA:
• Organizada em pastas cujos nomes são os códigos dos prestadores na operadora.• Não é preciso ordenar os arquivos por sequencial de transação TISS.• Nomes dos arquivos contendo as mensagens podem ser quaisquer.• Aplicativo limpa a fila após transmissão bem sucedida.
15
TISSNet – Modelo de Referência
TISSPrestador
Para aOperadora
TISSNetPrestador
TISSNetOperadora
Para oPrestador
TISSOperadora
doPrestador
daOperadora
COMPONENTE DE COMUNICAÇÃO:
• Pode ser encapsulado e distribuído como um ActiveX Server em plataforma WINDOWS• Pode prescindir de interfaces visuais, sendo manipulado programaticamente• Pode executar em ambientes WINDOWS, UNIX e Mac
16
TISSNet - Implementação
• Versão WINDOWS + Versão UNIXVersão WINDOWS + Versão UNIX
• Versão únicaVersão única
• Parte do aplicativo TISSParte do aplicativo TISS
• Aplicativo independenteAplicativo independente
• Interface VisualInterface Visual
• Sem interface visualSem interface visual
17
TISSNet - Implementação
• Versão WINDOWS + Versão UNIXVersão WINDOWS + Versão UNIX
• Versão únicaVersão única
• Parte do aplicativo TISSParte do aplicativo TISS
• Aplicativo independenteAplicativo independente
• Interface VisualInterface Visual
• Sem interface visualSem interface visual
Simplicidade de Manutenção
x
Eficiência em cada Plataforma
18
TISSNet - Implementação
• Versão WINDOWS + Versão UNIXVersão WINDOWS + Versão UNIX
• Versão únicaVersão única
• Parte do aplicativo TISSParte do aplicativo TISS
• Aplicativo independenteAplicativo independente
• Interface VisualInterface Visual
• Sem interface visualSem interface visual
19
TISSNet - Implementação
• Versão WINDOWS + Versão UNIXVersão WINDOWS + Versão UNIX
• Versão únicaVersão única
• Parte do aplicativo TISSParte do aplicativo TISS
• Aplicativo independenteAplicativo independente
• Interface VisualInterface Visual
• Sem interface visualSem interface visual
Simplicidade de Instalação
x
Flexibilidade de Uso e Acoplamento a
Aplicativos de Terceiros
20
TISSNet - Implementação
• Versão WINDOWS + Versão UNIXVersão WINDOWS + Versão UNIX
• Versão únicaVersão única
• Parte do aplicativo TISSParte do aplicativo TISS
• Aplicativo independenteAplicativo independente
• Interface VisualInterface Visual
• Sem interface visualSem interface visual
21
TISSNet - Implementação
• Versão WINDOWS + Versão UNIXVersão WINDOWS + Versão UNIX
• Versão únicaVersão única
• Parte do aplicativo TISSParte do aplicativo TISS
• Aplicativo independenteAplicativo independente
• Interface VisualInterface Visual
• Sem interface visualSem interface visual
Facilidade de Operação
x
Integração a aplicativos de terceiros + controle
programático
22
TISSNet - Implementação
• Versão WINDOWS + Versão UNIXVersão WINDOWS + Versão UNIX
• Versão únicaVersão única
• Parte do aplicativo TISSParte do aplicativo TISS
• Aplicativo independenteAplicativo independente
• Interface VisualInterface Visual
• Sem interface visualSem interface visual
23
TISSNet - Implementação
• Aplicativo escrito em JAVA (JDK 1.5) => uma única versão.
• Objeto JAVA pode ser encapsulado como um servidor ActiveX para plataforma WINDOWS.
• Aplicativo independente.
• Oferecendo interface visual programada com JAVA SWING.
• Oferecendo objeto manipulável programaticamente.
• Interface visual apenas manipula o objeto programático, imitando um programa de terceiros.
24
TISSNet - Implementação
• Não prevê, ainda, suporte a transações “on line” => isto está em discussão no COPISS.
• Atende aos requisitos de proteção ao tráfego de informação mesmo quando se usa canal TCP “aberto” (sem SSL).
• Extensível.
• Multiplataforma.
25
TISSNet - Implementação
26
TISSNet - Implementação
• As mensagens são tratadas por um agente DOM (“Document Object Model”), mas isto não faz parte do padrão – qualquer tratamento de XML é apropriado• O agente valida as mensagens contra o esquema XSD do TISS
27
TISSNet - Implementação
• ClienteFuncional e Servidor são os objetos que oferecem acesso programático à aplicação.
• Objeto principal (visual) da ponta prestador.
• Objeto principal da ponta operadora.
28
TISSNet - Implementação
• Todas as mensagens fluem criptografadas pelo método RIJNDAEL (novo padrão AES - “Advanced Encryption Standard”)• Há abertura para construção de outros agentes criptográficos• A criptografia acontece mesmo quando se opera em canal aberto• A chave inicial é derivada de uma raíz transmitida pela rede e formada pelo nodo operadora a cada sessão de comunicação.• A chave real nunca é transmitida pela rede.• A chave real muda a cada mensagem trocada => se um intruso perde uma mensagem, perde toda a comunicação daí para a frente.
29
TISSNet - Implementação
• Conexão pode usar SSL, se configurada para tal e existir um certificado válido• Com SSL, há dupla criptografia: RIJNDAEL para as mensagens e SSL assimétrica para o canal de transmissão• Depois de criptografadas, as mensagens são convertidas para base64 antes da transmissão• Pode usar “proxy server” HTTP
30
TISSNet - Implementação
• As mensagens recebidas são encaminhadas a um despachante, que tem a missão de selecionar um digestor apropriado• A implementação mínima de referência requer o downloader: um digestor que apenas grava a mensagem na fila de recepção, respeitando a estrutura dela.
31
TISSNet - Implementação
• Plataformas de TestePlataformas de Teste -> Windows XP Professional e Kurumin Linux (“freeware”).
• ““Kit” de DesenvolvimentoKit” de Desenvolvimento -> JDK 1.5.0 da SUN (“freeware”).
• ““Software” de TerceirosSoftware” de Terceiros -> Bouncy Castle Cryptographic Provider (“freeware”), implementação JAVA de criptografia RIJNDAELRIJNDAEL (padrão AES - “Advanced Encryption Standard” - atual); Christian d'Heureuse, Inventec Informatik AG (Suíça), codificador/ decodificador Base64 (“freeware”).
• IDEIDE -> NetBeans 5.0 (“freeware”).
32
TISSNet – Direções Futuras
• Digestor para aplicação direta da transação à base de dados local da operadora ou prestador (hoje, o único digestor implementado é o “downloader”).
• Mensagens TISS como parte de transações “on line” “web services” ou outra tecnologia de uso igualmente amplo.
• Padrão de comunicação para parte dos dados trocados entre as operadoras e a ANS.
33
TISSNet – Direções Futuras
Digestor para aplicação direta da transação à base de dados local da operadora ou prestador (hoje, o único digestor implementado é o “downloader”).
• Padronização de um esquema de “views” atualizáveis, que o digestor usaria para operações de inserção/ atualização/ exclusão.
• O digestor, assim, seria independente do SGBD em uso, mas este SGBD teria que ter suporte a “views” atualizáveis.
• A implementação das “views” ficaria a cargo de cada operadora ou prestador que resolvesse utilizar o digestor.
34
TISSNet – Direções Futuras
• XML atual das mensagens seria “envelopado” como texto em uma mensagem do padrão adotado.
• Padrão atual não mudaria, minimizando-se o impacto em aplicativos existentes.
• Implementação de referência seria expandida, tornando-se, opcionalmente, consumidora e produtora de serviços no novo padrão.
Mensagens TISS
como parte de
transações “on
line”...
35
TISSNet – Direções Futuras
Padrão de
comunicação para
parte dos dados
trocados entre as
operadoras e a ANS.
• Depende de análise caso a caso dos processos de comunicação hoje existentes.
• Padrão TISS atualmente não prevê nem mensagens operadora -> ANS nem mensagens ANS -> operadora => teria que haver revisão do conteúdo.
36
TISSNet - Interoperabilidade
● Padrão TISS deve se manter neutroneutro quanto a:
➔ SGBDs hospedeiros
➔ linguagem de programação
➔ sistemas operacionais hospedeiros
➔ Integradores e fornecedores de soluções
➔ Protocolos de comunicação
● Serão incorporadas ao padrão apenas tecnologias de amplo uso e aceitação, que não impactem a neutralidade do projeto.
● A ANS promoverá a utilização crescente do padrão.