Ali Majed HA Ответов: 2

Мне нужна помощь в создании формы входа в web API


Привет
Мне нужно создать безопасную форму входа в Web API,и я не хочу передавать значения входа через URL-адрес для перенаправления страницы.Моя проблема в том, что :
Я могу проверить, что имя пользователя и пароль верны (существуют в SQL DB), но я не знаю, как передать значения на перенаправленную страницу (Home.html) таким образом, пользователь может перенаправить на свою собственную домашнюю страницу свою личную информацию.

Что я уже пробовал:

Контроллер:
public class LoginAuthenticateArgs
{
  public string Username {get; set;}
  public string Password {get; set;}
}


[HttpPost]
public int LoginAuthenticate(LoginAuthenticateArgs _Login)
{
  using(Product _Product = new Product())
  {
    var _UserLogin = _Product.Login
                              .where(c=>c.Username == _Login.Username &&
                                        c.Password == _Login.Password)
                               .singleordefault();
    if(_UserLogin != null)
    {
       return _UserLogin .ID;
    }
  }
}


язык JavaScript:
function LoginClick(){
 var data = {
   Username: $("#UsernameTextbox").val(),
   Password: $("#PasswordTextbox").val()
 };
 Ajax("Controller/function", data, Success, Fail, "post"};
};

function Success(response){
  // I don't know what to do now and how to pass the response
  // to redirect page
};

F-ES Sitecore

Бессмысленно использовать AJAX при перенаправлении кого-то на новую страницу, просто используйте обычную форму, и вы получите выгоду, если ваш сайт все еще работает без js.

Ali Majed HA

Спасибо за ваш комментарий,я буду иметь его в виду.

Richard Deeming

Вы храните пароли в виде обычного текста. То есть чрезвычайно плохая идея.

Вы должны хранить только соленый хэш пароля, используя несколько итераций безопасного алгоритма хэширования и уникальную соль для каждой записи.

Безопасная Аутентификация Паролем Объясняется Просто[^]
Соленое хэширование паролей - все правильно[^]

Ali Majed HA

Эй, Ричард, твой комментарий открыл для меня новое окно, большое спасибо.

2 Ответов

Рейтинг:
8

Harpreet05Kaur

ПРИВЕТ,

Вы можете использовать window.sessionStorage в jquery.


Ali Majed HA

Привет
Большое спасибо, вы решили мою проблему, еще раз спасибо

Рейтинг:
1

Md. Mojammel Haque

Попробовать это:
если (ответ.Идентификатор != неопределенные и усилитель; & ответ.Идентификатор != нуль) {
окно.location = ' / home?Идентификатор=' + ответ.Идентификатор;


Ali Majed HA

Привет
Спасибо за Ваш ответ, но безопасно ли передавать имя Пользователя по URL-адресу ?
Как я могу его вернуть?