2013-05-15 1 views
0

У меня есть открытый вопрос о моей идее. Вот некоторые предпосылки: Я разрабатываю приложение PHP для компании, в которой я работаю. Он предназначен для использования только его сотрудниками. У каждого сотрудника есть доступ к нашему сайту SharePoint. В основном приложение должно быть доступно только для людей, имеющих доступ к нашему SharePoint.Авторизация пользователей путем загрузки файла с внешнего портала SharePoint

У меня есть идея использовать SP для авторизации пользователей в моем приложении. Авторизация будет основана на загрузке защищенного файла из SP (один для всех пользователей), используя CURL. Если файл правильно загружен, вы вошли в систему. Если это не так, вам не разрешено обращаться к приложению (конечно, обработка исключений). Итак, у каждого человека, имеющего доступ к SP, будет доступ к приложению. Приложение и SP расположены на разных серверах.

Что вы думаете об этой идее? Будет ли это безопасно? Это хорошая идея?

Я перечислил некоторые плюсы и минусы, которые пришли мне на ум ...

Плюсы:

  • легко разработать
  • контроля доступа проводится SharePoint
  • пользователей DON» t необходимо изучить новые логины и пароли
  • IMO это должно быть безопасно, потому что в базе приложения не будут храниться пароли

Cons/уязвимости:

  • вероятность того, что файл будет случайно удален

Приветствия, Zibi

ответ

0

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

Вообще говоря, безопасность «roll-your-own» - это рецепт катастрофы. Вы должны использовать встроенный механизм отслеживания сеансов PHP. Вы можете найти a good tutorial here, если вы еще не знаете, как его использовать. Ваш пользователь должен будет снова аутентифицироваться, но, к сожалению, это необходимо для обеспечения надлежащей безопасности.

Также имейте в виду, что с вашим предлагаемым решением не может быть контроля доступа за пределами «сотрудника». Это серьезно ограничивает в будущем, если вам когда-либо понадобится предоставить возможность ограничить доступ пользователей к ресурсам на основе идентификатора пользователя, ролей или групп. В будущем вы будете намного счастливее, если вы сделаете это правильно на этом этапе игры.

+0

Благодарим за ваше мнение, Freedom_Ben. После переосмысления всей идеи, я думаю, вы правы в этом. Лучше сделать это правильно. – zbig

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