欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

【翻译】eJabberd 外部脚本的使用

程序员文章站 2022-03-07 16:57:31
外部脚本 在这个认证模块中,当ejabberd启动,它将启动一个脚本去调用它的认证任务. 服务管理员可以使用任何的变成语言去编写外部脚本,ejabberd与脚本之间的接口详情的描述在ejabberd开发指南中. 这里也有一些认证脚本的实例. 链接:https://www.ejabberd.im/ex ......

外部脚本

在这个认证模块中,当ejabberd启动,它将启动一个脚本去调用它的认证任务.

服务管理员可以使用任何的变成语言去编写外部脚本,ejabberd与脚本之间的接口详情的描述在ejabberd开发指南中. 这里也有一些认证脚本的实例. 链接:https://www.ejabberd.im/extauth

这里是一些特殊的选项:

extauth_program:PathToScript

 

这个选项表示外部脚本的全路径. 脚本必须是ejabberd能够执行的.

extauth_instances:Integer

 

表示在虚拟主机中同时运行认证请求的脚本实例的数量,默认值最小为1.

extauth_cache:false|CacheTime Integer

默认值为false 禁用缓存功能, 值为0开启统计缓存,但是不能使用它缓存的信息去认证用户,如果设置其它值,则开启统计和认证两个: CacheTimeInteger 表示的秒数ejabberd可以重用认证信息,由于用户已经断开连接,去重新验证用户,不用重新去查询外部认证脚本.

注意:在一个主机如果内部认证被启动缓存则不应该启用. 如果缓存已启用, mod_last 必须也要在它的vhost中启用.

实例

这个外部认证的设置了,外部脚本, 开启缓存为10分钟, 还有在ejabberd中为每个虚拟主机声明了3个脚本实例.

auth_method: [external]

extauth_program: "/etc/ejabberd/JabberAuth.class.php"

extauth_cache: 600

extauth_instances: 3

 

按照官方实例配置后的确完成了外部鉴权的配置工作,我们所需要做的就是编写外部脚本。