weauth: Аутентификация на основе структуры организации WeChat для nginx-module-lua
Установка
Если вы еще не подписались на RPM-репозиторий, зарегистрируйтесь. Затем вы можете продолжить с следующими шагами.
CentOS/RHEL 7 или Amazon Linux 2
yum -y install https://extras.getpagespeed.com/release-latest.rpm
yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install lua-resty-weauth
CentOS/RHEL 8+, Fedora Linux, Amazon Linux 2023
dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install lua5.1-resty-weauth
Чтобы использовать эту библиотеку Lua с NGINX, убедитесь, что установлен nginx-module-lua.
Этот документ описывает lua-resty-weauth v0.0.3, выпущенный 11 августа 2021 года.
Аутентификация на основе структуры организации WeChat для OpenResty/ngx_lua
Использование
Загрузка
cd /path/to
git clone [email protected]:ledgetech/lua-resty-http.git
git clone [email protected]:SkyLothar/lua-resty-jwt.git
git clone [email protected]:k8scat/lua-resty-weauth.git
Конфигурация
server {
access_by_lua_block {
local weauth = require "resty.weauth"
weauth.corp_id = ""
weauth.app_agent_id = ""
weauth.app_secret = ""
weauth.callback_uri = "/weauth_callback"
weauth.logout_uri = "/weauth_logout"
weauth.app_domain = "weauth.example.com"
weauth.jwt_secret = "thisisjwtsecret"
weauth.ip_blacklist = {"47.1.2.3"}
weauth.uri_whitelist = {"/"}
weauth.department_whitelist = {1, 2}
weauth:auth()
}
}
Описание конфигурации:
corp_idиспользуется для установки идентификатора компанииapp_agent_idиспользуется для установкиAgentIdприложения WeChatapp_secretиспользуется для установкиSecretприложения WeChatcallback_uriиспользуется для установки адреса обратного вызова после входа через QR-код WeChat (необходимо установить в домене обратного вызова авторизации WeChat)logout_uriиспользуется для установки адреса выходаapp_domainиспользуется для установки домена доступа (должен совпадать с доменом доступа бизнес-сервиса)jwt_secretиспользуется для установки JWT secretip_blacklistиспользуется для установки черного списка IPuri_whitelistиспользуется для установки белого списка адресов, например, главная страница не требует аутентификацииdepartment_whitelistиспользуется для установки белого списка отделов (числа)
Зависимые модули
Связанные проекты
- lua-resty-feishu-auth Аутентификация на основе структуры организации Feishu для OpenResty / ngx_lua
Автор
K8sCat k8scat@gmail.com
Лицензия
GitHub
Вы можете найти дополнительные советы по конфигурации и документацию для этого модуля в репозитории GitHub для nginx-module-weauth.