Префикс целевого пути 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
Это значение должно быть страницей на сайте веб-приложения
Насколько я понимаю, домены должны совпадать между веб-приложением и следующим 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, чтобы перенаправить на страницу, на которую вы хотите перейти.