Zum Inhalt

weauth: Basierte Login-Authentifizierung auf der Unternehmensstruktur von WeChat für nginx-module-lua

Installation

Wenn Sie das RPM-Repository-Abonnement noch nicht eingerichtet haben, melden Sie sich an. Dann können Sie mit den folgenden Schritten fortfahren.

CentOS/RHEL 7 oder 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

Um diese Lua-Bibliothek mit NGINX zu verwenden, stellen Sie sicher, dass nginx-module-lua installiert ist.

Dieses Dokument beschreibt lua-resty-weauth v0.0.3, das am 11. August 2021 veröffentlicht wurde.


Basierte Login-Authentifizierung auf der Unternehmensstruktur von WeChat für OpenResty/ngx_lua

Verwendung

Download

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

Konfiguration

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()
    }
}

Konfigurationsbeschreibung:

  • corp_id wird verwendet, um die Unternehmens-ID festzulegen
  • app_agent_id wird verwendet, um die AgentId der selbst entwickelten WeChat-Anwendung festzulegen
  • app_secret wird verwendet, um das Secret der selbst entwickelten WeChat-Anwendung festzulegen
  • callback_uri wird verwendet, um die Rückrufadresse nach der WeChat-QR-Code-Anmeldung festzulegen (muss in der autorisierten Rückrufdomain der WeChat-Anmeldung festgelegt werden)
  • logout_uri wird verwendet, um die Abmeldeadresse festzulegen
  • app_domain wird verwendet, um den Zugriffsdomänenname festzulegen (muss mit dem Zugriffsdomänenname des Dienstes übereinstimmen)
  • jwt_secret wird verwendet, um das JWT-Secret festzulegen
  • ip_blacklist wird verwendet, um die IP-Blacklist festzulegen
  • uri_whitelist wird verwendet, um die Adress-Whitelist festzulegen, z. B. benötigt die Startseite keine Login-Authentifizierung
  • department_whitelist wird verwendet, um die Abteilungs-Whitelist festzulegen (Zahlen)

Abhängige Module

Verwandte Projekte

Autor

K8sCat k8scat@gmail.com

Open-Source-Lizenz

MIT

GitHub

Zusätzliche Konfigurationstipps und Dokumentationen für dieses Modul finden Sie im GitHub-Repository für nginx-module-weauth.