外部腳本 在這個認證模塊中,當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
按照官方實例配置後的確完成了外部鑒權的配置工作,我們所需要做的就是編寫外部腳本。