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

Пользователи

Просмотрите локальных пользователей и пользователей, управляемых с помощью удостоверений, роли, удаление и администрирование токенов MCP.

Проверить аккаунты

Системные администраторы открывают Администрирование → Пользователи. В таблице показаны имя пользователя, аватар/отображаемое имя, роль, локальное/OIDC происхождение, а также временные метки создания/обновления. Фильтруйте по роли, сортируйте, меняйте столбцы или разбивайте на страницы. Для доступа к репозиторию для средства просмотра или менеджера требуется отдельный членство в репозитории; группы поставщиков удостоверений не создают такое членство.

Предоставление и удаление

В Администрирование → Пользователи выберите создание пользователя. Укажите уникальное имя, необязательные имя и фамилию, пароль 12–256 символов с подтверждением и роль; по умолчанию Viewer. Создание доступно и с OIDC. OIDC-записи создаются провайдером и не связываются по совпадению локального имени.

Действие удаления доступно другим пользователям и выполняется немедленно; просмотрите учетную запись, прежде чем выбрать ее. Вы не можете удалить свою учетную запись через этот API или экран. Удаление пользователя Repovio удаляет локальный доступ; он не удаляет учетные записи провайдера по адресу GitHub, GitLab, Forgejo или Gitea. Перед удалением проверьте доступ затронутого пользователя.

Токены пользователя MCP

Откройте диалоговое окно токена MCP пользователя, чтобы просмотреть метаданные токена или отозвать токен с подтверждением. Администраторы не могут получать значения токена в виде открытого текста или создавать токен другого пользователя через это диалоговое окно. Пользователи создают свои собственные токены в Настройки MCP. Пустые списки и ошибки загрузки различимы; повторите попытку после восстановления API. Никогда не копируйте значения токенов в отчеты поддержки или снимки экрана.

Предоставление локального пользователя через API

Используйте клиент API через HTTPS для отправки POST /api/v1/users с аутентификацией носителя администратора и Content-Type: application/json. Укажите это тело запроса, заменив заполнители в защищенных входных данных клиента:

{
  "username": "new-user",
  "password": "REPLACE_WITH_A_PASSWORD_OF_AT_LEAST_12_CHARACTERS",
  "role": "VIEWER"
}

Допустимые роли: VIEWER, MANAGER и SYSTEM_ADMIN. Назначьте только необходимую роль, а затем отдельно предоставьте членство в репозитории. Ответ содержит безопасные метаданные пользователя, а не пароль или его хеш. Повторяющееся имя пользователя или неверный запрос необходимо исправить перед повторной попыткой. Не храните пароли или токены-носители в отслеживаемых файлах, истории оболочки, снимках экрана или отчетах о проблемах.

Создание и сброс локальных учетных записей

Действие сброса пароля позволяет администратору задать новый локальный пароль без старого. Введите и подтвердите его. Прежние JWT-сессии становятся недействительными; сброс своего пароля завершает вход. Для OIDC действие недоступно. Токены MCP не отзываются.

Локальные группы доступа

В Администрирование → Группы создавайте, переименовывайте, удаляйте группы и управляйте участниками. Имя должно быть уникальным и непустым. Есть поиск и страницы; пользователь может входить в несколько групп, без вложенности. Удаление требует подтверждения и убирает участников и групповые права, сохраняя прямые назначения.

В разделе группового доступа репозитория назначьте Viewer или Manager, измените или удалите право. Прямые и групповые права объединяются, Manager сильнее. Управление требует глобальной роли Manager; системные администраторы не ограничены. Отзыв действует со следующего запроса, если нет другого права. Группы работают с локальными и OIDC-записями, без синхронизации OIDC claims.

POST   /api/v1/users                              { username, password, role, firstName?, lastName? }
PUT    /api/v1/users/:id/password                 { newPassword }
GET    /api/v1/user-groups                       ?page=1&perPage=10
POST   /api/v1/user-groups                       { name }
PUT    /api/v1/user-groups/:id                    { name }
DELETE /api/v1/user-groups/:id
GET    /api/v1/user-groups/:id/members            ?page=1&perPage=10
PUT    /api/v1/user-groups/:id/members/:userId
DELETE /api/v1/user-groups/:id/members/:userId
GET    /api/v1/repositories/:id/group-memberships
PUT    /api/v1/repositories/:id/group-memberships/:groupId  { role }
DELETE /api/v1/repositories/:id/group-memberships/:groupId