Saltar a contenido

feishu-auth: Autenticación de inicio de sesión basada en la estructura organizativa de Feishu para nginx-module-lua

Instalación

Si no has configurado la suscripción al repositorio RPM, regístrate. Luego puedes proceder con los siguientes pasos.

CentOS/RHEL 7 o 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-feishu-auth

CentOS/RHEL 8+, Fedora Linux, Amazon Linux 2023

dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install lua5.1-resty-feishu-auth

Para usar esta biblioteca Lua con NGINX, asegúrate de que nginx-module-lua esté instalado.

Este documento describe lua-resty-feishu-auth v0.0.1 lanzado el 11 de agosto de 2021.


Autenticación de inicio de sesión basada en la estructura organizativa de Feishu para OpenResty / ngx_lua

Uso

Descarga

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-feishu-auth.git

Configuración

server {
    access_by_lua_block {
        local feishu_auth = require "resty.feishu_auth"
        feishu_auth.app_id = ""
        feishu_auth.app_secret = ""
        feishu_auth.callback_uri = "/feishu_auth_callback"
        feishu_auth.logout_uri = "/feishu_auth_logout"
        feishu_auth.app_domain = "feishu-auth.example.com"

        feishu_auth.jwt_secret = "thisisjwtsecret"

        feishu_auth.ip_blacklist = {"47.1.2.3"}
        feishu_auth.uri_whitelist = {"/"}
        feishu_auth.department_whitelist = {"0"}

        feishu_auth:auth()
    }
}

Descripción de la configuración

  • app_id se utiliza para establecer el App ID de la aplicación personalizada de Feishu.
  • app_secret se utiliza para establecer el App Secret de la aplicación personalizada de Feishu.
  • callback_uri se utiliza para establecer la dirección de retorno después de iniciar sesión en Feishu (debe configurarse la URL de redirección en la configuración de seguridad de la aplicación personalizada de Feishu).
  • logout_uri se utiliza para establecer la dirección de cierre de sesión.
  • app_domain se utiliza para establecer el nombre de dominio de acceso (debe coincidir con el nombre de dominio de acceso del servicio de negocio).
  • jwt_secret se utiliza para establecer el secreto de JWT.
  • ip_blacklist se utiliza para establecer la lista negra de IP.
  • uri_whitelist se utiliza para establecer la lista blanca de direcciones, por ejemplo, la página de inicio no necesita autenticación de inicio de sesión.
  • department_whitelist se utiliza para establecer la lista blanca de departamentos (cadena).

Descripción de permisos de la aplicación

  • Obtener información básica del departamento.
  • Obtener información de la estructura organizativa del departamento.
  • Leer la libreta de direcciones en nombre de la aplicación.
  • Obtener información de la estructura organizativa del usuario.
  • Obtener información básica del usuario.

Módulos dependientes

Proyectos relacionados

Autor

K8sCat k8scat@gmail.com

Licencia de código abierto

MIT

GitHub

Puedes encontrar consejos adicionales de configuración y documentación para este módulo en el repositorio de GitHub para nginx-module-feishu-auth.