Matomo SAML验证模块允许用户登录到Matomo使用SAML身份提供者(IdP)。

如果你有一个联邦环境与SAML身份提供者(OneLogin Okta,萍身份,ADFS,谷歌,Salesforce, SharePoint…),您可以使用这个插件来互操作,从而使SSO Matomo分析用户。亚博ap下载

SAML是一个包含在我们的高级特性云端的企业计划或者你可以购买Matomo市场如果你自我主机Matomo内部亚博账号每天2000元出租了解更多关于所有登录SAML的好处和特点

安装

需求

  • PHP > = 5.5.9
  • Matomo > = 3. x
  • 购买的插件市场SAML插件页面
  • 注意:当配置SAML为你通过SAML Matomo实例并添加用户,你需要同意Matomo的隐私政策和条款和条件这些用户的利益。请注意,个人用户将不会被要求单独同意这些条款。是你的责任,以确保所有用户添加SAML知道并遵守Matomo的隐私政策和条款和条件。

安装

根据我们的安装插件插件安装指南

配置

配置SAML验证遵循这些步骤:

  1. 作为一个超级用户登录

  2. 管理>插件页面,激活LoginSaml插件。

  3. 导航到设置> SAML页面
    图像

  4. SAML的输入和保存设置:添加身份提供者的信息,设置属性映射和配置适用的其他选项。

  5. 与国内流离失所者管理员分享服务提供者的元数据
    图像

  6. 使SAML验证
    图像

  7. 你现在可以打开一个新的浏览器会话并尝试登录与SAML身份提供者。
    图像

SAML配置支持

配置SAML验证正确是很困难的,所以我们能提供我们的服务,帮助你得到Matomo分析成功地处理SAML和享受SSO的巨大好处。亚博ap下载学习更多的与我们联系SAML支持页面

SAML插件设置

现在你知道主要的配置步骤,我们提供SAML配置的详细信息。

状态设置

一旦激活了SAML插件,你可以访问其设置面板。

图像

状态设置部分你看支持SAML验证是禁用的。当禁用,所有SAML行动被禁用,如果用户试图执行它们,她将得到一个错误通知,SAML的功能被禁用。

您可能只启用的时候剩下的正确配置SAML设置。

在SAML,有两个不同的实体:
1。身份提供者IdP(第三方实体,用户身份验证),和
2。服务提供商SP(保护应用程序的服务,在这种情况下Matomo)。

一圈之间的信任定义国内流离失所者和SP,允许所有IdP用户访问SP在某些条件下。那个圆的信任是基于XML的交换,名叫元数据,描述实体的ID,实体端点和公共证书(这将允许验证签名/加密SAML消息)。

身份提供商设置

身份提供商设置部分,你可以注册身份提供商的元数据。

你可以直接填写表单:

图像

或点击进口来自国内流离失所者的元数据的值链接:

图像

这个链接将重定向到一个表单,提供了两种不同的方法让你身份提供者导入元数据:

  1. 通过元数据的URL
  2. 通过字符串XML

在案例导入元数据包含超过1身份提供商实体描述,您可以使用IdP实体的ID身份所需的实体:

图像

选项设置

选项设置部分可以定义Matomo SAML集成将如何行动。

选项设置

在某些情况下是有意义的支持及时供应当你想要自动创建用户帐户的基础上在SAMLResponse身份提供者提供的数据。

  • 如果即时供应是禁用或不提供所需的用户数据,在SSO过程中会发生一个错误,因为我们将不能启动任何Matomo帐户。

  • 如果启用了即时配置,默认情况下任何新用户(创建即时供应)将无法获得Matomo。你可以设置一个默认视图许可(Matomo的视图的权限是什么?一些Matomo网站。使用初始视图访问的网站新用户设置一个Matomo网站id列表,用户可以查看默认网站id(逗号分隔列表)。

  • 为超级用户在使用即时供应,您将需要为用户设置一个密码一旦创建使用本地超级用户帐户(或一个超级用户,本地Matomo密码已经设置)为了使用超级用户帐户的所有功能如安装/激活插件和用户管理。
    这可以通过设置>用户>单击编辑按钮>输入新密码密码场>,然后点击保存基本信息

为了确定您Matomo用户帐户,您需要设置一个值字段来识别用户默认情况下,电子邮件字段将被使用,但你可以选择用户名和Matomo将使用用户名字段。

你也可以启用或禁用一个注销功能。注意,如果禁用它,单注销服务数据不会发表在服务提供者的元数据。

你也可以强制用户使用SAML验证通过启用“力SAML登录”设置。这样做可以直接重定向所有用户身份提供者,所以Matomo登录屏幕不会显示出来。超级用户仍将需要登录正常,例如,配置SAML插件。超级用户可以登录通过附加Matomo登录屏幕正常吗?在访问Matomo URL。(注:其他用户将无法登录。)

属性映射设置

这取决于的值字段来识别用户及时供应的字段属性映射设置节将是必需的或可选的。

图像

  • 如果启用了准时制,所有映射字段将被要求。
  • 如果及时供应是禁用的字段的值字段来识别用户还是需要的。

身份提供者发送到服务提供者的用户数据自定义属性名称,所以你可以使用之前的形式映射名称在国内流离失所者和Matomo之间。

访问同步设置

访问同步设置节可以让用户从SAML属性访问同步。

图像

LoginSAML支持同步访问级别中使用属性提供的SAMLResponse身份提供者。要使用该功能,确保国内流离失所者提供访问数据在3种不同的SAML属性:

注意:你可以选择任何你想要的名称为这些属性。你会告诉LoginSaml这些名字在SAML设置页面。

身份提供者访问数据的例子:

< saml:属性名称= "视图" NameFormat = " urn: oasis: names: tc: saml: 2.0: attrname-format:基本的“> < saml: AttributeValue xsi: type = " xs: string " >所有< / saml: AttributeValue > < / saml:属性> < saml:属性名称=“admin”NameFormat = " urn: oasis: names: tc: saml: 2.0: attrname-format:基本的“> < saml: AttributeValue xsi: type = " xs: string " > 1、2、3 < / saml: AttributeValue > < / saml:属性> < saml:属性名称=“超级用户”NameFormat = " urn: oasis: names: tc: saml: 2.0: attrname-format:基本的“> < saml: AttributeValue xsi: type = " xs: string " > 1 < / saml: AttributeValue > < / saml:属性>

然后在SAML设置页面,检查从SAML允许用户访问同步复选框,填写下面的设置出现。

用户访问同步发生在用户登录。

管理访问多个Matomo实例

LoginSaml支持使用单一IdP SAML服务器来管理访问多个Matomo实例。如果你想使用此功能,您必须指定特殊值SAML属性的访问。例如:

  • 观点:myMatomoserver.whatever.com: 1、2、3; myotherserver.com
  • 管理:myMatomoserver.whatever.com, mythirdserver.com: 3、4
  • 超级用户:myotherserver.com;myotherserver.com/otherMatomo

如果你不想使用url访问属性,您可以使用特别的名字为这个Matomo实例设置指定一个特别的名字为每个Matomo实例。例如,如果你把它MatomoServerA在一个Matomo和MatomoServerB在另一个,你的SAML属性的样子:

  • 观点:MatomoServerA: 1、2、3, MatomoServerB:所有
  • 管理:MatomoServerA: 4、5、6所示
  • 超级用户:MatomoServerC

使用一个自定义的访问属性的格式

您可以自定义分隔符用于访问通过设置属性用户访问服务器属性规范分隔符用户访问服务器和站点列表分隔符属性设置。

如果你设置用户访问服务器属性规范分隔符选项#访问属性可以指定为:

观点:MatomoServerA: 1、2、3 # MatomoServerB:

如果你设置用户访问服务器和站点列表分隔符属性选项#访问属性可以指定为:

观点:MatomoServerA # 1、2、3, MatomoServerB #

高级设置

高级设置节中,您还可以启用/禁用调试模式和配置先进的SAML和安全参数。

这些设置匹配php-saml设置(基本的PHP库在使用SAML插件和OneLogin inc .)提供的,所以你可以检查它文档为更多的信息。

图像

SAML为Matomo插件是如何工作的呢?

这个插件添加执行能力SAML单点登录(SSO)和单注销物资货柜在服务提供者方面,还在身份提供者。本节描述SAML身份验证流。

SP-initiated SSO身份验证过程

图像

  1. 重定向到身份提供商(当“SAML登录”按钮点击登录界面):
    • 日志消息:单点登录开始,重定向到国内流离失所者(日志级别:信息)
  2. 当从身份提供商来断言响应消费者服务端点:
    • 日志消息:启动断言消费者服务(日志级别:信息)
  3. SAML验证成功:
    • 日志消息:SAMLResponse验证(日志级别:信息)
    • 日志消息:属性+ NameId + NameIDFormat + SessionIndex (日志级别:调试)
  4. 或返回SAML验证一些错误响应从身份提供商:
    • 日志消息:SAMLResponse拒绝。+原因(日志级别:错误)
    • 日志消息:SAML响应XML (日志级别:调试)
  5. 用户创建(可选步骤,如果帐户不存在):
    • 如果用户不存在,但是启用即时供应和提供所需的属性:日志消息:添加用户(日志级别:信息)
    • 如果用户没有默认网站访问:日志消息:SAML设置没有定义默认网站提供新用户在“选项”部分(日志级别:警告)
    • 如果用户默认网站访问:日志消息:添加用户用户访问网站:网站(日志级别:信息)
    • 如果用户不存在和即时配置启用但是过程失败:日志消息:即时配置错误/需要/ X映射/ / X(没有提供日志级别:错误)
    • 如果用户不存在和即时配置禁用:日志消息:用户 不存在和即时供应是禁用的(日志级别:错误)
  6. 同步访问(可选步骤,如果启用同步访问):
    • 如果用户没有数据访问:日志消息:用户 没有进入SAML,但访问同步启用。(日志级别:警告)
    • 如果定义了用户访问数据应该指定为超级用户:日志消息:MatomoAccess同步。用户 现在超级用户(日志级别:信息)
    • 如果定义了用户访问网站上访问数据:*日志消息* *:MatomoAccess同步。访问的用户 更新(日志级别:信息)
  7. 成功登录:
    • 日志消息:用户登录 在Matomo认证(日志级别:信息)

IdP-initiated SSO身份验证过程

图像

类似于SP-initiated SSO但没有步骤1。

SP-initiated单注销验证过程物资货柜启用)

图像

  1. 重定向到身份提供商。(注销请求发送)。当点击“注销”链接,用户会话发起和SAML流:
    • 日志消息:启动单注销用户登录的用户(日志级别:信息)
  2. 当身份提供商已经注销回应单注销服务端点:
    • 日志消息:启动单一注销服务为用户提供登录用户(日志级别:信息)
  3. SAML验证:
    • 如果SAML注销响应是有效的:日志消息:单注销服务执行。用户登录用户登录(日志级别:信息)
    • 如果有一些错误在身份提供者注销回应:日志消息:在单一错误注销服务端点。用户登录用户。+错误原因(日志级别:错误)

IdP-initiated单注销验证过程物资货柜启用)

图像

  1. 当从身份提供商已经注销请求单注销服务端点:
    • 日志消息:启动单一注销服务为用户提供登录用户(日志级别:信息)
  2. SAML验证:
    • 如果有一些错误在注销请求身份提供商:日志消息:在单一错误注销服务端点。用户登录用户。+错误原因(日志级别:错误)
  3. 重定向到身份提供商(注销响应发送)
  4. 当身份提供商已经注销回应单注销服务端点:
    • 日志消息:启动单一注销服务为用户提供登录用户(日志级别:信息)
  5. SAML验证是成功的:
    • 日志消息:单注销服务执行。用户登录用户登录(日志级别:信息)
  6. 在注销或SAML验证失败:错误返回响应从身份提供商:
    • 日志消息:在单一错误注销服务端点。用户登录用户。+错误原因(日志级别:错误)

学习更多关于SAML流是如何工作的,请访问:

安全注意事项

用户密码

LoginSAML生成随机哈希密码为用户在使用即时供应。如果用户想使用正常的登录过程,一个超级用户应该指定一个有效的密码为他们曾经通过SAML身份验证,用户可以更改这个密码之后才被一个超级用户设置。

一套Matomo密码需要为了使用某些功能,如生成令牌认证或更改设置,提示密码验证。

密码确认

当改变设置的插件或激活/禁用插件,Matomo要求你输入密码进行更改。

这可能会导致一个问题如果你登录使用SAML,因为Matomo将生成一个随机哈希密码为用户在使用即时供应。确保用户可以更改设置或执行任何操作需要密码确认,SAML插件安装版本的发布4.3.0提供了一种方法来禁用密码确认。

禁用密码确认您可以更新设置下SAML UI选项设置。

注意:默认禁用密码确认自安装插件版本4.3.0的释放。

图像

令牌认证

SAML没有身份验证令牌的概念,所以用户的token_auth专门Matomo数据库中存储。如果一个token_auth妥协,你可以重新生成令牌在Matomo >管理>个人设置。

日志记录

LoginSAML广泛使用调试日志可以快速诊断问题。一些日志条目包含敏感信息,所以一定要在生产中禁用调试日志记录功能也关掉“调试”模式的高级设置部分SAML设置面板。

学习更多的LoginSaml Mato亚博ap下载mo分析- SAML身份验证插件页面。

故障排除

调试

LoginSAML广泛使用调试日志可以快速诊断问题。一些日志条目包含敏感信息,所以一定要禁用调试日志记录在生产中也关掉调试模式在高级设置部分的SAML设置面板。

默认情况下日志与SAML将Matomo文件夹中找到tmp /日志/ saml.log但可以改变定义一个新值logger_file_path设置在(LoginSaml)的部分配置/ config.ini.php

的日志级别可以配置log_level参数和可能的值是:

  • 错误
  • 警告
  • 信息
  • 调试

级别越高,越小数量的日志条目。最高级别是错误(最低的水平调试)。

如果没有log_level中定义的参数(LoginSaml)然后默认Matomo部分log_level值将被使用(警告)。

使用即时供应,消息“国内流离失所者提供的用户名是不需要为了执行SAML及时供应”

问题是,服务提供者(Matomo)不能提取用户名从发送的SAMLResponse IdP价值。有两个可能的原因:

  • SAML设置的属性映射部分Matomo是错误的。你可能需要设置用户名字段属性的精确名称,和SAMLResponse都来了。
  • 国内流离失所者不是发送用户名,所以你可能需要联系身份提供者管理员和问他配置的国内流离失所者提供用户信息。

注意,即使你是识别用户的电子邮件地址,用户名是一个必需的字段,当你使用即时配置:必须提供电子邮件和用户名。你可以找到更多关于SAML反应使用SAML示踪工具(见下文)。

如何查看SAML和ws - federation通过浏览器发送的消息在单点登录和单注销

有一个Firefox扩展名SAMLTracer,您可以用它来记录和检查发送的SAMLResponse国内流离失所者在这个视频https://www.youtube.com/watch?看到如何使用它v = DLEif7nuNxg。

下一个常见问题:与Saml SSO怎么走?
以前的常见问题:SAML是干什么的?
Baidu