向WordPress添加单点登录可让您的用户快速安全地登录您的WordPress网站,而无需记住用户名和密码。相反,他们可以使用他们的Google登录名、Okta或许多其他SSO服务之一。
在本教程中,我们将逐步向您展示如何在WordPress中正确设置SAML单点登录。
为什么要向WordPress添加SAML单点登录?
SAML SSO是一种开放协议,允许用户使用相同的凭据登录到多个网站。例如,通过单点登录,您可以使用您的Google帐户登录WordPress。
这提高了用户满意度,因为他们不必经历密码重置过程,而是可以使用现有的登录信息。
从网站所有者的角度来看,它可以让您在登录期间通过可信赖的提供商验证用户的身份,从而提高您的WordPress安全性。
单点登录对公司内部网站非常有益。公司管理员/人力资源团队喜欢它,因为它可以轻松地将新团队成员加入多个网站。
下面将分享两个不同的WordPress插件,它们可以帮助您在WordPress中设置SAML SSO。
- 使用Google Apps Login设置SAML SSO
- 使用SAML Single Sign On设置SAML SSO
方法 1. 使用Google Apps Login设置SAML SSO
我们建议使用Google Apps Login插件在WordPress中设置SAML单点登录。该插件非常易于使用,可让您的用户、员工或学生选择通过安全的Google账号快速登录。
您需要做的第一件事是安装并启用插件。插件激活后,您需要导航到Google Cloud Platform Console以创建新的API,以便将您的Google帐户和WordPress连接在一起。
要创建新API,首先单击屏幕顶部的“Select a project”下拉菜单。
如果您已经创建了一个Google开发者项目,您的屏幕看起来可能略有不同,但您仍然可以简单地点击相同的下拉箭头来创建一个新项目。
这将弹出一个弹出窗口。在这里,您需要单击右上角的“New Project”按钮。
在下一个屏幕上,您需要在“Project name”框中为您的项目命名。这将帮助您记住项目的目的,但它不会出现在您的访问者面前。您还需要确保“Organization”和“Location”与您网站的域名相匹配。
之后,单击“Create”按钮。创建项目后,会有一个下拉通知菜单显示您的新项目。单击“Select Project”按钮打开项目。
接下来,单击左侧菜单中的“OAuth consent screen”选项。在这里,您有两个选项可供选择。如果您有会员网站或销售在线课程并希望允许您的用户使用Google登录,则“External”选项很有意义。“Internal”选项仅允许您公司内的用户使用Google登录。对于此选项,您需要拥有一个高级Google Workspace帐户,并且您的用户需要被添加为团队成员。
无论您选择内部还是外部,每个需要登录的用户都必须在其Gmail地址下设置一个现有的WordPress帐户。否则,他们将无法登录。下面我们将选择“External”选项为示例,因为这使我们可以更灵活地确定谁可以登录。
之后,单击“Create”按钮。这会将您带到一个屏幕以输入您的应用程序详细信息。首先,您需要输入您的“App name”并从下拉列表中选择“User support email”。
然后,输入您的“App domain”信息。您需要填写所有三个字段。Google需要这些信息来确保您的网站符合在线隐私法规和用户同意。
之后,向下滚动到“Authorized domains”部分。然后,单击“Add Domain”按钮以显示一个框,您将在其中输入您的域名。
确保您输入的域正确填写协议http://或https://。接下来,在“Developer contact information box”中输入您的电子邮件地址,以便Google在您的项目出现问题时与您取得联系。
然后,单击“Save and Continue”按钮。之后,单击页面左侧导航菜单中的“Credentials”选项,然后单击“Create Credentials”。
这会弹出一个下拉菜单。您需要选择“OAuth client ID”选项。
在下一个屏幕上,单击“Application type”下拉列表。然后,从列表中选择“Web application”。
这将打开一个表单,您可以在其中为您的网络应用程序命名。该名称仅供您自己参考,不会向您的访问者显示。
接下来,向下滚动到“Authorized Javascript origins”部分。然后,单击“Add URL”按钮并输入您网站的URL。
之后,单击“Authorized redirect URLs”部分中的“Add URL”按钮并输入您的登录重定向URL。此URL是您的登录页面的 URL。对于大多数WordPress网站,这将是“yoursite.com/wp-login.php”。
之后,单击“Create”按钮。这会弹出一个包含您的“Client ID”和“Client Secret”的弹出窗口。您需要将这两个复制到您喜欢的文本编辑器中。
现在您需要导航回您的WordPress管理面板并转到Settings » Google Apps Login。在此屏幕上,您将输入从上面复制的“Client ID”和“Client Secret”字符串。
之后,单击“Save Changes”。完成此操作后,将启用Google单点登录。现在,当您或访问者进入WordPress登录页面时,他们只需点击几下即可使用他们的Google帐户登录。
方法 2. 使用SAML Single Sign On设置SAML SSO
此方法涉及使用SAML Single Sign On插件。此插件可让您将SAML SSO添加到WordPress并支持各种不同的登录。
例如,您可以使用 Google、Salesforce、Microsoft Office 365、OneLogin、Azure等添加SSO。由于它支持各种业务工具,因此更适合只允许团队成员登录的业务。
您需要做的第一件事是安装并启用插件。激活后,导航到miniOrange SAML 2.0 SSO » Plugin Configuration以显示插件设置屏幕。
在这里,您需要选择您的服务提供商。这是您的用户将用于登录的服务。
在本教程中,我们将使用“Google Apps”,但您可以为您的网站选择最佳提供商。集成步骤将类似。要使用Google Apps设置 SSO,您需要一个Google Workspace帐户。Google Workspace是一组来自Google的优质生产力和业务工具。
您还需要为要授予登录访问权限的每个用户创建一个WordPress帐户。每个用户的电子邮件地址必须是Gmail帐户,或来自Google Workspace的团队成员电子邮件。
拥有高级Google Workspace帐户后,您可以继续在WordPress中设置SSO。接下来,单击“Service Provider Metadata”菜单选项。
然后,向下滚动页面,直到找到列出了“SP-EntityID/Issuer”和“ACS URL”的图表。复制这两个并将它们粘贴到您最喜欢的文本编辑器中。
完成此操作后,您需要在新选项卡中打开Google管理控制台。然后,转到左侧导航菜单中的Apps » Web and mobile apps。
之后,单击“Add App”下拉菜单。然后,选择“Add custom SAML app”选项。
在下一个屏幕上,您需要为您的应用程序命名,并且您可以根据需要上传自定义Logo。然后,单击“Continue”按钮。
对于下一步,您有两种不同的选择。最简单的选项是“Option 1”,您只需单击“Download Metadata”按钮即可。您需要在稍后的步骤中将此数据上传到WordPress。
之后,单击屏幕底部的“Continue”。这会将您带到一个屏幕,您可以在其中粘贴您之前复制的“ACS URL”和“Entity ID”。然后,选中“Signed response”复选框。
接下来,从“EMAIL”下拉列表中选择“Name ID format”。然后,单击屏幕底部的“Continue”。
在下一个屏幕上,您需要单击“Add Mapping”按钮。这会将您的WordPress登录表单中的数据映射到Google。
接下来,在“Basic information”框选择“First name”字段,然后在“App attributes”框中键入“lastname”。
然后,单击“Add Mapping”按钮,选择“Last name”字段,然后在“App attributes”框中键入“lastname”。
完成后,单击“Finish”按钮。现在,您将返回到刚刚创建的SAML应用程序。选择您的应用程序,然后单击“User access”部分。
然后,在“Service status”框中,单击“ON for everyone”单选按钮。之后,单击“Save”。
您现在已成功创建并启用您的SAML SSO应用程序。现在,返回您的WordPress管理面板并导航到miniOrange SAML 2.0 SSO » Plugin Configuration。
在此屏幕上,确保选择了“Google Apps”并向下滚动到“Configure Service Provider”部分,然后单击“Upload IDP Metadata File/XML”按钮。
现在,在“Identity Provider Name”框中键入“Google”,然后单击“Choose File”按钮。然后,选择您之前下载的 XML 文件并单击“Upload”按钮。
之后,单击“Attribute/Role Mapping”菜单选项。对于插件的免费版本,您必须保留默认属性选项。
然后,向下滚动到“Role Mapping”部分。您可以在此处更改默认角色,该角色将分配给所有使用SSO登录的非管理员用户。如果尚未选择,请从下拉列表中选择“Subscriber”,然后单击屏幕底部的“Save”按钮。
现在您需要添加一个简单的登录链接到您的WordPress博客。
为此,请导航到外观 » 小工具并查找您要添加登录链接的小部件区域。在本教程中,我们将登录小工具添加到右侧边栏小部件区域。
在小工具区域下,单击“+”图标以添加新区块。
然后,在搜索栏中输入“Login”,这样您就可以找到并选择“Login with Google”小工具。这将在小工具区域中插入一个“Login with Google”链接。
如果愿意,您还可以为登录区块添加标题。在离开页面之前,请务必点击“Update”按钮。
现在,当您的用户访问您的网站时,他们可以选择使用他们的Google帐户登录。当他们点击链接时,他们将被带到Google登录屏幕以选择他们的帐户。
我们希望本教程能帮助您学习如何在WordPress中正确设置SAML单点登录。
原文地址:https://www.wbolt.com/how-to-properly-setup-saml-single-sign-on-sso-in-wordpress.html