Я пишу программное обеспечение, которое будет использоваться в основном компаниями.
Затем у меня появилась идея дать компаниям возможность зарегистрировать свой домен электронной почты, чтобы каждый пользователь, который регистрируется с помощью электронной почты данного домена, автоматически включался в группу компаний.
Я знаю, что Slack делает что-то подобное, и это работает, но есть некоторые проблемы ... например, я только что зарегистрировал "live.it" (итальянская версия live.com от Microsoft).
Я не могу просто предположить, что если пользователь подтвердил электронную почту с определенным доменом, то можно безопасно поместить каждого пользователя с одинаковым domain_mail в одну группу.
Например, если я регистрируюсь на me@gmail.com, я не хочу, чтобы регистрация пользователя «gmail.com» имела собственный домен.
Я хотел бы избежать использования таких методов, как «поместить HTML-файл в корень домена» или «установить запись TXT», поэтому мне было интересно, как мне это сделать.
источник
Ответы:
Файл в корневом каталоге
Не исключайте возможность размещения файла в корневом каталоге корпоративного сайта. Он хорошо работает и широко используется: Google Webmaster Tools - один из примеров такой техники. Это делает этот подход привлекательным: так как большинство пользователей уже знают его, они не будут потеряны. Кроме того, он не требует никаких технических знаний, в отличие от изменения записей MX (большинство небольших компаний даже не знают, что такое запись MX).
Чтобы избежать загрязнения корневого каталога, вам следует попросить поместить файл только при выполнении ваших проверок. Как только вы нашли файл, пользователь может удалить его.
Обратите внимание, что пользователи, у которых нет корпоративного сайта, не смогут получить доступ к вашему сервису, но я не думаю, что в этом случае будет много клиентов.
Обратите внимание, что:
Вы должны проверить оба http://example.com/file и http://www.example.com/file , потому что некоторые веб-сайты настроены так, что они не поддерживают форму http://example.com/ .
Вы также можете поддерживать HTTPS, учитывая, что я не думаю, что есть много компаний без перенаправления с HTTP на HTTPS.
Вы не должны принимать никакие другие домены третьего уровня, такие как http://mysite.example.com/ , потому что это позволит тому, кто купил домены третьего уровня, заявить, что он является владельцем домена второго уровня. example.com .
Отправка электронной почты
Отправка электронного письма с секретной ссылкой довольно проблематично. Вы не можете сделать это по адресу firstname.lastname@example.com, потому что конкретный человек может не иметь корпоративного адреса электронной почты (это часто бывает в случае стартапов, когда люди предпочитают использовать свой личный адрес).
Использование электронных писем, таких как admin@example.com, не будет работать в некоторых случаях.
Во-первых, всегда есть компании, не имеющие postmaster@example.com, admin@example.com и т. Д., Но имеющие свои «системные» адреса электронной почты, которые вы не включили в белый список. Рассмотрим конкретно иностранные компании; например, во Франции нередко используется «Administrat eu r» вместо «Administrator», в том числе для адресов электронной почты и имен учетных записей.
Во-вторых, многие небольшие компании не имеют доступа и не знают, как получить доступ к своей электронной почте. Они платят, даже не зная, что у них есть abuse@example.com сотнями срочных писем, ожидающих их ответа.
По той же причине вы не можете основываться на записях WHOIS для адреса электронной почты.
источник
info@
(или любой локальный адрес) будет определен для него, или что у него будет отслеживаемый универсальный адрес.Вопрос в действительности: «Что значит владеть почтовым доменом?».
Владение сайтом определяется возможностью поместить файл в корень . Обычные пользователи могут добавлять файлы,
http://example.com/~user42/validation.txt
но не включать ихhttp://example.com/validation.txt
.Для электронной почты такой иерархии нет. Тем не менее,
postmaster
адрес особенный. (Зарезервировано согласно RFC2142 ) Вы не сможете создаватьpostmaster@gmail.com
. Таким образом, возможность создания и / или доступаpostmaster@
является доказательством того, что вам необходимо владение доменом электронной почты.источник
Видя в своих комментариях, что вы можете не предпочесть использовать метод file-in-root-of-website, альтернатива, которая может сработать, заключается в
Подтвердите право собственности с помощью WHOIS
Вам потребуется получить запрашиваемый домен (например
stackexchange.com
) и один из адресов электронной почты, указанных в выводе WHOIS для этого домена . (Обратите внимание, что это не будет работать для секретной / частной регистрации, но если ваша аудитория - корпорации, это обычно не проблема)Например:
Вы можете даже сделать
whois
поиск в интерактивном режиме и предоставить выпадающий список действительных писем (в данном случае, простоsysadmin-team@stackoverflow.com
). Затем вы отправите проверочный код / ссылку на выбранный адрес электронной почты.источник
Попросите своих пользователей добавить запись TXT в свой домен со ссылкой на их учетную запись на вашем сайте (их имя пользователя, идентификатор или произвольный токен, сгенерированный при запросе пользователя подтвердить свой домен).
Я помню, как добавил запись
adn_verification=<my user name>
в социальной сети, чтобы отобразить мой домен как проверенный, и я подумал, что это довольно аккуратно и не требует, чтобы домен указывал на веб-сервер.источник
Чтобы добавить к предложениям уже на странице: я рекомендую дать пользователю варианты, как он проверяет свой домен. Все остальные предложения на странице идеально подходят для использования, но иногда вы попадаете в ситуацию, когда кто-то, кто хочет проверить свой домен, имеет ограниченный доступ к своему серверу или даже к своему веб-сайту. Например, ваш пользователь может не иметь возможности добавлять записи домена или файлы в корневой каталог домена.
Например, Трой Хант позволяет пользователям осуществлять поиск по всему домену в своей базе данных скомпрометированных учетных записей, но вам нужно сначала проверить. Он дает пользователю на выбор 4 метода:
Во всех 4 из этих случаев он требует, чтобы пользователь где-то ввел определенное значение, которое он проверяет.
Объяснение на http://www.troyhunt.com/2014/01/im-pwned-youre-pwned-were-all-pwned.html .
источник
Можете ли вы позволить себе избегать использования бесплатных веб-писем для регистрации?
Вот что ческому делает: вы не можете зарегистрироваться в с
@gmail.com
,@live.com
и т.д. по электронной почте - вы должны использовать свои собственные.И это объединяет вас этим.
Если вы нацелены на бизнес, это должен быть хороший путь.
У вас все еще может быть проблема в том, чтобы узнать, кто является начальником (скажем, администратором этой группы), но это может быть не так важно - у босса, вероятно, должны быть инструменты, позволяющие любому сотруднику передать ему право собственности, если кто-то зарегистрирован до босса.
источник