2012-06-13 4 views
0

Я написал класс обработчика, и я хотел знать, как проверить подлинность. Я также написал тестовое сообщение XML, в котором я включил некоторые сетевые учетные записи. Что необходимо для чтения/проверки этих сетевых доверенных лиц с помощью Handler?Как проверить аутентификацию в синхронном обработчике?

Handler:

public class HelloWorldHandler : IHttpHandler { 
public HelloWorldHandler() {} 

    public void ProcessRequest(HttpContext context){ 

    HttpRequest request = context.Request; 
    HttpResponse response = context.Response; 

    var stream = context.Request.InputStream; 
    byte[] buffer = new byte[stream.Length]; 
    stream.Read(buffer, 0, buffer.Length); 
    string xml = Encoding.UTF8.GetString(buffer); 
} 

public bool IsReusable 
{ 
    // To enable pooling, return true here. 
    // This keeps the handler in memory. 
    get { return false; } 
} 

XML сообщение фрагмент кода:

 HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); 

     byte[] requestBytes = System.Text.Encoding.UTF8.GetBytes(xml); 
     req.Method = "POST"; 
     req.ContentType = "text/xml;charset=utf-8"; 
     req.ContentLength = requestBytes.Length; 
     req.Credentials = new NetworkCredential("Test", "Password"); 
     Stream requestStream = req.GetRequestStream(); 
     requestStream.Write(requestBytes, 0, requestBytes.Length); 

ответ

2

Я думаю, что HttpContext должен предоставить всю эту информацию. Что-то вроде:

context.User.Identity.IsAuthenticated 

Какой должен быть установлен правильно, если все настроено.

+0

Спасибо, но я ищу немного больше помощи. Если в IIS я настроил метод проверки подлинности на «Базовая проверка подлинности», как настроить его, чтобы разрешить определенный идентификатор пользователя и пароль. – Elim99

Смежные вопросы