2013-08-05 2 views
0

IIS에 기본 인증이 있습니다. 내 WPF 응용 프로그램은 WebBrowser를 사용하여 IIS에 게시 된 Silverlight 응용 프로그램에 연결합니다. 그리고 나는 자격 증명을 미리 정의하는 다른 방법을 시도합니다. Like :자격증 명. Silverlight 응용 프로그램에서 C# 권한 부여

Uri uri = new Uri("http://1.1.1.1/MyApp"); 
byte[] authData = System.Text.UnicodeEncoding.UTF8.GetBytes("user: password"); 
string authHeader = "Authorization: Basic " + Convert.ToBase64String(authData) + "\r\n"; 
this.browser.Navigate(uri, "", null, authHeader); 

하지만 문제는 해결되지 않습니다. 모든 내가 할 수있는이 :

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri); 
CredentialCache credentials = new CredentialCache(); 
credentials.Add(
    uri, "Basic", 
    new NetworkCredential("user", "password")); 
    request.Credentials = credentials; 
    request.PreAuthenticate = true; 
    WebResponse response = request.GetResponse(); 
    this.browser.NavigateToStream(response.GetResponseStream()); 

그러나이 경우 내가 Silverlight.js 다른 모든 스타일과 자바 스크립트를 사용하지 못할.

답변

0

사용자 정의 또한IServiceProvider 및 IAuthenticate를 인터페이스를 구현 된 IOleClientSite 목적으로 WebBrowser 컨트롤을 제공함으로써이를 달성 할 수있는 방법이있다. IAuthenticate을 통해 자격 증명을 제공하십시오. 이 접근법에는 해킹이 포함됩니다. 구현에 대한 자세한 내용은이 우수한 블로그 post을 참조하십시오.

+0

하지만, 이제는 자격 증명과 인증이 실버 라이트 애플리케이션에서만 작동한다는 것을 알았습니다. – Novikov