Redmine单点登录

单点登录SSO

# 说明

本文为您介绍Redmine3.0及以上版本与IDaaS单点登录配置过程,实现Redmine的统一登录以及应用系统间单点登录效果,给用户带来更简易便捷的登录方式和更好的用户体验。

# 认证配置

# Redmine 配置

  1. 安装插件,此过程以linux环境为例:插件地址 (opens new window)

  2. 将插件下载至plugins目录下。

    git clone https://github.com/chrodriguez/redmine_omniauth_saml.git
    
    1

    cd redmine_omniauth_saml/
    bundle install
    #到redmine的根目录运行
    RAILS_ENV=production bundle exec rake redmine:plugins
    
    1
    2
    3
    4
  3. 编辑认证参数,添加saml.rb文件到<redmine_folder>/config/initializers目录下。

    插件的文件夹中有一个示例文件sample-saml-initializers.rb。

    文件内容示例如下图:

    参数 参数说明
    assertion_consumer_service_url Redmine实际地址
    issuer Redmine实际地址
    single_logout_service_url Redmine退出地址
    idp_sso_target_url IDaaS登录地址
    idp_cert_fingerprint 证书指纹
    name_identifier_format 固定格式:urn:oasis:names:tc:SAML:2.0:nameid-format:persistent
    idp_slo_target_url IDaaS退出地址
    name_identifier_value 固定值:login
    attribute_mapping IDaaS与Redmine属性映射关系:
    :login => 'extra.raw_info.username',
    :mail => 'extra.raw_info.email',
    :firstname => 'extra.raw_info.firstname',
    :lastname => 'extra.raw_info.lastname'

    下载IDaaS的IDP元数据请访问 https://{your_domain}/api/v1/saml2/idp/metadata。

    IDP证书指纹获取方式(任选其一):

    • 复制IDaaS 企业中心-【设置】-【服务配置】-【IDP配置】中的IDP证书内容,保存为 idp.cer文件,查看证书文件。

    • 复制证书内容,通过在线工具 (opens new window)计算证书指纹。

  4. 重启Redmine。

  5. 登录Redmine管理台可配置登录页显示内容。

  6. 点击Configre配置登录页显示内容。

# IDaaS配置

  1. 添加预集成应用Redmine。

  2. 认证参数配置。

    参数 说明
    SP Entity ID saml.rb文件中的issuer参数
    断言消费地址(ACS URL) saml.rb文件中assertion_consumer_service_url参数
    Name ID 应用账号
    NameID Format saml.rb文件中的name_identifier_format
    Audience URI saml.rb文件中的issuer参数
  3. 在应用详情的-认证配置-映射配置,添加firstname、lastname、email、username属性。

  4. 进入应用详情-授权管理-应用账号,点击添加账号按钮,选择授权用户。

# 登录验证

如下两种登录方式:

  • 通过redmine登录页发起认证。

  • 通过IDaaS用户中心点击应用log,单点进入redmine。