Nano Hash - криптовалюты, майнинг, программирование

DotNetOpenAuth OpenIdTextBox для Google / Yahoo

Если я хочу интегрировать DotNetOpenAuth (основной для людей, которые используют свои учетные записи Google / Yahoo для входа в систему, а не в качестве провайдера) в мой существующий сайт, достаточно ли этого однострочного управления?

<rp:OpenIdTextBox ID="OpenIdTextBox1" runat="server" />

Скажем, если пользователь хочет войти в систему как Google, я могу просто установить текстовое поле на «https://www.google.com/accounts/o8/id ", а затем они смогут войти. Я попробовал это с моей учетной записью Google, похоже, он работает, и я могу получить токен из HttpContext.Current.User.Identity.Name.

Достаточно ли надежно это «однострочное» решение для производства? или это «обязательно», что я должен использовать элемент управления «OpenIdSelector» или «OpenIDLogin»?

Я также открыл шаблон .net и несколько примеров, они очень сложные. Существуют политики PAPE, xrds.aspx (для обнаружения), ConsumerKey + ConsumerSecret ... и т. Д. Как новичок, я очень запутался. Мы будем очень благодарны за любые советы по этому поводу. Спасибо

11.05.2010

Ответы:


1

С точки зрения безопасности того, что вы сделали, достаточно. Но есть еще кое-что, что вам нужно / нужно сделать. Первый - установить этот атрибут в теге вашей страницы в верхней строке:

<%@ Page ValidateRequest="false" %>

В противном случае ваши пользователи будут видеть случайные сбои при входе в систему, потому что некоторые сообщения OpenID «выглядят» опасными для ASP.NET.

Следующее, что вам нужно сделать, это настроить вашу страницу xrds.aspx и ссылку на нее с вашей домашней страницы. Это не является строго необходимым для работы базового OpenID, но это повышает безопасность вашего сайта, если у вас есть открытые URL-адреса перенаправителя, а некоторые провайдеры, такие как Google и Yahoo, могут отображать уродливые предупреждающие сообщения для ваших пользователей, если вы не реализуете это должным образом " Обнаружение RP "аспект вашего сайта.

После этого вы можете оставить его в покое, если получите все необходимое.

Но если вас интересуют только пользователи Google, подумайте об использовании OpenIdButton элемента управления ASP.NET вместо OpenIdTextBox, поскольку он может улучшить визуализацию для ваших пользователей.

12.05.2010
  • Спасибо, Андрей, за советы, они очень полезны. Ваш DotNetOpenAuth просто великолепен, продолжайте в том же духе. Чем больше я об этом думаю, тем больше думаю об использовании OpenIdSelector. Думаю, советы validaterequest и xrds.aspx также применимы к OpenIdSelector, верно? 12.05.2010
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

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

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..