本节提供配置指南,用于为 Zabbix 启用 SAML 2.0 身份验证和用户供应的 Okta。
1。转到 https://developer.okta.com/signup/ 并注册/登录您的账户。
2。在 Okta 网络界面中,导航至 Applications → Applications。
3。点击 Create App Integration。
选择 "SAML 2.0" 作为登录方法,然后点击 Next。
4。在常规设置中,填写应用程序名称,然后点击 Next。
5。在 SAML 配置中,输入以下提供的值,然后点击 Next。
http://<your-zabbix-url>/zabbix/index_sso.php?acs
acs
参数。还应勾选 Use this for Recipient URL and Destination URL 复选框。zabbix
这些属性声明将插入到与 Zabbix 共享的 SAML 断言中。
此处使用的属性名称是任意示例。您可以使用不同的属性名称,但必须确保它们与 Zabbix SAML 设置中的相应字段值匹配。
如果您希望在不使用 JIT 用户配置的情况下配置通过 SAML 登录 Zabbix,则只需要电子邮件属性。
如果计划使用加密连接,请 generate 私有和公共加密证书,然后将公共证书上传到 Okta。当 Assertion Encryption 设置为 "Encrypted" 时,会出现证书上传表单(点击 Show Advanced Settings 以找到此参数)。
6。在下一个标签页中,选择 "I'm a software vendor. I'd like to integrate my app with Okta",然后点击 "Finish"。
7。导航到新创建应用程序的 "Assignments" 标签页,点击 Assign 按钮,然后从下拉菜单中选择 "Assign to People"。
8。在弹出窗口中,将应用程序分配给将使用 SAML 2.0 认证访问 Zabbix 的用户,然后点击 Save and go back。
9。导航到 "Sign On" 标签页,点击 View Setup Instructions 按钮。
配置说明 将在新标签页中打开;在配置 Zabbix 时请保持此标签页打开。
1。在 Zabbix 中,转到 设置zabbix
并根据 Okta 上的设置说明填写配置选项:
Zabbix 字段 | Okta 中的设置字段 | 示例值 |
---|---|---|
IdP entity ID | Identity Provider Issuer | |
SSO service URL | Identity Provider Single Sign-On URL | |
Username attribute | Attribute name | usrEmail |
SP entity ID | Audience URI | zabbix |
Group name attribute | Attribute name | groups |
User name attribute | Attribute name | user_name |
User last name attribute | Attribute name | user_lastname |
还需要配置用户组和媒介类型映射。
2。将 Okta SAML 设置说明中提供的证书下载到 ui/conf/certs 文件夹,并命名为 idp.crt。
运行以下命令设置权限为 644:
3。如果在 Okta 中将 Assertion Encryption 设置为“Encrypted”,则在 Zabbix 中也应勾选 Encrypt 参数的“Assertions”复选框。
4。点击“Update”按钮以保存这些设置。
1。要在 Okta 中启用 SCIM 配置,请进入应用程序的 "General" -> "App Settings" 页面。
勾选 Enable SCIM provisioning 复选框。结果是一个新的 Provisioning 标签页会出现。
2。转到 "Provisioning" 标签页以设置 SCIM 连接:
api_scim.php
,例如:https://<your-zabbix-url>/zabbix/api_scim.php
email
HTTP header
如果遇到认证问题 问题,请参见 授权头转发。
3。点击 Test Connector Configuration 以测试连接。如果一切正常,将显示一条成功消息。
4。在 "Provisioning" -> "To App" 中,确保勾选以下复选框:
这将确保这些请求类型会被发送到 Zabbix。
5。确保在 SAML 中定义的所有属性也在 SCIM 中定义。您可以通过点击 Go to Profile Editor 访问应用程序的 profile 编辑器,路径为 "Provisioning" -> "To App"。
点击 Add Attribute。填写 Display name、Variable name、External name 的值,使用 SAML 属性名称,例如:user_name
。
External namespace(外部命名空间)应与用户模式相同:urn:ietf:params:scim:schemas:core:2.0:User
6。转到应用程序的 "Provisioning" -> "To App" -> "Attribute Mappings"。点击底部的 Show Unmapped Attributes。新添加的属性将出现。
7。映射每个添加的属性。
8。在 "Assignments" 标签页中添加用户。这些用户之前需要在 Directory -> People 中添加。所有这些分配将作为请求发送到 Zabbix。
9。在 "Push Groups" 标签页中添加组。Zabbix SAML 设置中的用户组映射模式必须与此处指定的组匹配。如果没有匹配项,则无法在 Zabbix 中创建用户。
每次发生更改时都会发送有关组成员的信息。