weauth: Authentification basée sur la structure organisationnelle de WeChat Entreprise pour nginx-module-lua
Installation
Si vous n'avez pas encore configuré l'abonnement au dépôt RPM, inscrivez-vous. Ensuite, vous pouvez procéder avec les étapes suivantes.
CentOS/RHEL 7 ou 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
Pour utiliser cette bibliothèque Lua avec NGINX, assurez-vous que nginx-module-lua est installé.
Ce document décrit lua-resty-weauth v0.0.3 publié le 11 août 2021.
Authentification basée sur la structure organisationnelle de WeChat Entreprise pour OpenResty/ngx_lua
Utilisation
Téléchargement
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
Configuration
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()
}
}
Explication de la configuration :
corp_idpour définir l'ID de l'entrepriseapp_agent_idpour définir l'AgentIdde l'application auto-développée de WeChat Entrepriseapp_secretpour définir leSecretde l'application auto-développée de WeChat Entreprisecallback_uripour définir l'URL de rappel après la connexion par code QR WeChat Entreprise (doit être défini dans le domaine de rappel d'autorisation de WeChat Entreprise)logout_uripour définir l'URL de déconnexionapp_domainpour définir le nom de domaine d'accès (doit correspondre au nom de domaine d'accès du service métier)jwt_secretpour définir le secret JWTip_blacklistpour définir la liste noire des IPuri_whitelistpour définir la liste blanche des adresses, par exemple, la page d'accueil n'a pas besoin d'authentificationdepartment_whitelistpour définir la liste blanche des départements (nombres)
Modules dépendants
Projets connexes
- lua-resty-feishu-auth Authentification basée sur la structure organisationnelle de Feishu pour OpenResty / ngx_lua
Auteur
K8sCat k8scat@gmail.com
Licence open source
GitHub
Vous pouvez trouver des conseils de configuration supplémentaires et de la documentation pour ce module dans le dépôt GitHub pour nginx-module-weauth.