2016-08-14 3 views
4

Я никогда раньше не использовал этот стек, и я просто хотел убедиться, что я думаю по правильной линии.Аутентификация ASP-форм с помощью WCF?

У меня есть служба WCF с проверкой подлинности Windows для обеспечения безопасности транспорта и сертификат безопасности сообщений с одной конечной точкой TCP. У моего сервиса есть методы аутентификации имени и пароля простого текста, имя пользователя используется для извлечения соли из базы данных, а данный пароль хэшируется с помощью этой соли, а затем сравнивается с паролем из базы данных.

Чтобы проверить подлинность пользователей в моем проекте ASP MVC, я просто использую проверку подлинности форм и настройку файла cookie auth, если служба WCF возвращает http-код ОК, когда имя пользователя и пароль передаются из действия в службу.

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

Этот проект является общественным облицовкой.

+0

вы используете HTTPS? –

+0

@SimonMourier Да –

ответ

2

Существует множество факторов, которые следует учитывать.

  1. Может ли домен для службы WCF быть захвачен и DNS перенаправлен?
  2. Как обрабатываются ошибки в службе WCF. Возможно, статус OK может быть возвращен в случае ошибки?
  3. Соли в порядке, но я бы рекомендовал что-то вроде BCRYPT вместо этого для хранения и проверки пароля.
  4. Убедитесь, что вы имеете requireSSL flag набор в формах, а

0
  • использование HTTPS
  • Добавить CAPTCHA код в проекте MVC
  • Добавить промежуток времени между повторной попытки, предел время повтора
  • не использовать простой текст, сначала закодируйте его, даже md5 будет лучше
  • , если это в Интернете, вы бы лучше найти эксперта
+1

Я честно не думаю, что то, что вы пытаетесь передать, все это здорово. CAPTCHA для веб-службы? Странно избыточно, особенно при переходе на другие сервисы и платформы. «Если это в Интернете, вам лучше найти эксперта». Это ужасно неточное утверждение. Microsoft инвестировала миллионы долларов в создание замечательных библиотек, режимов обучения и учебников для среднего разработчика, чтобы следовать за созданием защищенных API для предоставления подключенным к Интернету устройствам. –

1

Я настоятельно рекомендую отходя от форм проверки подлинности при работе со службой WCF или REST службы. Вы можете использовать аутентификацию BASIC и полностью обмениваться SSL, и это было бы намного лучше. Несколько вещей, на которые нужно действительно посмотреть, следующие:

  • Как вы планируете совершать попытки грубой силы.
  • Как вы планируете заблокировать себя законных пользователей.
  • Какие ОС вы планируете использовать для таргетинга? Вы создаете службу WCF для веб-сайта
    или планируете ли вы использовать IOS и Android позже?

После рассмотрения всех вышеперечисленных вариантов, проверьте следующее:

https://msdn.microsoft.com/en-us/library/ff406125.aspx

И когда вы думаете, что вы читали достаточно, прочитать немного больше. Лучшие методы безопасности OWASP для WCF являются удивительным стандартом, вы даже можете создать контрольный список.

https://www.owasp.org/index.php/WCF_Security_Best_Practices

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