Префикс целевого пути AuthSub не соответствует предоставленному "следующему" URL

У нас есть это веб-приложение, в котором каждый клиент подключает свой домен / использует субдомен к нашему домену для своей учетной записи. Этот аккаунт может быть интегрирован с Google Analytics для статистики.

Наша проблема с аутентификацией AuthSub. Часто, когда мы перенаправляем пользователя на вход в Google, ему выдается ошибка AuthSub target path prefix does not match the provided "next" URL.,

В соответствии с этим вопросом я изменил next URL на неограниченный без перенаправлений, но это не решило проблему.

Насколько я понимаю, я не могу зарегистрировать наше приложение в Google, поскольку у каждого клиента есть свой уникальный домен (хотя у большинства есть *.our-app.com).

Что еще я могу попробовать? Спасибо.

Редактировать: это полное сообщение об ошибке.

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

Префикс целевого пути AuthSub не соответствует предоставленному "следующему" URL.

3 ответа

Решение

Решил это. Я создал общий домен для всех перенаправлений от Google (который используется в next параметр), который я зарегистрировал в Google.

Таким образом, если у пользователя был домен "client.app.com", next Параметр будет выглядеть примерно так: core.app.com/savetoken?domain=client.app.com, Эта страница просто перенаправляет на client.app.com/savetoken с токеном от гугла.

Так как это появляется в поиске Google.

Если вы ошибочно создали следующий URL-адрес example.com и ваше приложение пытается перенаправить на www.example.com, вы можете обновить токен AuthSub здесь: https://accounts.google.com/ManageDomains

Из интерфейса AuthSub

Это значение должно быть страницей на сайте веб-приложения

Насколько я понимаю, домены должны совпадать между веб-приложением и следующим URL. Пример: веб-приложение - example.com следующий URL - example.com/nexturl.php

Префикс целевого URL-адреса. Это значение позволяет Google отклонять все запросы на авторизацию якобы из вашего домена, которые используют неправильный домен или префикс. Если вы делаете запрос AuthSub, этот URL-адрес должен совпадать со значением префикса следующего параметра, используемого в ваших запросах авторизации. Например, если ваши следующие значения будут выглядеть примерно так: http://example.com/authsub и / или http://example.com/feed/authsub, ваш префикс должен быть http://example.com/.

Это делается для того, чтобы вы не аутентифицировали кого-либо, а затем отправляли его на другой сайт. Это для безопасности и защиты учетной записи пользователя.

Если ваши пользователи запускают субдомен, например, subdomain.example.com, а следующий URL-адрес - example.com, он, скорее всего, потерпит неудачу. Это была проблема в вопросе, который вы цитируете.

Вы должны быть в состоянии решить это, делая то, что сделал этот плакат. Сделайте следующий URL-адрес таким же, как веб-приложение (исходная страница), и используйте параметр url, чтобы перенаправить на страницу, на которую вы хотите перейти.

Другие вопросы по тегам