1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/edgegallery-user-mgmt

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 14 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 04.03.2025 13:26 06c6f81

Управление пользователями

Лицензия

Модуль управления пользователями предоставляет EdgeGallery платформе функции регистрации и входа пользователей, восстановления пароля, центра учетной записи, управления списками пользователей, верификации электронной почты и мобильных телефонов.

Определение ролей

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

  • Арендатор — обычный пользователь внутри системы, который может создавать проекты/загружать приложения и т.д., данные арендаторов между собой не могут взаимодействовать.

  • Администратор — системный администратор, который может выполнять операции управления и обслуживания данных приложений системы.

  • Гость — по умолчанию имеет права гостя при прямом доступе к порталу, что позволяет просматривать базовые функции всех платформ, но не позволяет выполнять действия создания, редактирования и удаления.

  • Суперадминистратор — система содержит встроенный по умолчанию пользователя admin, который является суперадминистратором платформы. Этот пользователь может управлять другими пользователями, осуществлять единое управление всеми зарегистрированными пользователями, отключать/включать пользователей и устанавливать права доступа пользователей.Новый зарегистрированный пользователь по умолчанию имеет права "арендатор". Права "администратор" можно получить только через функцию управления списками пользователей суперадминистратором admin.

Основные характеристики

Основные характеристики модуля управления пользователями можно просмотреть здесь: Проект управления пользователями: дизайн характеристик.

Локальное выполнение службы User Management

Служба User Management предоставляет внешние RESTful API, разработана на основе открытого микросервисного фреймворка ServiceComb и интегрирована со Spring Boot. Это позволяет запускать микросервисы локально для удобства тестирования.

  • Подготовка и конфигурация среды

    1. Подготовка среды: Необходимые для установки инструменты и ссылки для скачивания представлены ниже в таблице.| Название | Версия | Ссылка | | ---- | ---- | ---- | | OpenJDK 1.8 | 1.8.0 | скачать | | Apache Maven | 3.6.3 | скачать | | IntelliJ IDEA | Community | скачать | | Servicecomb Service-Center | OnClickListener 1.3.2 | скачать | | PostgreSQL | 10 или выше | скачать | | Redis | 3.2.100 или выше | скачать |

2. Получение исходного кода: Используйте git clone или скачайте архив с исходным кодом User Management на свой компьютер. По умолчанию используется ветка master.Сначала вам потребуется скачать и скомпилировать родительский проект pom:

git clone https://gitee.com/edgegallery/eg-parent.git
mvn install

Затем скачайте текущий проект User Management:

git clone https://gitee.com/edgegallery/user-mgmt.git

Настройка ServiceCenter: User Management использует открытый ServiceComb для разработки. При запуске сервис автоматически регистрируется в указанном ServiceCenter, который предоставляет возможности регистрации и открытия сервиса для других микросервисов. Перед запуском модуля управления пользователями (User Management) необходимо сначала запустить ServiceCenter локально.

  • Сначала скачайте ServiceCenter. Если используется Windows, выберите версию Binary для Windows, после скачивания распакуйте архив;

  • Дважды щелкните по файлам start-service-center.bat и start-frontend.bat для запуска ServiceCenter и визуального панели управления локально, доступ к ним осуществляется через браузер по адресу http://127.0.0.1:30103, по умолчанию порт запуска ServiceCenter равен 30100;

  • Для запуска службы User Management локально требуется добавить следующие переменные окружения для подключения к SC (Service Center):

SC_ADDRESS: адрес подключения к SC. По умолчанию для локальной установки SC это http://127.0.0.1:30100
```**4. Настройка базы данных PostgreSQL:** Модуль управления пользователями использует открытую базу данных [PostgreSQL](https://www.postgresql.org/) для хранения информации о пользователях; при локальном запуске требуется её предварительная установка.- Рекомендуется использовать этот [гайд по установке и запуску PostgreSQL](https://www.runoob.com/postgresql/windows-install-postgresql.html), выбирать версию 9.6 или выше;

- Используйте файл `/src/main/resources/usermgmtdb.sql` для инициализации структуры таблиц базы данных;

- Используйте файл `/src/main/resources/usermgmtdb-data.sql` для инициализации начальных данных пользователей;

- Для запуска службы User Management локально требуется добавить следующие переменные окружения для подключения к базе данных:

POSTGRES_IP: IP-адрес подключения к базе данных. Для локальной установки обычно используется адрес localhost: 127.0.0.1

POSTGRES_PORT: порт подключения к базе данных. Может не указываться, используется значение по умолчанию 5432

POSTGRES_USERNAME: имя пользователя базы данных

POSTGRES_PASSWORD: пароль пользователя базы данных


**5. Настройка базы данных Redis:** Модуль управления пользователями использует базу данных Redis для хранения графических каптч, SMS и email-верификаций; при локальном запуске требуется её предварительная установка.

- Рекомендуется использовать этот [гайд по установке и запуску Redis](https://www.runoob.com/redis/redis-install.html);

- Для запуска службы User Management локально требуется добавить следующие переменные окружения для подключения к Redis:

REDIS_IP: IP-адрес подключения к Redis. Для локальной установки обычно используется адрес localhost: 127.0.0.1


REDIS_PASSWORD: пароль подключения к Redis. Если Redis не защищен паролем, может не указываться.

### Конфигурация клиента бизнес-платформы:

User Management используется как единственный сервер аутентификации (Auth Server), а каждая бизнес-платформа — как клиент аутентификации (Auth Client). Для локального запуска бизнес-платформы конфигурационные данные для соответствующего клиента должны быть добавлены в User Management.

- Если требуется локальный запуск AppStore, то User Management должен быть настроен следующими переменными окружения:

OAUTH_APPSTORE_CLIENT_ID: ID клиента для бизнес-платформы AppStore, который может быть установлен на фиксированное значение appstore-fe. Также можно не указывать эту переменную, тогда она будет установлена по умолчанию на appstore-fe.

OAUTH_APPSTORE_CLIENT_SECRET: Секретный ключ клиента для бизнес-платформы AppStore, который следует самостоятельно определить. При этом важно, чтобы этот секретный ключ совпадал с тем, что указан в бизнес-платформе при её запуске.

OAUTH_APPSTORE_CLIENT_URL: URL для подключения к бизнес-платформе AppStore, например http://x.x.x.x:30091

OAUTH_APPSTORE_CLIENT_ACCESS_URL: Эта переменная предназначена для режима прокси-доступа. В обычном режиме доступа она должна совпадать со значением OAUTH_APPSTORE_CLIENT_URL.


- ### Копирование ресурсов фронтенда

Текущий проект представляет собой backend управления пользователями, поэтому необходимо скопировать ресурсы фронтенда в директорию ресурсов backend.

- Чтобы скомпилировать ресурсы фронтенда управления пользователями, обратитесь к следующей ссылке:

[https://gitee.com/edgegallery/user-mgmt-fe/blob/master/README.md](https://gitee.com/edgegallery/user-mgmt-fe/blob/master/README.md)

- После успешной компиляции скопируйте содержимое директории dist в директорию /src/main/resources/static backend.

- ### Локальный запуск

Запустите основную функцию в файле /src/main/java/org/edgegallery/user/auth/MainServer.java, чтобы запустить управление пользователями.

При успешном запуске вы сможете отдельно получить доступ к интерфейсу управления пользователями:

http://x.x.x.x:8067/index.html

## Развертывание в среде Kubernetes

Вы также можете создать Docker-образ сервиса управления пользователями и развернуть его в Linux-среде или кластере Kubernetes.

Для этого воспользуйтесь проектом [helm_charts](https://gitee.com/edgegallery/helm-charts/tree/master/edgegallery)

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/edgegallery-user-mgmt.git
git@api.gitlife.ru:oschina-mirror/edgegallery-user-mgmt.git
oschina-mirror
edgegallery-user-mgmt
edgegallery-user-mgmt
master