ym88659208ym87991671
Client secret | Документация для разработчиков

Client secret

Обновлено 11 сентября 2023

При регистрации Приложения Партнера клиентский менеджер передает значения Client ID и Client Secret, присвоенные приложению.

Партнеру в обязательном порядке требуется сменить полученный Client Secret. Существуют следующие способы смены Client Secret:

Срок действия Client Secret составляет 40 дней.

Client Secret должен своевременно обновляться, в противном случае доступ к ресурсам СберБизнес ID, SberBusinessAPI и /v1/change-client-secret будет заблокирован.
В случае блокировки Client Secret Приложения Партнера можно разблокировать через отделение банка, менеджера или Личный кабинет SberBusinessAPI.

Ресурс /v1/change-client-secret

Хост для вызова ресурса /v1/change-client-secret см. в разделе Область сведений и атрибуты.

Для смены Client Secret необходимо отправить POST-запрос /v1/change-client-secret.

Модель запроса

НаименованиеОписание
access_tokenString

Обязательный параметр
Значение авторизационного токена (Access Token), полученный от пользователя, принадлежащего к организации Партнера
Пример: c68c8524-7546-4ab2-92cb-8822d82110a4-1
client_idString

Необязательный параметр
Указывается идентификатор Приложения Партнера (client_id), для которого необходимо изменить Client Secret.
Если client_id не указан, то будет изменен Client Secret приложения, для которого выдан Access Token.
client_secretString

Обязательный параметр
Текущее значение Client Secret Приложения Партнера, для которого необходимо изменить Client Secret
(client_secret >= 8 символов и <= 256 символов)
new_client_secretString

Обязательный параметр
Новое значение Client Secret Приложения Партнера, для которого необходимо изменить Client Secret
(client_secret >= 8 символов и <= 256 символов)

Пример запроса

POST /ic/sso/api/v1/change-client-secret
Host: edupirfintech.sberbank.ru:9443
access_token=c68c8524-7546-4ab2-92cb-8822d82110a4-1
&client_id=03e0be32-e72e-47ec-b740-a00b333a8ac4-1
&client_secret=740464ba79c248d9be6c525a09471cca
&new_client_secret=da658d9360604e41a5bac9611d0f1620

Необязательный параметр client_id позволяет изменять Client Secret любых Приложений зарегистрированных на одного Партнера.

Например:

У Партнера ООО "Ромашка" зарегистрировано два приложения с:

  • client_id = 10010, client-secret = XXXXXXX

  • client_id = 20020, client-secret = PPPPPPP

Пользователь ООО "Ромашка" авторизуется в приложении с client_id = 10010 и получает Access Token = c68c8524-7546-4ab2-92cb-8822d82110a4-1

Приложение Партнера вызывает ресурс /v1/change-client-secret, где указывает:

  • access_token = c68c8524-7546-4ab2-92cb-8822d82110a4-1

  • client_id = 20020

  • client_secret = PPPPPPP

  • new_client_secret = NNNNNN

В этом случае Client Secret будет изменен для client_id = 20020

Если Приложение Партнера вызывает ресурс /v1/change-client-secret, где указывает:

  • access_token = c68c8524-7546-4ab2-92cb-8822d82110a4-1

  • client_secret = XXXXXXX

  • new_client_secret = NNNNNN

То в этом случае Client Secret будет изменен для client_id = 10010, т.к. параметр client_id не указан, а Access Token выдан для приложения с client_id = 10010

Модель ответа

НаименованиеОписание
clientSecretExpirationNumber
Срок действия нового Client Secret (в днях)

Пример ответа

{
"clientSecretExpiration":40
}

Коды возврата

В случае возникновения ошибок при вызове ресурса /v1/change-client-secret в ответ будут возвращены следующие параметры:

ПараметрОписание
errorКод возникшей ошибки
error_descriptionОписание возникшей ошибки
http-кодerrorОписание причины
406SSOREQUESTED_FORMAT_NOT_ACCEPTABLE_EXCEPTIONДля Приложения Партнера установлен запрет на прием запросов с http-заголовком Accept со значением application/jose
406SSOREQUESTED_FORMAT_NOT_ACCEPTABLE_EXCEPTIONДля Приложения Партнера установлен запрет на прием запросов с http-заголовком Accept со значением application/json
401UNAUTHORIZEDНе найден Access Token
403Изменение client secret недоступноДля данного типа Приложения Партнера использование ресурса /change-client-secret недоступно
403Client secret просроченСрок действия текущего Client Secret истек
403Попытка изменения client secret при помощи access token, выданного пользователем, не принадлежащим организации, предоставляющей услуги внешнего сервисаAccess Token выдан пользователем, не принадлежащим организации владельцу Приложения
403Попытка изменения client secret внешнему сервису, организация которого отличается от организации пользователя, выдавшего access tokenПараметр client_id указан и организация владельца Access Token не совпадает с организацией владельца Приложения, чей client_id указан
400Передано некорректное значение нового client secret: '{0}'Значение нового Client Secret совпадает с текущим или не прошло валидацию на допустимый размер значения
400Передано некорректное значение действующего client secret: '{0}'Значение переданное в параметре client_secret не совпадает со значением указанным для client_id

Также могут быть получены следующие параметры в ответе при обращении к серверу:

ПараметрОписание
errorCodeКод возникшей ошибки
errorMsgОписание возникшей ошибки

Данный тип параметров возвращается, если на сервере возникли следующие исключения:

http-codeerrorCode/errorMsgОписание причины
403requestForbidden

The server configuration prohibits executing a request to the endpoint {0}
На данном сервере запрещен вызов указанного ресурса. Например, вызов ресурса /v2/oauth/token осуществляется на домен https://sbi.sberbank.ru:9443, а должен осуществляться на домен https://fintech.sberbank.ru:9443
403certificateNotFound

The certificate was not whitelisted for client_id={0}
Не пройдена проверка сертификата по белому списку
ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей.
Вы можете запретить сохранение cookie в настройках своего браузера.