andrew-rose / oauth.php
This package is not auto-updated.
Last update: 2024-09-20 01:48:10 UTC
README
这段代码只有一个目标,那就是允许你将链接添加到登录页面,以便用户可以通过简单的点击确认他们的电子邮件地址(身份),然后重定向到你的应用程序,如果信任Google/Microsoft,你可以立即使用指定的电子邮件地址登录用户,无需用户名/密码,神奇。
目前只配置了Google/Microsoft身份提供者,但你不应该在oauth.ini中添加更多问题。
要安装,请将oauth.php放入你的网站根目录中,配置oauth.ini并将其放置在网站根目录之外,包含你的客户端ID/密钥(见下面的说明以获取),并在登录页面嵌入登录链接,你可以通过直接访问oauth.php并复制HTML链接然后将它们直接粘贴到你的登录页面中,或者直接使用jQuery包含它们,例如。
<div id="sso"></div> <script type="text/javascript"> jQuery('#sso').load('oauth.php'); </script>
用户点击他们的身份提供者的链接后,提供者将验证他们(希望如此)并将用户重定向回oauth.php,带上用户的电子邮件地址,然后可以在你的登录过程中使用此电子邮件地址,即。
session_start(); $_SESSION['ssoEmail'] = $data[$settings[$idp]['emailIdentifier']]; header('Location: '.$settings['default']['uri']); session_write_close();
上述操作设置了一个会话变量ssoEmail,然后用户被重定向到主应用程序,该应用程序检查此会话变量,如果设置,则登录用户。如果你的要求更复杂/不同,你需要编辑上述代码中的ouath.php。
要注册Google SSO,请访问 https://console.cloud.google.com 并在左侧选择凭证 -> 创建凭证 -> OAuth客户端ID。应用程序类型是Web应用程序,重定向URI需要指向你的网站根目录中的oauth.php,例如 https://your.domain/oauth.php。
要注册Microsoft SSO,请转到 https://portal.azure.com 并选择Azure Active Directory -> 应用注册。确保重定向URI指向你的网站根目录中的oauth.php,例如 https://your.domain/oauth.php。
欢迎贡献!