Идентификация ASP.NET MVC 5 и Azure

Я пытаюсь опубликовать тестовый веб-сайт с нового Visual Studio 2013 RC на лазурный, используя MVC 5 spa template.

Я могу заставить процесс регистрации/входа/выхода из системы работать нормально, за исключением небольшой проблемы, которая меня беспокоит. Если я попытаюсь войти в систему, используя неверные учетные данные, на страницу вернется строка ошибки «Произошла неизвестная ошибка». вместо «Неверное имя пользователя или пароль». так и должно быть, если GrantResourceOwnerCredentials в ApplicationOAuthProvider.cs работает нормально.

На локальном хосте я получаю правильное «Имя пользователя или пароль неверны». сообщение.

Журнал ошибок из Azure:

</head> 
<body> 
<div id="content"> 
<div class="content-container"> 
<h3>HTTP Error 400.0 - Bad Request</h3> 
<h4>Bad Request</h4> 
</div> 
<div class="content-container"> 
<fieldset><h4>Most likely causes:</h4> 
<ul>    <li></li> </ul> 
</fieldset> 
</div> 
<div class="content-container"> 
<fieldset><h4>Things you can try:</h4> 
<ul>    <li>Create a tracing rule to track failed requests for this HTTP status code. For more information about creating a tracing rule for failed requests, click <a href="http://go.microsoft.com/fwlink/?LinkID=66439">here</a>. </li> </ul> 
</fieldset> 
</div> 

<div class="content-container"> 
<fieldset><h4>Detailed Error Information:</h4> 
<div id="details-left"> 
<table border="0" cellpadding="0" cellspacing="0"> 
<tr class="alt"><th>Module</th><td>&nbsp;&nbsp;&nbsp;__DynamicModule_Microsoft.Owin.Host.SystemWeb.OwinHttpModule, Microsoft.Owin.Host.SystemWeb, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35_08fdea3d-9972-4dc2-b0fc-c8ffdb2e4253</td></tr> 
<tr><th>Notification</th><td>&nbsp;&nbsp;&nbsp;AuthenticateRequest</td></tr> 
<tr class="alt"><th>Handler</th><td>&nbsp;&nbsp;&nbsp;ExtensionlessUrlHandler-Integrated-4.0</td></tr> 
<tr><th>Error Code</th><td>&nbsp;&nbsp;&nbsp;0x00000000</td></tr> 

</table> 
</div> 
<div id="details-right"> 
<table border="0" cellpadding="0" cellspacing="0"> 
<tr class="alt"><th>Requested URL</th><td>&nbsp;&nbsp;&nbsp;http://[site]:80/Token</td></tr> 
<tr><th>Physical Path</th><td>&nbsp;&nbsp;&nbsp;C:\DWASFiles\Sites\[site]\VirtualDirectory0\site\wwwroot\Token</td></tr> 
<tr class="alt"><th>Logon Method</th><td>&nbsp;&nbsp;&nbsp;Not yet determined</td></tr> 
<tr><th>Logon User</th><td>&nbsp;&nbsp;&nbsp;Not yet determined</td></tr> 

</table> 
<div class="clear"></div> 
</div> 
</fieldset> 
</div> 

<div class="content-container"> 
<fieldset><h4>More Information:</h4> 
The request could not be understood by the server due to malformed syntax. 
<p><a href="http://go.microsoft.com/fwlink/?LinkID=62293&amp;IIS70Error=400,0,0x00000000,9200">View more information &raquo;</a></p> 
<p>Microsoft Knowledge Base Articles:</p> 

Я не уверен, как это может быть искаженный синтаксис, поскольку тот же синтаксис отправляется и обрабатывается при отправке правильных учетных данных для входа.

Кто-нибудь достаточно знаком с этим, чтобы знать, что происходит, или, по крайней мере, путь, по которому можно пройти, чтобы приблизиться к ответу, отличному от статьи базы знаний? Если это еще не очевидно, я новичок в этом — это мой первый веб-сайт в ASP.NET, первое знакомство с OAuth и первое использование Azure.


person user2787092    schedule 29.09.2013    source источник
comment
Я просматривал заголовки POST и тело запроса в fiddler и не вижу никакой разницы между синтаксисом входа в систему с хорошими учетными данными и входа с плохими учетными данными. У кого-нибудь еще есть эта проблема? Возможно, это какой-то баг, связанный с тем, что это новая система идентификации mvc 5? Возможно, журнал Azure, который предполагает, что проблема связана с неправильным синтаксисом, неверен.   -  person user2787092    schedule 30.09.2013
comment
Похоже, это не проблема Azure, а ASP.NET MVC. Возможно, в вашем коде вы отобразите имя пользователя, но вы не проверяете, отличается ли Identity от нулевого значения. Хороший совет: включите Nugget Elmah и повторите этот тест. Вы сможете увидеть ошибку и трассировку стека.   -  person Thiago Custodio    schedule 30.09.2013
comment
Я должен был упомянуть, что код работает на локальном хосте. Он возвращает только «Произошла неизвестная ошибка. на Азуре. Я только что обновил исходный пост, чтобы указать на это. Я посмотрю на Эльму, спасибо за предложение.   -  person user2787092    schedule 01.10.2013


Ответы (1)


Поскольку это было просмотрено несколько раз, я просто хотел добавить обновление/ответ. Я так и не узнал, в чем проблема, но она исчезла после обновления до Visual Studio 2013 RTM. Было довольно много обновлений ASP.Identity в RTM, поэтому я не уверен, что это исправило (возможно, оно даже не было связано с VS и было исправлено обновлением, которое было применено к Azure, насколько я знаю), но, надеюсь, любой, у кого была такая же проблема, также видел, как она ушла.

person user2787092    schedule 31.10.2013