[英]How can I automatically create a phpBB session when someone logs onto my website? (Single sign-on)
我目前有一個帶有用戶會話和phpBB討論板的網站。 我想合並網站和phpBB會話功能,以便如果用戶登錄主網站,我想自動創建phpBB會話。
我在互聯網上找不到適合我需要的正確的教程/示例–我只能以其他方式找到示例。
有建議的方法來解決此問題嗎?
在過去,建議您不要將phpBB集成到您自己的登錄系統中,因為phpBB是一個復雜的軟件(當然仍然是)並且擴展性不強,但是自phpBB3以來,潮流已經發生了變化,並且使之更具擴展性,那有什么選擇呢?
https://wiki.phpbb.com/Authentication_plugins
phpBB3支持外部身份驗證插件,該插件可用於替換傳統的基於數據庫的用戶身份驗證,該身份驗證仍可作為db身份驗證方法使用。
插件在
includes/auth/
目錄中作為可動態加載的PHP模塊實現。 每個模塊由其方法標識符標識。 標識符用在模塊名稱中,它是模塊中聲明的每個函數的后綴。要添加新的身份驗證方法(我們將其稱為
foo
),必須在includes/auth/
目錄中創建源文件auth_method.php
(在我們的示例中為auth_foo.php
)。 此源文件應提供許多功能。 身份驗證模塊中唯一必需的函數是login_method()
函數(在我們的示例中為login_foo()
)。 所有其他方法都是可選的。一旦在
includes/auth/
目錄中創建了新的身份驗證模塊,就可以在“管理控制面板”中的“客戶端通信/身份驗證”設置下將其選擇為所需的身份驗證方法。
我找不到該功能的有效示例,但是通過一些編程知識,您應該可以構建自己的功能。
phpBB隨附的身份驗證提供程序至少需要兩個文件:
phpBB/config/auth_providers.yml
文件中的一個類和一個條目。 作為擴展的一部分的身份驗證提供程序(而不是要求在phpBB/config/auth_providers.yml
中輸入)除了擴展的所有常規要求外,phpBB/config/auth_providers.yml
必須提供定義服務的自己的yaml文件。
身份驗證提供程序上的phpBB Wiki條目附帶一個示例,因此,如果您的開發板位於phpBB 3.1或更高版本上,則我建議從該示例開始。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.