Requisitos de segurança de conjuntos de importação de serviços da Web
Versão de lançamento: Washingtondc
Atualizado 1 de fev. de 2024
2 min. de leitura
Os Import Sets do Web Service usam os mesmos mecanismos de segurança que o SOAP Web Services.
A autenticação básica requer que um usuário do Serviço Web forneça um nome de usuário e uma senha válidos.
A segurança contextual requer que um usuário do Serviço Web atenda à regra de controle de acesso da tabela consultada.
Se sua instância usa configurações de alta segurança, o usuário do serviço Web também pode precisar da função SOAP.
Links relacionados a conjuntos de importação de serviços da web
Ao exibir uma tabela de serviço Web mapeada, você tem os seguintes links relacionados.
Conjuntos de importação — Os conjuntos de importação relacionados a este conjunto de importação de serviço Web.
Mapas de transformação — Uma lista de mapas de transformação relacionados a este serviço Web.
Histórico de transformação — O histórico de transformação.
Editar serviço Web — Edite o serviço Web.
A imagem a seguir mostra um registro que foi inserido na Notificação do conjunto de importação de serviço Web. O registro de destino é a criação ou modificação resultante no registro da tabela Incidente como resultado da transformação.Figura 1. Notificação SOAP
Exemplo de conjuntos de importação de serviço da Web
Este exemplo demonstra o WSDL, o envelope e a resposta SOAP, a invocação Perl e o resultado de uma importação de serviço Web SOAP.
<?xmlversion="1.0"encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><SOAP-ENV:Body><insertResponse><sys_id>b54aafbfc0a8006f0058db95daa5b88d</sys_id><table>incident</table><display_name>number</display_name><display_value>INC10008</display_value><status>ignored</status><status_message>No field values changed</status_message></insertResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
Exemplo de invocação usando Perl
O script de exemplo a seguir usa o serviço Web de notificação para criar um incidente como o usuário itil. Ele usa a linguagem Perl e o pacote SOAP::Lite SOAP::Lite.
#!/usr/bin/perl -w
#use SOAP::Lite ( +trace => all, maptype => {} );use SOAP::Lite;
sub SOAP::Transport::HTTP::Client::get_basic_credentials{return'itil'=>'itil';// set basic auth credentials for the itil user
}
my$soap= SOAP::Lite->proxy('http://localhost:8080/glide/imp_notification.do?SOAP');
my$method= SOAP::Data->name('insert')->;attr({xmlns =>'http://www.service-now.com/'});
# insert into the web servicemy@params=( SOAP::Data->name(message =>'problem detected for database DB12DG'));push(@params, SOAP::Data->name(source =>'DB12DG'));push(@params, SOAP::Data->name(uuid =>'HGAF76251HGF2'));
my$result=$soap->call($method=>@params);
print_fault($result);//print any SOAP faults
print_result($result);//print any results
sub print_result {my($result)=@_;if($result->body&&$result->body->{'insertResponse'}){my%keyHash=%{$result->body->{'insertResponse'}};foreachmy$k(keys%keyHash){print"name=$k value=$keyHash{$k}\n";}}}
sub print_fault {my($result)=@_;if($result->fault){print"faultcode=".$result->fault->{'faultcode'}."\n";print"faultstring=".$result->fault->{'faultstring'}."\n";print"detail=".$result->fault->{'detail'}."\n";}}
A seguir está o resultado impresso pelo script Perl no console.