Перейти к основному содержимому

Авторизация 1С через GoDeli Identity

Долгоживущие статические токены обмена не поддерживаются. Для каждой интеграции 1С регистрируется отдельный OAuth 2.0 machine-to-machine клиент, связанный с tenant_id, integration_id и point_id.

Получение токена​

POST https://identity.godeli.ru/v1/oauth/token
Content-Type: application/x-www-form-urlencoded

grant_type=client_credentials&
client_id=gdl_cli_...&
client_secret=gdl_sec_...&
scope=onec.catalog.write%20onec.changes.write%20onec.events.read

Authorization server возвращает короткоживущий Bearer JWT:

{
"access_token": "eyJ...",
"token_type": "Bearer",
"expires_in": 600,
"scope": "onec.catalog.write onec.changes.write onec.events.read"
}

После истечения срока действия 1С запрашивает новый JWT с теми же credentials по grant type client_credentials. Refresh token для machine-to-machine клиента не выдаётся.

Scopes​

ScopeEndpoint
onec.catalog.writePOST .../catalog-structure, POST .../attribute-definitions, POST .../catalog-snapshot
onec.changes.writePOST .../changes
onec.events.readGET .../events/{event_id}

Токен должен содержать audience godeli-integration-onec-service. Значения claims tenant_id, integration_id и point_id должны соответствовать интеграции из URL. Подпись EdDSA проверяется по JWKS GoDeli Identity без выполнения удалённого запроса на интроспекцию для каждого события.

Ротация​

client_secret показывается один раз. При компрометации администратор выпускает новый секрет и отзывает предыдущий. Короткоживущие JWT перестают действовать максимум через 10 минут; workload client можно отключить целиком немедленно.