Orientações para Integração com o SIOP via WEB-Service SOAP

Este documento é destinado aos usuários e desenvolvedores de sistemas que integrarão com o SIOP via WS. Ele dá os detalhes de como é o processo de aquisição de credenciais, configuração e como acessar os ambientes de testes e produção do SIOP por WEB-Service.

Para entendimento geral de como é o controle de acesso ao SIOP, seja por login de usuário ou acesso WS, vide Manual de Controle de Acesso.

1. Acesso aos WEB-Services do SIOP

1.1 O que são WEB-Services?

Aplicação lógica, programável que torna compatíveis entre si os mais diferentes aplicativos, independentemente do sistema operacional, permitindo a comunicação e intercâmbio de dados entre diferentes redes. (glossário do e-ping)

1.2 O que é necessário para acessar os WEB-Services do SIOP

A Portaria SOF n. 130 reconhece o acesso ao SIOP via WS e define que ele terá procedimentos específicos que serão divulgados pela SOF:

O item 2.2 da portaria sofreu alteração. Maiores informações sobre suporte técnico ao sistema SIOP podem ser obtidas na Portal de Atendimento SIOP.

O requisito para acesso ao serviço é possuir uma credencial cadastrada no SIOP. A credencial é composta pelo login do usuário, senha e perfil WS com o qual se deseja executar as operações. Além disso, a aplicação que for consumir os WS do SIOP deve configurar os devidos certificados para se comunicar com o WS do SIOP.

2. Uso de Certificados

O uso do WS do SIOP exige configurações de certificados no sistema cliente. O sistema do cliente, tanto em ambiente de testes como de produção, deverá confiar na cadeia de certificados ICP-Brasil, pois o certificado digital do SIOP é emitido por esta organização.

A infraestrutura do SIOP já atualizou a cadeia para as versões mais novas.

Para acessar o WS de produção do SIOP então é necessário configurações de informações de 2 certificados no cliente:

Certificado do SIOP

Certificado do cliente

2.1 Certificado ICP-Brasil do SIOP

Como dito antes, o certificado do servidor SIOP para o webservice.siop.gov.br é do ICP-Brasil. Tanto no ambiente de testes como no de produção é necessário que o cliente confie no certificado apresentado pelo servidor SIOP.

A implementação dessa relação de confiança varia, o que depende da tecnologia de desenvolvimento utilizada, mas normalmente se faz importando o certificado do servidor no repositório de certificados de servidores conhecidos (na truststore, no exemplo de um cliente Java). Ou seja, você está dizendo ao seu programa que ele deve confiar no webservice.siop.gov.br sem emitir qualquer alerta.

Validade do certificado: os certificados dos nossos servidores têm validade de apenas 1 ano, o que demanda a atualização anual na truststore do cliente.

2.1.1 Obtenção do Certificado do SIOP

Certificado Atual do SIOP

Atual (expira 17-07-2026)	Certificado do SIOP

2.2 Certificado Próprio

Deve ser adquirido pelo usuário um Certificado Digital ICP-Brasil - tipo A1, que é emitido por uma Autoridade Certificadora pertencente a ICP-Brasil. Este certificado, após emitido, deve ser configurado (importado) no repositório de “certificados de cliente” (keystore, no caso do java). Ou seja, é o certificado que o usuário apresentará ao SIOP para autenticar a sua conexão com a SOF, de forma unívoca.

Para solicitação e emissão do certificado será necessário seguir as orientações da sua Autoridade Certificadora - AC. As orientações para os usuários da Autoridade Certificadora SERPRO podem ser encontradas no seguinte endereço: https://ccd.serpro.gov.br/serproacf/

Observação: segundo o Ofício Circular n. 825 de 15 de dezembro de 2016, o MP não custeia mais ou emite certificados para sistemas estruturantes ou integrantes do SISP.

Os seguintes atributos são necessários no certificado:

CN - URL identificadora da aplicação ou equipamento (ex: www.orgao.gov.br)

O - ICP-Brasil

OU - Equipamento A1

Campos obrigatórios do responsável pelo certificado, definidos pela ICP-Brasil para certificados de equipamento/aplicação:

e-mail institucional

CPF

RG

Caso os dados do responsável não correspondam ao titular da unidade administrativa, este deverá, por meio de documento específico (formulário acima), nomear o responsável pelo certificado. Esses atributos, associados ao CN, deverão ser os mesmos cadastrados e autorizados no SIOP como usuário de serviço, para acesso do web service cliente.

Note que o próprio certificado do cliente também tem validade e que precisará ser substituído na keystore do cliente após o seu vencimento. Do contrário, não será validado pelo servidor. O mesmo pode ocorrer com o certificado da CA emitente. Se o certificado da CA vencer, o certificado final do cliente não será aceito, mesmo que não esteja vencido.

Transação HTTPS/TLS para acesso ambiente de Testes do SIOP - Handshake simples (somente com certificado do SIOP)

Transação HTTPS/TLS para acesso ambiente de Produção do SIOP - Handshake completo (com certificados do cliente e do SIOP)

Para mais informações sobre certificados: http://pt.wikipedia.org/wiki/Certificado_digital

Exemplo: como importar o novo certificado no Firefox

Para fins de teste, o certificado pode ser instalado no firefox, na aba servidores, em opções→avançado→certificado→servidores. Situação 1: o certificado do cliente está instalado no browser:

Acessar a URL webservice.siop.gov.br/services/WSQualitativo?wsdl, por exemplo

Clicar com o botão esquerdo no cadeado e clicar em “mais informações”

Na aba segurança, clicar em exibir certificado. Clicar na aba detalhes, selecionar o certificado webservice.siop.gov.br e clicar em exportar (em formato PEM)

Importar o arquivo PEM na lista de certificados confiáveis do cliente do webservice

Situação 2: o certificado do cliente NÃO está instalado no browser e NÃO foi adicionada a exceção de segurança relativa ao novo certificado do servidor:

Acessar a URL webservice.siop.gov.br/services/WSQualitativo?wsdl, por exemplo

Neste caso, quando o browser apresentar a tela de “adicionar exceção”, clicar em“exibir” o certificado, clicar na aba detalhes, selecionar o certificado e clicar em exportar (em formato PEM)

Importar o arquivo PEM na lista de certificados confiáveis do cliente do webservice

Situação 3: o certificado do cliente NÃO está instalado no browser e JÁ foi adicionada a exceção de segurança relativa ao novo certificado do servidor:

Acessar a URL webservice.siop.gov.br/services/WSQualitativo?wsdl, por exemplo

Clicar em Ferramentas > opçoes → Avançado > certificados → certificados

Na aba servidores… o certificado webservice.siop.planejamento.gov.br estará sob ICP-Brasil

Selecionar o certificado webservice.siop.gov.br e clicar em exportar (exportar no formato PEM)

Importar o arquivo PEM na lista de certificados confiáveis do cliente do webservice

3. Credenciais WS SIOP

Os acessos WS ao SIOP são controlados por vários mecanismos de segurança. A identificação de um sistema cliente WS é dada por uma credencial. Cada credencial é dada para um sistema específico.

Uma credencial do SIOP é um usuário especial do sistema que tem permissões de acesso WS. Uma credencial é composta de um nome de login, normalmente iniciado por “WS” e uma senha. Estas informações serão usadas para autenticar o acesso ao SIOP por meio de WS.

Note que as credenciais de WS não permitem o acesso ao ambiente como usuários (pessoas). Não se pode logar manualmente no SIOP usando estas credenciais.

O processo de entrega da credencial para o usuário técnico responsável é todo automático e descrito nestas instruções. Neste serviço as credenciais podem ser alteradas pelo próprio sistema cliente do SIOP.

Como o WS SIOP deve receber a informação da credencial:

O usuário é o login da credencial cadastrada no SIOP (normalmente WS-nome_do_sistema - não é o CPF do responsável!).

O valor passado no atributo senha deve ser o hash MD5 da mesma. Não pode ser nulo.

3.1 Perfis WS do SIOP

Para cada acesso será necessário especificar um perfil1) Para detalhes sobre perfis do SIOP acesse Privilégios no SIOP - Perfis e Papéis .

Segue abaixo a tabela de perfis WS do SIOP:

Código	Nome do perfil WS	O perfil será aprovado por
106	WebService - Cadastrar Precatório	SOF
34	WebService - DEST	SOF
105	WebService - Gestão PPA	SPI
111	WebService - Gestão PPA - Preenchedor	SPI
33	WebService - Órgão Central	SOF
32	WebService - Orgão Setorial	SOF
31	WebService - Unidade Orçamentária	SOF

Observação: muitos casos de uso de WS do SIOP envolvem envio de dados, como por exemplo propostas para o PLOA ou captação do Acompanhamento Orçamentário. Neste caso o envio para o SIOP somente se dará pelo uso do perfil OS ou superior pois o sistema somente aceitará envios para estes momentos. Para maiores informações veja o manual específico do WS SIOP em questão.

4. Ambientes de WS no SIOP

Os WS são baseados em tecnologia aberta WEB como SOAP, XML e WSDL. Os endereços WS para acesso aos ambientes assim como seu propósito estão abaixo:

Testes	https://testews.siop.gov.br/services/NOME_WS?wsdl	É usado somente o certificado do servidor SIOP
Produção	https://webservice.siop.gov.br/services/NOME_WS?wsdl	Além do certificado do SIOP, exige o certificado do cliente também

Onde NOME_WS deve ser alterado para o WS em questão.

Os ambientes podem ser acessados por interface web também. Podem ser usados para validar ou conferir operações WS:

Testes	https://testews.siop.gov.br/siop/	Obs: a base de dados deste ambiente não é igual à de produção
Produção	mesmo endereço do SIOP produção	Dados de produção do SIOP

Obs: pode haver diferença nas versões e nos dados de testes e produção em uso pelos ambientes. As atualizações dependem de que serviços estão sendo testados ou avaliados no momento. Informe-se se a funcionalidade sendo testada no ambiente de testes pode ter diferenças para a versão de produção. No caso de consultas (apenas leitura), não há problemas em testar a funcionalidade em produção, porém será necessário o certificado ICP-Brasil válido do cliente.

Para iniciar o uso dos WS do SIOP, acesse os manuais específicos de WS SIOP.