基本認証コードのサンプル
いくつかのプログラミング言語とバージョンの基本認証コードのサンプルを示します。
Perl および SOAP::Lite ライブラリー
Perl と SOAP::Lite ライブラリーの使用時に基本認証を提供するには、次の機能を実装できます。
sub SOAP::Transport::HTTP::Client::get_basic_credentials {
return 'user_name' => 'password';
}C# .NET VS 2005 以前
C# .NET VS 2005 以前のバージョンを使用している場合は、Credentials オブジェクトを利用できます。例:
System.Net.ICredentials cred = new System.Net.NetworkCredential("user_name", "password");
service.ServiceNow proxy = new service.ServiceNow();
service.get getService = newservice.get();
service.getResponse getServiceResponse = new service.getResponse();
try
{
proxy.Credentials = cred;
getService.sys_id = "bf522c350a0a140701972dbf876f1610";
getServiceResponse = proxy.get(getService);
catch (Exception ex) { }C# .NET VS 2008
C# .NET VS 2008 を使用している場合は、ClientCredentials オブジェクトを利用できます。例:
Demo_Incident.ServiceNowSoapClient client = new Test08WebService.Demo_Incident.ServiceNowSoapClient();
client.ClientCredentials.UserName.UserName = "admin";
client.ClientCredentials.UserName.Password = "admin";次に、app.config ファイルで以下を探し、「None」を「Basic」に変更します。
<transport clientCredentialType="None" proxyCredentialType="None" realm="" />VB .NET
VB .NET を使用している場合は、Credentials オブジェクトを利用すると次のようになります。
Sub Main()
Dim cred As New System.Net.NetworkCredential("user_name", "password")
Dim proxy As New VB_Democm.incident.ServiceNow
Dim getIncident As New VB_Democm.incident.get
Dim getResponse As New VB_Democm.incident.getResponse
proxy.Credentials = cred
getIncident.sys_id = "[your sysID here]"
getResponse = proxy.get(getIncident)
End Subベーシック認証がオンになっており、認証情報が提供されていない場合の結果の応答は、次のようになります。
<html>
<head>
<title>Apache Tomcat/5.0.28 - Error report</title>
<style> <!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;}
H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;}
H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;}
BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;}
B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;}
P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}
A {color: black;}
A.name {color: black;}
HR {color: #525D76;}-->
</style>
</head>
<body>
<h1>HTTP Status 401 -\</h1>
<HR size="1" noshade="noshade">
<p><b>type</b> Status report</p>
<p><b>message</b> <u></u></p>
<p><b>description</b>
<u>This request requires HTTP authentication ().</u></p>
<HR size="1" noshade="noshade">
<h3>Apache Tomcat/5.0.28</h3>
</body>
</html>