Добавление канала OneDrive
Что подготовить сначала
| Что нужно | Зачем это нужно |
|---|---|
| Аккаунт Microsoft | Для доступа к страницам администрирования Microsoft и авторизации OneDrive |
| Ваш домен ImgBed | Для OAuth callback URL |
| App registration | Для получения Client ID и Client Secret |
| Аккаунт OneDrive | Фактическое место хранения файлов |
Настройка
Шаг 1. Откройте Microsoft Entra ID
- Откройте
portal.azure.com. - Вверху найдите
Microsoft Entra ID. - Если нужная страница не появилась в выпадающем списке, выберите:
text
Continue searching in Microsoft Entra ID- Откройте
Microsoft Entra ID. - Откройте
App registrations. - Нажмите
New registration.
Шаг 2. Зарегистрируйте приложение
На странице New registration заполните:
| Поле | Что ввести |
|---|---|
| Name | Понятное имя, например imgbed-onedrive |
| Supported account types | Выберите по таблице ниже |
| Redirect URI type | Web |
| Redirect URI | https://your-domain.com/api/oauth/onedrive/callback |
Подсказка по типу аккаунтов:
| Ваш сценарий | Supported Account Types |
|---|---|
| Только личный OneDrive | Выберите вариант для personal Microsoft account. |
| Личные и рабочие или учебные аккаунты | Выберите вариант, поддерживающий personal и organizational accounts. |
| Только корпоративный или учебный OneDrive | Выберите вариант для organizational account. |
После заполнения формы нажмите register.

Шаг 3. Скопируйте данные приложения
После создания приложения скопируйте значения со страницы overview:
| Поле Microsoft | Поле ImgBed |
|---|---|
Application (client) ID | Client ID |
Directory (tenant) ID | Tenant ID для organizational accounts |

Шаг 4. Создайте Client Secret
- Откройте
Certificates & secrets. - Нажмите
New client secret. - Введите удобное описание.
- Выберите срок действия.
- Сразу после создания скопируйте
Value.

Шаг 5. Добавьте API permissions
- Откройте
API permissions. - Нажмите
Add a permission. - Выберите
Microsoft Graph. - Выберите
Delegated permissions. - Добавьте:
| Permission | Назначение |
|---|---|
Files.ReadWrite.All | Загрузка файлов, создание папок и удаление файлов |
offline_access | Позволяет ImgBed получить Refresh Token |
User.Read | Читает информацию об аккаунте и квоте |
Шаг 6. Заполните канал OneDrive
В настройках загрузки выберите OneDrive и заполните:
| Поле ImgBed | Что ввести |
|---|---|
| Channel name | Понятное имя, например Main OneDrive |
| Client ID | Microsoft Application (client) ID |
| Client Secret | Скопированное значение Client Secret Value |
| Tenant ID | Выберите по таблице ниже |
| Refresh Token | Пока оставьте пустым |
| Root directory | Необязательно. По умолчанию imgbed. |
| Note | Необязательно |

Как заполнить Tenant ID:
| Выбранный тип аккаунтов | ImgBed Tenant ID |
|---|---|
| Personal accounts | consumers |
| Personal + organizational accounts | common |
| Только текущая организация | Directory (tenant) ID |
Шаг 7. Получите Refresh Token
- В ImgBed нажмите
Get Token. - Войдите в Microsoft-аккаунт, который хотите подключить.
- Подтвердите запрос авторизации.
- На callback-странице появится
Refresh Token. - Скопируйте его.
- Вернитесь в ImgBed и вставьте его в поле
Refresh Token.

Шаг 8. Сохраните канал
Когда все поля заполнены, сохраните канал.
Короткий сценарий
text
Открыть portal.azure.com
-> Найти Microsoft Entra ID
-> Открыть App registrations
-> Зарегистрировать новое app
-> Заполнить Name / Supported account types / Web redirect URI
-> Зарегистрировать
-> Скопировать Application (client) ID
-> Проверить callback URL в Authentication
-> Создать Client Secret в Certificates & secrets
-> Добавить permissions в API permissions
-> Ввести Client ID / Client Secret / Tenant ID в ImgBed
-> Нажать Get Token
-> Скопировать Refresh Token с callback-страницы
-> Вставить его обратно в ImgBed и сохранитьСсылки
- Microsoft Entra app registration: https://learn.microsoft.com/en-us/entra/identity-platform/quickstart-register-app
- Microsoft identity platform authorization code flow: https://learn.microsoft.com/en-us/entra/identity-platform/v2-oauth2-auth-code-flow
- Microsoft Graph user authentication: https://learn.microsoft.com/en-us/graph/auth-v2-user