Мое веб-приложение размещено на IIS, ОС: Windows Server 2012 R2 (x64). В каталоге приложения есть провайдеры ntlm и согласования, настроенные в Windows Authentication
Мой код ActivePerl выглядит следующим образом:
use strict;
use SOAP::Lite 'trace', 'debug';
use Authen::NTLM;
use Data::Dumper;
my $user = '\\username';
my $pass = 'password';
my $host = 'host.example.com:80';
ntlmv2(1);
my @ua_args = (keep_alive => 1);
my $soap = SOAP::Lite
-> uri('http://akhan/MicrosoftDynamicsAXAif60/')
-> proxy('http://akhan/MicrosoftDynamicsAXAif60/T4edEmpInfoSvcHttp/xppservice.svc', keep_alive => 1, credentials => [$host, '', $user, $pass])
-> on_action(sub { join '/', 'http://akhan.tatweer.edu.sa/MicrosoftDynamicsAXAif60', $_[1] })# needed for .NET
-> readable(1)
;
my $method = SOAP::Data->name('getAllNationalities')
->attr({xmlns => 'http://akhan/MicrosoftDynamicsAXAif60/'});
print $soap->call($method)->result;
sub SOAP::Transport::HTTP::Client::get_basic_credentials { return ('someUser' => 'someUsersPassword') };
Это ответ, который я получил