Налаштування SSO: Google Workspace➧
Огляд
Покрокове налаштування входу у WildcoreDMS через облікові записи Google Workspace. Загальний опис (як працює SSO, ролі, типові помилки) — на сторінці Вхід через SSO.
Групи не передаються
Google не передає групи Workspace в OpenID Connect. Тому роль новим користувачам призначається за замовчуванням, а далі адміністратор змінює її у WildcoreDMS.
Що потрібно знати заздалегідь➧
| Параметр | Значення |
|---|---|
| Redirect URI | https://dms.example.com/api/v1/auth/oidc/callback (Google приймає лише https) |
| Адреса налаштувань | https://accounts.google.com/.well-known/openid-configuration |
| Issuer | https://accounts.google.com |
| Логін користувача | email (у Google немає preferred_username) |
1. Проєкт у Google Cloud➧
- Відкрийте Google Cloud Console під обліковим записом адміністратора вашої організації.
- У списку проєктів (верхня панель) оберіть наявний або New project → Name
WildcoreDMS→ Create.
2. Екран згоди (OAuth consent screen)➧
- Меню ☰ → APIs & Services → OAuth consent screen (у новому інтерфейсі — Google Auth Platform → Branding / Audience).
- User type / Audience —
Internal. Так увійти зможуть лише облікові записи вашої організації. - App name —
WildcoreDMS, User support email, Developer contact email → Save. - Scopes додавати не обов'язково —
openid,email,profileдоступні за замовчуванням.
3. OAuth-клієнт➧
- APIs & Services → Credentials → Create credentials → OAuth client ID (у новому інтерфейсі — Google Auth Platform → Clients → Create client).
- Application type — Web application, Name —
WildcoreDMS. - Authorized redirect URIs → Add URI →
https://dms.example.com/api/v1/auth/oidc/callback. Authorized JavaScript origins заповнювати не потрібно. - Create → скопіюйте Client ID та Client secret (або завантажте JSON).
Info
Зміни redirect URI в Google можуть застосовуватись до кількох хвилин.
4. Налаштування WildcoreDMS➧
Оберіть провайдера google (issuer підставиться сам), вкажіть Client ID, Client secret та
роль за замовчуванням для нових користувачів. Або вручну в /opt/wildcore-dms/.env:
AUTH_METHODS=internal,oidc
OIDC_NAME=Google
OIDC_ISSUER=https://accounts.google.com
OIDC_CLIENT_ID=<Client ID>.apps.googleusercontent.com
OIDC_CLIENT_SECRET=<Client secret>
OIDC_LOGIN_CLAIM=email
OIDC_GROUPS_CLAIM=
OIDC_MATCH_BY=email
OIDC_SYNC_ROLE=no
OIDC_DEFAULT_ROLE=<назва ролі для нових користувачів>
та виконайте sudo wca system:http:reset.
5. Ролі➧
- Кожен новий користувач отримує роль з
OIDC_DEFAULT_ROLE. Для безпеки оберіть роль з мінімальними правами (лише перегляд). - Далі адміністратор змінює роль у веб-панелі (
Користувачі > Користувачі→Редагувати) або командоюwca user:change-role <login>. ЗавдякиOIDC_SYNC_ROLE=noручні зміни не перезаписуються при наступному вході. - Наявні користувачі WildcoreDMS, у яких вказано той самий email, що і в Google, прив'яжуться автоматично і збережуть свою роль.
Сторонні облікові записи
При User type External увійти зможе будь-який обліковий запис Google (з урахуванням статусу публікації застосунку). Для WildcoreDMS використовуйте Internal.