Серверная OAuth авторизация
1. Открытие диалога авторизации OAuth
Для начала процесса авторизации нужно открыть новое окно браузера (или webView) и осуществить переход на специально сформированный URL:
https://connect.ok.ru/oauth/authorize?client_id={clientId}&scope={scope}&response_type={{response_type}}&redirect_uri={redirectUri}&layout={layout}&state={state}
Название | Обязательный | Описание |
---|---|---|
client_id | Да | Идентификатор приложения {application id} |
scope | Да | Запрашиваемые права приложения, разделённые символом ‘;’. См. права приложения |
response_type | Да | Тип ответа от сервера, укажите code |
redirect_uri | Да | URI, на который будет передан access_token. URI должен посимвольно совпадать с одним из URI, зарегистрированных в настройках приложения. Часть URI после символа ‘?’ (query) не учитывается при проверке, тем не менее, для передачи динамически изменяющихся данных рекомендуется использовать параметр state. |
layout | Нет | Внешний вид окна авторизации: * w – (по умолчанию) стандартное окно для полной версии сайта; * m – окно для мобильной авторизации; * a – упрощённое окно для мобильной авторизации без шапки. |
state | Нет | Параметр состояния. В неизменном виде пробрасывается в redirect_uri. Позволяет передавать произвольные данные между разными фазами OAuth и защищаться от xsrf. |
2. Разрешение прав доступа
Если пользователь ранее выдал приложению все права, указанные в параметре scope, то окно автоматически закрывается и дополнительное подтверждение от пользователя не требуется.
После перехода по сформированному URL пользователь будет должен ввести свой логин и пароль, если ранее он этого не сделал. После входа на сайт ему будет предложено авторизовать приложение и подтвердить запрошенные права:
3. Получение code
После подтверждения авторизации пользователь будет перенаправлен на указанный при открытии диалога авторизации redirect_uri, в GET-параметрах которого будет передан ключ доступа code, а также state в случае, если он был указан на этапе 1:
{redirect_uri}?code={code}&state={state}
Полученный параметр code действителен в течение 2 минут.
В случае ошибки или отказа от авторизации будет передан параметр error, идентифицирующий причину проблемы:
{redirect_uri}#error={error}&state={state}
4. Получение access_token
Для получения access_token необходимо совершить POST-запрос с сервера вашего сайта к API на URL:
https://api.ok.ru/oauth/token.do?code={code}&client_id={client_id}&client_secret={client_secret}&redirect_uri={redirect_uri}&grant_type={grant_type}
Название | Описание |
---|---|
code | Код авторизации, полученный в пункте 3 |
client_id | Идентификатор приложения {application id} |
client_secret | Секретный ключ приложения {application_secret_key} |
redirect_uri | Тот же URI переадресации, что был указан в пункте 1 |
grant_type | Тип выдаваемых прав, укажите authorization_code |
В ответе от сервера приходит json, содержащий запрошенный access_token или информацию об ошибке.
Вид ответа в случае успеха:
{ "access_token": "{access_token}", "token_type": "session", "refresh_token": "{refresh_token}", "expires_in":"{expires_in}" }
- access_token – токен доступа, используемый для формирования запроса к API;
- token_type – на данный момент возвращается только session;
- refresh_token – токен обновления, который можно использовать в дальнейшем для упрощённой процедуры авторизации. Действителен в течение 30 суток;
- expires_in – время действия токена доступа в секундах.
Вид ответа в случае ошибки
{ "error": "{error}", "error_description": "{error_description}" }
- error – код ошибки;
- error_description – описание ошибки.
5. Использование refresh_token
Имея токен обновления refresh_token, можно получить access_token по упрощённой процедуре, сделав один POST-запрос на URL:
https://api. ok.ru/oauth/token.do?refresh_token={refresh_token}&client_id={client_id}&client_secret={client_secret}&grant_type={grant_type}
Название | Описание |
---|---|
refresh_token | Маркер обновления, полученный ранее в пункте 4 |
client_id | Идентификатор приложения {application id} |
client_secret | Секретный ключ приложения {application_secret_key} |
grant_type | Тип выдаваемых прав, укажите refresh_token |
Формат ответа аналогичен получению access_token, но без refresh_token.
Возможные ошибки
Ошибка | Варианты возникновения |
---|---|
invalid_request | * был передан неверный code (описание ошибки — Invalid code) * время действия code истекло (описание ошибки — Expired code) * redirect_uri отличается от переданного на этапе OAuth (описание ошибки — Wrong redirect_uri) |
invalid_client | * не удалось найти указанное приложение (описание ошибки — Unknown client) |
unauthorized_client | * секретный ключ приложения неверен (описание ошибки — Invalid request parameters) |
access_denied | * пользователь не авторизовал приложение (например, удалил его в настройках, описание ошибки — Access denied) * время действия refesh_token истекло (описание ошибки — Refresh token expired) * пользователь принудительно вышел со всех устройств (см. настройки, описание ошибки — Logout all) |
invalid_grant | * не удалось распознать параметр grant_type (описание ошибки — Invalid grant type или Invalid parameters for grant type) |
invalid_token | * не удалось определить пользователя (описание ошибки — Session expired) * refresh_token был передан неверно (описание ошибки — Invalid refresh token / Invalid refresh token structure / Invalid refresh token, user not found) |
Устранение проблем со входом на веб-сайты, требующие имя пользователя и пароль
Настройте Firefox
Обновить Firefox
- Как это работает?
- Скачать свежую копию
Если вы обнаружите, что не можете войти на веб-сайт, для которого требуется имя пользователя и пароль, выполните действия, описанные в этой статье.
- Если вы можете войти на сайт вручную, но невозможно сохранить или использовать сохраненные имена пользователей и пароли , см. Имена пользователей и пароли не сохраняются.
- 1 Включить файлы cookie для веб-сайта
- 2 Очистить историю для этого сайта
- 3 Очистить все файлы cookie и кэш
- 4 Проверить надстройки
- 5 Приложение безопасности блокирует файлы cookie
Убедитесь, что файлы cookie включены для рассматриваемого сайта.
- Инструкции см. в разделе Веб-сайты говорят, что файлы cookie заблокированы. Разблокируйте их.
Если вы изменили какие-либо настройки, попробуйте снова войти на сайт.
Причиной проблемы могут быть файлы cookie и временные данные, уже сохраненные на вашем компьютере. Удалите их, затем проверьте свою проблему:
- Нажмите кнопку меню, чтобы открыть панель меню. Нажмите «История», а затем нажмите панель «Управление историей» внизу, чтобы открыть окно «Библиотека».
- В правом верхнем углу введите имя веб-сайта, который вы хотите забыть, в История поиска и нажмите EnterReturn.
- В появившемся списке щелкните правой кнопкой мыши, удерживая нажатой клавишу Ctrl, когда вы нажимаете на сайт, который хотите забыть, и выберите «Забыть об этом сайте».
- Закройте окно библиотеки.
Если удаление файлов cookie для проблемного сайта не устранило ошибку, удалите все файлы cookie, хранящиеся на вашем компьютере, и очистите кеш Firefox:
- Нажмите кнопку меню, чтобы открыть панель меню.
- Нажмите «История» и выберите «Очистить недавнюю историю…».
- В раскрывающемся списке Временной диапазон для очистки: выберите Все .
- В раскрывающемся меню выберите Cookies и Cache . Убедитесь, что другие элементы, которые вы хотите сохранить, не выбраны.
- Нажмите OK.
Некоторые расширения могут вызвать проблемы со входом на веб-сайты, особенно расширения, связанные с определенными веб-сайтами. См. раздел Устранение неполадок с расширениями, темами и аппаратным ускорением, чтобы решить распространенные проблемы Firefox.
Некоторые приложения для обеспечения безопасности и конфиденциальности в Интернете имеют функции, блокирующие файлы cookie. Ознакомьтесь с документацией, поставляемой с вашим программным обеспечением, или посетите сайт поддержки поставщика программного обеспечения, чтобы узнать, включает ли ваше приложение функцию контроля файлов cookie и как вы можете изменить эти настройки.
Если вы не можете войти на веб-сайты после удаления связанных с ними файлов cookie, очистки кеша Firefox и попытки отключить расширения и плагины, а также проверили программное обеспечение безопасности, возможно, у вас есть поврежденный файл файлов cookie в папке вашего профиля Firefox. .
Это приведет к удалению всех ваших сохраненных файлов cookie и, по сути, к выходу из всех сохраненных сеансов на всех веб-сайтах.
Откройте папку вашего профиля:
- Нажмите кнопку меню , щелкните Справка и выберите Информация об устранении неполадокДополнительная информация об устранении неполадок. В меню Справка выберите Информация об устранении неполадокДополнительная информация об устранении неполадок. Откроется вкладка Информация об устранении неполадок .
- В рамках Основы применения рядом с Profile FolderDirectory , щелкните Open FolderShow в FinderOpen Directory. Откроется окно с папкой вашего профиля. Откроется папка вашего профиля.
Примечание: Если вы не можете открыть или использовать Firefox, следуйте инструкциям в разделе Как найти свой профиль, не открывая Firefox.
- Щелкните меню Firefox и выберите «Выход».
Щелкните меню Firefox в верхней части экрана и выберите «Выход из Firefox». Щелкните меню Firefox и выберите «Выход». - Удалите файл cookies.sqlite и все файлы cookies.sqlite-journal.
- Перезапустите Firefox.
Включает информацию с веб-сайтов, сообщает об отключении файлов cookie (mozillaZine KB)
Поделитесь этой статьей: http://mzl.la/1xKrSvB
Эти замечательные люди помогли написать эту статью:
AliceWyman, Chris Ilias, Michael Verdi, scoobidiver, Swarnava Sengupta, adampeebleswrites, Joni
Волонтер
Развивайтесь и делитесь своим опытом с другими. Отвечайте на вопросы и улучшайте нашу базу знаний.
Узнать больше
Банк Оклахомы
- 401(k) Участник
- БОК Управление финансовыми активами
- Кредитная карта
- Медицинский сберегательный счет
- Ипотека
- Онлайн-инвестирование
- Портфолио онлайн
- 401(k) Спонсор
- Обмен
- Бизнес-источник
- Депозит в бизнес-офисе
- Визитная карточка Elan
- эВижн
- FX Advance
- Портфель ответственного хранения и инвестиций
- Переместить
- Одна карта
- Пайкор
- PayWeb
- Портфолио онлайн
- RCC Pro [ITMS]
- Веб-клиент RCC
- RemitView
- Источник возврата
- Депозит для офиса малого бизнеса
- Контроль расходов
- Торговое продвижение
- КазначействоИсточник
- вебЭРА
- Корпоративное действие XSPRISA
- Клиентский портал Zywave
Идем выше.
Так что вы можете выйти за пределы.BOK Financial входит в число 25 крупнейших банков США, предлагающих сложные финансовые, коммерческие и потребительские продукты и услуги. Тем не менее, мы работаем с одним клиентом за раз, уделяя особое внимание предоставлению вдумчивого опыта и индивидуальных рекомендаций, потому что мы знаем, что когда наши клиенты добиваются успеха, мы добиваемся успеха.
Предыдущий Следующий
Что привело вас сюда сегодня?
Личный Бизнес Богатство КоммерческийРазвивайте свою карьеру вместе с нами
Работа в Банке Оклахомы
Вы заслуживаете большего
Ваша прибыль — это больше, чем просто баланс на ваших счетах. Вы измеряете успех не только в своем ежемесячном отчете. Итак, разве вы не заслуживаете финансового партнера, который больше, чем просто банк?
Уже более века мы помогаем нашим клиентам добиваться успеха. Узнайте больше о том, что вы можете ожидать от нас.
Связь с опытом
Развивайте личные отношения с командой экспертов, которые узнают вас и ваши потребности.
Преднамеренное разнообразие
Наша целенаправленная диверсификация обеспечивает устойчивость и стабильность для нас, поэтому мы можем сделать то же самое для вас.