О проекте OAuthServer
Для пользователей из Китая доступен доступ к Gitee по ссылке https://gitee.com/jeesun/oauthserver, код синхронизирован с GitHub.
Введение
OAuthServer — это независимый микросервис на основе Spring Boot Oauth2. Цель проекта — создать необходимые таблицы данных и изменить информацию о подключении к базе данных, чтобы получить готовый микросервис Oauth2 Server.
Проект разделён на 6 модулей для удобства разработки: eureka-server, oauth, common, api, web, old-task:
- eureka-server — модуль сервиса Eureka;
- oauth — Authentication Server, используется другими модулями (в основном, предоставляющими API) для авторизации;
- common — общий модуль инструментов, включая слои Service и Model, в настоящее время все модули, кроме eureka-server, зависят от него;
- api — предоставляет API-интерфейсы;
- web — основан на Element UI, представляет собой административную панель управления;
- old-task — Quartz для распределённых задач планирования, поддерживает кластеры.
Поддерживаемые реляционные базы данных: MySQL, Oracle, PostgreSQL, Microsoft SQL Server.
Обзор функций
API:
- Служба токенов Oauth, поддерживает три метода входа: номер телефона + проверочный код, номер телефона + пароль, адрес электронной почты + пароль (см. пример вызова интерфейса Oauth [tutorial/api.md]). Если вам нужно использовать службу коротких сообщений, перейдите на сайты Alibaba DingTalk, Tencent Cloud SMS или Yunzhiyun SMS для покупки услуг коротких сообщений и настройте соответствующие параметры в application.properties.
- Служба коротких сообщений поддерживает три вида: Alibaba DingTalk, Tencent Cloud SMS, Yunzhiyun SMS.
- Платёжные сервисы WeChat и Alipay.
- Облачное хранилище Qiniu.
- Генератор кода.
Common: модуль общих инструментов.
Web:
- Главная страница:
- Введение в OAuthServer;
- Управление новостями;
- Управление заказами.
- Системное управление:
- Планирование задач;
- Управление меню;
- Управление пользователями;
- Управление разрешениями;
- Словарь данных.
- Системные инструменты:
- Генерация кода;
- Swagger;
- Druid;
- Управление журналами.
Журнал изменений
2.0.20190909-alpha:
- Из модуля api удалён код авторизации oauth, оставлен только код контроллера;
- Код авторизации oauth перемещён из модуля api в отдельный модуль oauth как сервер авторизации, который предоставляет услуги авторизации модулю api.
2.0.20190904-alpha:
- Добавлен модуль eureka-server;
- Удалены некоторые повторяющиеся зависимости;
- Обновлён Dockerfile.
2.0.20190805-alpha: добавлена поддержка SQL Server.
2.0.20190802-alpha:
- Генератор кода поддерживает SQL Server;
- Реализован универсальный сервис, уменьшено количество избыточного кода serviceImpl.
Более подробный журнал изменений см. в CHANGE_LOG.md.
Использование
Подготовка: перед использованием IntelliJ IDEA или Eclipse установите плагин lombok.
-
Установка jar: некоторые самодельные jar-файлы не доступны в центральном репозитории, их необходимо установить локально с помощью команды mvn install. Выполните install.bat в папке «Необходимые jar-файлы» для установки.
-
Создание таблиц: обратите внимание, что все базы данных должны быть нечувствительны к регистру. Все файлы SQL находятся в каталоге «SQL инициализация».
- MySQL: выполните schema-mysql.sql для создания таблиц данных и импорта тестовых данных. Затем выполните соответствующее обновление SQL.
- Oracle: выполните schema-oracle.sql, чтобы создать таблицы данных и импортировать тестовые данные. Затем выполните соответствующий SQL для обновления.
- PostgreSQL: выполните schema-postgresql.sql, чтобы создать таблицы данных и импортировать тестовые данные. Затем выполните соответствующий SQL для обновления.
- SQL Server: выполните schema-sqlserver.sql, чтобы создать таблицы данных и импортировать тестовые данные. Затем выполните соответствующий SQL для обновления.
- Изменение информации о соединении с базой данных:
- MySQL: информация о соединении находится в файле application-mysql.yml. После изменения информации о соединении необходимо также настроить spring.profiles.active=mysql в файле application-common.yml.
- Oracle: информация о соединении находится в файле application-oracle.yml. После изменения информации о соединении необходимо также настроить spring.profiles.active=oracle в файле application-common.yml.
- PostgreSQL: информация о соединении находится в файле application-pg.yml. После изменения информации о соединении необходимо также настроить spring.profiles.active=pg в файле application-common.yml.
- Microsoft SQL Server: информация о соединении находится в файле application-sqlserver.yml. После изменения информации о соединении необходимо также настроить spring.profiles.active=sqlserver в файле application-common.yml.
- Запуск: сначала запустите eureka-сервер, затем сервер аутентификации oauth, порядок запуска других модулей не фиксирован. Однако, если вам нужна функция запланированных задач в веб-модуле, сначала запустите модуль old-task.
Тестирование API: см. oauth интерфейс вызова примера.
Страница управления: тестовый аккаунт: номер мобильного телефона 18800000000, пароль 1234567890c.
Обмен и общение: если у вас есть какие-либо вопросы или проблемы во время использования, пожалуйста, отправьте issue, и я отвечу вам как можно скорее.
Комментарии ( 0 )