2013-07-23 3 views
4

Я использовал для оценки того, имел ли домен Google Apps или нет, выполнив запрос CURL на «http://www.google.com/a/ {domain}/» и проверив эту строку «[sign здесь для панели управления] », если бы это было возможно, у него были Google Apps, если бы это было не так, как у них не было Google Apps.Программно оценивать, имеет ли домен Google Apps или нет

Но в последнее время Google перешла на универсальную страницу входа в систему, и она не делала различий между доменами. Теперь это, очевидно, ломается, как я пытался проверить, есть ли у Google Apps.

У кого-нибудь есть какие-нибудь другие проблемы?

Я попытался с Google API, несколько URL, но они требуют Auth ...

Примечания: Я не хочу, чтобы проверить с помощью MX/TXT записи, мне нужно проверить, если у них есть Google Apps, не если они его используют. Причина этого заключается в том, что я разработал Google Apps Toolkit, который сделал серию проверок и дал статус домена, старый метод, который я использовал для проверки, если домен имел Google Apps на 100% точно, каждый другой онлайн-тестер Google Apps, который я использовал был довольно неточен из-за того, что они проверяли записи MX. Я не хочу попасть в эту ловушку. Это было очень полезно для доменов, которые раньше использовали Google Apps, но переехали в другой провайдер и хотите вернуться к реселлеру (это происходит чаще, чем вы думаете, я работаю для реселлера)

+0

Существует хороший шанс, что любой механизм, который вы найдете, не будет на 100% надежным или долго не будет работать. Здесь есть проблема конфиденциальности - вы исследуете информацию, которая не предназначена для публичного ознакомления. Если вам нужно знать, использует ли организация Google Apps, лучше всего быть перед ней и спросить их. –

+0

@steveBazyl, да, вы правы, но проблема в том, что многие компании не знают, что у них есть Google Apps (именно по этой причине мы фактически начали создавать инструмент в первую очередь). См. Комментарий Джеймса Ревильни относительно принятого ответа. Хотя я согласен с тем, что проблемы с неприкосновенностью могут возникнуть, но я думаю, что они в основном не являются проблемой – Mattisdada

ответ

10

Я успешно это понял вне!

Чтобы определить, является ли домен приложения Google купил на него, просто сделайте следующее:

ли запрос CURL к: «https://www.google.com/a/{домен}/ServiceLogin»

Поиск следующей строки : «К сожалению, вы достигли страницы входа в домен, который не использует», если он содержит эту строку, то не имеют Google Apps, если у нее нет этой строки, чем у нее содержат Google Apps.

Функция Пример PHP (я использую file_get_contents вместо CURL на этом примере, потому что он короче, пожалуйста, обратите внимание, что вам нужно будет включить местоположение на основе URL в php.ini)

function lookupGoogleAccount($domain) { 
    $url = "https://www.google.com/a/$domain/ServiceLogin"; 
    $extpage = file_get_contents($url); 
    $not_gapps = strpos($extpage,"Sorry, you've reached a login page for a domain that isn't using"); 

    return !$not_gapps; 
} 

Пример: https://gapps.qk.com.au/?domain=never.io

Используя этот метод, даже если домен является реселлером и использует пользовательское решение SSO, он должен продолжать работать.

+0

СПАСИБО. Это также помогает тем, кто пытается это понять вручную. Сценарий: человек подписывается на хостинг у одного из дешевых, хостинг-провайдеров и выбирает, что они хотят использовать приложения Google для почты и т. Д., Но они никогда на самом деле не устанавливают его. Это позволяет мне узнать наверняка. Спасибо. –

+0

Ха-ха, да, мы часто сталкивались с подобной проблемой! – Mattisdada

+0

@GeorgeB Я могу подтвердить, что это работает еще в 2017 году: https://www.google.com/a/never.io/ServiceLogin (имеет Google) https://www.google.com/a/atotallyrealdomainthatisntmadeup .com/ServiceLogin (не имеет Google) – Mattisdada

-1

answer от Mattisdada не надежно на 100%.

Может быть, когда данный домен был активирован и проверен, поэтому его можно достичь через «https://www.google.com/a/ {domain}/ServiceLogin», как это было предложено, но это не означает, что на самом деле он использует Google Программы.

Лучшее решение, которое я могу найти, это проверить записи MX, которые ищут google ones. Поскольку это вопрос php, лучшим вариантом является использование функции getmxrr.

+0

Вопрос был в том, есть ли в домене Google Apps. Не видеть, активно ли они используют Google Apps. У ИТ-администратора возникают сложности с настройкой домена Google Apps, если Google Apps уже настроен в домене. Это была настоящая проблема, когда Google Apps была бесплатной для 50 пользователей, многие продавцы домена просто добавляли Google Apps, но люди, покупающие домен, не знали. – Mattisdada

+1

Запись MX не является надежным индикатором. Есть домены, которые не направляют электронную почту напрямую в gmail, а проходят через свои собственные серверы во время миграции из своей предыдущей системы. –

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