Я использую аутентификацию по форме в моем приложении asp. net, мое приложение может использоваться как punchout, где другое приложение может использовать мое приложение с предыдущей аутентификацией, однако оно внезапно перестало работать после получения windows 10 обновление от Microsoft.
Мое приложение каталога использовалось для открытия во фрейме, процесс выглядит следующим образом: после получения запроса punchout запрос проверяется, аутентифицируется, а затем система перенаправляет его на домашнюю страницу каталога с помощью response.redirect. , однако мы потеряли контроль при перенаправлении на домашнюю страницу и получили URL-адрес для входа в систему для проверки подлинности формы.
ниже приведен пример кода, который проверяет подлинность запроса punchout и перенаправляет на главную страницу (то есть default.aspx)
private void AuthenticatePunchoutUser()
{
String punchoutid = Request["punchout"].ToString();
//Create a PunchoutDB object and Authenticate the punchout request
ePlus.Catalog.DataTypes.cXMLPunchout oPunchout = null;
try
{
ePlus.Catalog.DataTypes.cXMLPunchoutDB oPunchoutDB = new ePlus.Catalog.DataTypes.cXMLPunchoutDB();
oPunchout = oPunchoutDB.AuthenticatePunchout(punchoutid);
}
catch (System.Exception e2)
{
ePlus.Data.Global.Log.Error("Error authenticating punchout session with punchoutid= " + punchoutid, e2);
throw;
}
//Log that the user was authenticated
ePlus.Data.Global.Log.Info("Authenticated punchout User " + strUserName);
//Tell Forms Authentication that the user is valid
System.Web.Security.FormsAuthentication.SetAuthCookie(oUser.Login, false);
String strRedirect = "~/Secure/Default.aspx";
//Redirect
this.Page.Response.Redirect(strRedirect);
}
в response.redirect, приложение перенаправлено на страницу входа (то есть, URL-адрес входа для аутентификации в форме).