XmlUrlResolver.Credentials Property


Sets credentials used to authenticate web requests.

Namespace:   System.Xml
Assembly:  System.Xml (in System.Xml.dll)

public override ICredentials Credentials { set; }

Property Value

Type: System.Net.ICredentials

The credentials to be used to authenticate web requests. If this property is not set, the value defaults to null; that is, the XmlUrlResolver has no user credentials.

If the virtual directory does not require authentication, this property does not need to be set. Otherwise, the credentials of the user must be supplied.

You can associate different credentials with different URIs and add them to a cache. You can then use the credentials to check authentication for different URIs, regardless of the original source of the XML.

The following C# code shows how to set the Credentials property to a credential cache.

NetworkCredential myCred = new NetworkCredential(UserName,SecurelyStoredPassword,Domain); 
CredentialCache myCache = new CredentialCache(); 
myCache.Add(new Uri("http://www.contoso.com/"), "Basic", myCred); 
myCache.Add(new Uri("http://app.contoso.com/"), "Basic", myCred);
XmlUrlResolver resolver = new XmlUrlResolver();
resolver.Credentials = myCache;

The following example creates an XmlUrlResolver object with credentials. The XmlReader uses the credentials on the XmlUrlResolver object to access a network resource.

// Create a resolver and specify the necessary credentials.
XmlUrlResolver resolver = new XmlUrlResolver();
System.Net.NetworkCredential myCred;
myCred  = new System.Net.NetworkCredential(UserName,SecurelyStoredPassword,Domain);  
resolver.Credentials = myCred;

.NET Framework
Available since 1.1
Return to top