CredentialCache.Add 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
자격 증명 캐시에 NetworkCredential을 추가합니다.
오버로드
Add(Uri, String, NetworkCredential) |
SMTP 이외의 프로토콜과 함께 사용할 NetworkCredential 인스턴스를 자격 증명 캐시에 추가하고 이를 URI(Uniform Resource Identifier) 접두사 및 인증 프로토콜과 연결합니다. |
Add(String, Int32, String, NetworkCredential) |
SMTP와 함께 사용할 NetworkCredential 인스턴스를 자격 증명 캐시에 추가하고 이를 호스트 컴퓨터, 포트 및 인증 프로토콜과 연결합니다. 이 메서드를 사용하여 추가한 자격 증명은 SMTP에 대해서만 유효합니다. HTTP 또는 FTP 요청에는 이 메서드가 작동하지 않습니다. |
Add(Uri, String, NetworkCredential)
- Source:
- CredentialCache.cs
- Source:
- CredentialCache.cs
- Source:
- CredentialCache.cs
SMTP 이외의 프로토콜과 함께 사용할 NetworkCredential 인스턴스를 자격 증명 캐시에 추가하고 이를 URI(Uniform Resource Identifier) 접두사 및 인증 프로토콜과 연결합니다.
public:
void Add(Uri ^ uriPrefix, System::String ^ authType, System::Net::NetworkCredential ^ cred);
public void Add (Uri uriPrefix, string authType, System.Net.NetworkCredential cred);
member this.Add : Uri * string * System.Net.NetworkCredential -> unit
Public Sub Add (uriPrefix As Uri, authType As String, cred As NetworkCredential)
매개 변수
- authType
- String
uriPrefix
에 명명된 리소스가 사용한 인증 체계입니다.
- cred
- NetworkCredential
자격 증명 캐시에 추가할 NetworkCredential입니다.
예외
동일한 자격 증명이 두 번 이상 추가되는 경우
예제
다음 코드 예제에서는 여러 보안 자격 증명을 CredentialCache 사용 하 여 를 초기화 하 고 해당 자격 증명을 사용 하 여는 합니다 WebRequest.
CredentialCache^ myCache = gcnew CredentialCache;
myCache->Add( gcnew Uri( "http://www.contoso.com/" ), "Basic", gcnew NetworkCredential( UserName,SecurelyStoredPassword ) );
myCache->Add( gcnew Uri( "http://www.contoso.com/" ), "Digest", gcnew NetworkCredential( UserName,SecurelyStoredPassword,Domain ) );
wReq->Credentials = myCache;
CredentialCache myCache = new CredentialCache();
myCache.Add(new Uri("http://www.contoso.com/"),"Basic",new NetworkCredential(UserName,SecurelyStoredPassword));
myCache.Add(new Uri("http://www.contoso.com/"),"Digest", new NetworkCredential(UserName,SecurelyStoredPassword,Domain));
wReq.Credentials = myCache;
Dim myCache As New CredentialCache()
myCache.Add(New Uri("http://www.contoso.com/"), "Basic", New NetworkCredential(UserName, SecurelyStoredPassword))
myCache.Add(New Uri("http://www.contoso.com/"), "Digest", New NetworkCredential(UserName, SecurelyStoredPassword, Domain))
wReq.Credentials = myCache
설명
메서드는 Add SMTP 이외의 프로토콜에서 사용할 인스턴스를 에 CredentialCache배치 NetworkCredential 합니다. 캐시는 자격 증명을 추가된 순서대로 저장합니다. 메서드가 GetCredential(Uri, String) 호출되면 적절한 일치 NetworkCredential 인스턴스를 반환합니다.
적용 대상
Add(String, Int32, String, NetworkCredential)
- Source:
- CredentialCache.cs
- Source:
- CredentialCache.cs
- Source:
- CredentialCache.cs
SMTP와 함께 사용할 NetworkCredential 인스턴스를 자격 증명 캐시에 추가하고 이를 호스트 컴퓨터, 포트 및 인증 프로토콜과 연결합니다. 이 메서드를 사용하여 추가한 자격 증명은 SMTP에 대해서만 유효합니다. HTTP 또는 FTP 요청에는 이 메서드가 작동하지 않습니다.
public:
void Add(System::String ^ host, int port, System::String ^ authenticationType, System::Net::NetworkCredential ^ credential);
public void Add (string host, int port, string authenticationType, System.Net.NetworkCredential credential);
member this.Add : string * int * string * System.Net.NetworkCredential -> unit
Public Sub Add (host As String, port As Integer, authenticationType As String, credential As NetworkCredential)
매개 변수
- credential
- NetworkCredential
자격 증명 캐시에 추가할 NetworkCredential입니다.
예외
authType
이 허용되는 값이 아닌 경우.
port
가 0보다 작은 경우
예제
다음 코드 예제에서는 CredentialCache SMTP와 함께 사용할 여러 보안 자격 증명으로 를 초기화하고 해당 자격 증명 중 하나를 와 함께 SmtpClient사용합니다.
SmtpClient^ client = gcnew SmtpClient("ContosoMail", 45);
MailAddress^ from = gcnew MailAddress("sender@SenderMailServerName.com", "Sender Name");
MailAddress^ to = gcnew MailAddress("recepient@RecepientMailServerName.com", "Recepient Name");
MailMessage^ message = gcnew MailMessage(from, to);
message->Body = "This is a test email message sent by an application. ";
message->Subject = "Test Email using Credentials";
NetworkCredential^ myCreds = gcnew NetworkCredential("username", "password", "domain");
CredentialCache^ myCredentialCache = gcnew CredentialCache();
try
{
myCredentialCache->Add("ContoscoMail", 35, "Basic", myCreds);
myCredentialCache->Add("ContoscoMail", 45, "NTLM", myCreds);
client->Credentials = myCredentialCache->GetCredential("ContosoMail", 45, "NTLM");
client->Send(message);
Console::WriteLine("Goodbye.");
}
catch(Exception^ e)
{
Console::WriteLine("Exception is raised. ");
Console::WriteLine("Message: {0} ",e->Message);
}
SmtpClient client = new SmtpClient("ContosoMail", 45);
MailAddress from = new MailAddress("sender@SenderMailServerName.com", "Sender Name");
MailAddress to = new MailAddress("recepient@RecepientMailServerName.com", "Recepient Name");
MailMessage message = new MailMessage(from, to);
message.Body = "This is a test email message sent by an application. ";
message.Subject = "Test Email using Credentials";
NetworkCredential myCreds = new NetworkCredential("username", "password", "domain");
CredentialCache myCredentialCache = new CredentialCache();
try
{
myCredentialCache.Add("ContoscoMail", 35, "Basic", myCreds);
myCredentialCache.Add("ContoscoMail", 45, "NTLM", myCreds);
client.Credentials = myCredentialCache.GetCredential("ContosoMail", 45, "NTLM");
client.Send(message);
Console.WriteLine("Goodbye.");
}
catch(Exception e)
{
Console.WriteLine("Exception is raised. ");
Console.WriteLine("Message: {0} ",e.Message);
}
Dim client As New SmtpClient("ContosoMail", 45)
Dim from As New MailAddress("sender@SenderMailServerName.com", "Sender Name")
Dim sendTo As New MailAddress("recepient@RecepientMailServerName.com", "Recepient Name")
Dim message As New MailMessage(from, sendTo)
message.Body = "This is a test email message sent by an application. "
message.Subject = "Test Email using Credentials"
Dim myCreds As New NetworkCredential("username", "password", "domain")
DIm myCredentialCache As New CredentialCache()
Try
myCredentialCache.Add("ContoscoMail", 35, "Basic", myCreds)
myCredentialCache.Add("ContoscoMail", 45, "NTLM", myCreds)
client.Credentials = myCredentialCache.GetCredential("ContosoMail", 45, "NTLM")
client.Send(message)
Console.WriteLine("Goodbye.")
Catch e As Exception
Console.WriteLine("Exception is raised. ")
Console.WriteLine($"Message: {e.Message} ")
End Try
설명
이 메서드는 NetworkCredential SMTP와 함께 사용할 인스턴스를 에 배치합니다 CredentialCache. 캐시는 자격 증명을 추가된 순서대로 저장합니다. 메서드가 GetCredential(String, Int32, String) 호출되면 , port
및 와 일치하여 선택한 인스턴스를 host
반환 NetworkCredential 합니다authType
. 비교는 대/소문자를 구분하지 않습니다.
에 지원 authType
되는 값은 "NTLM", "다이제스트", "Kerberos" 및 "Negotiate"입니다.
이 메서드와 함께 추가된 자격 증명은 SMTP에서만 사용할 수 있습니다. 이 메서드는 HTTP 또는 FTP 프로토콜에 대해 작동하지 않습니다.
적용 대상
.NET