[转]使用 LDAP 组或角色限制访问,包含部分单点登录SSO说明
参考:
http://www-01.ibm.com/support/knowledgecenter/api/content/SSEP7J_10.2.2/com.ibm.swg.ba.cognos.crn_arch.10.2.2.doc/c_restrict_access_using_ldap_groups_or_roles.html#Restrict_Access_Using_LDAP_Groups_or_Roles?locale=zh
使用 LDAP 组或角色限制访问
替代方法基于使用 LDAP 组织单元 (OU)。
您是否必须创建组或角色取决于认证提供程序。如果您使用 Oracle 目录服务器,那么必须创建角色,因为此提供程序将角色成员资格用作其用户帐户信息的一部分。如果您使用 Active Directory,那么必须创建组,因为此提供程序将组成员资格用作其用户帐户信息的一部分。
使用角色
使用 Oracle 目录服务器来为此技术创建角色。有关创建此类型角色的更多信息,请参阅 Oracle 目录服务器文档。
确保在 IBM Cognos Configuration 的安全、认证类别中正确定义了以下参数。
- 用户查找
将用户查找字符串配置为包含将用于对 ${userID} 变量进行认证的属性。此变量采用在登录时输入的用户名,并将该变量替换为值,然后将搜索字符串传递到目录服务器。角色的专有名称 (DN) 也必须包括在字符串中。
以下为查找字符串的示例:
(&(uid=${userID})(nsrole=cn=Cognos,ou=people,dc=cognos,dc=com))
在此示例中,组织单元 (ou) 中的 IBM Cognos BI 角色的所有成员(已命名人员)具有 IBM Cognos Connection 的访问权限。
- 是否使用外部身份?
如果已启用单点登录,请将值设置为 True。
- 外部身份映射
如果是否使用外部身份?设置为 True,请指定此属性。
构造字符串来在 LDAP 目录服务器中查找用户。在登录时,此字符串中的环境变量 ${environment("REMOTE_USER")} 会替换为用户名。
在以下示例中,Web 浏览器会设置环境变量 REMOTE_USER,其匹配用户的 uid 属性:
(&(uid=${environment("REMOTE_USER")})(nsrole=cn=Cognos,ou=people,dc=cognos,dc=com))在某些情况下,REMOTE_USER 变量(通常是 DOMAIN\username 格式)不能匹配任何用户 uid 属性。要解决此问题,将 replace 函数包括在字符串中,如以下示例中所示:
(&(uid=${replace(${environment("REMOTE_USER")},"ABC\\","")})(nsrole=cn=Cognos,ou=people,dc=cognos,dc=com))
如果包括 replace 函数,那么域名(在此示例中为 ABC)会替换为空字符串,且仅用户名会传递到目录服务器。
域名在此上下文中区分大小写。
创建角色之后,使用 IBM Cognos Configuration 配置它,以访问 IBM Cognos Connection。角色还可以添加到 Cognos 名称空间。
使用组
使用 Active Directory 来为此技术创建组。此技术涉及对用户查找字符串的修改。由于 Active Directory 不具有此属性,因此无法使用它。而是使用相关联的 LDAP 提供程序。
确保在 IBM Cognos Configuration 的安全、认证类别中正确指定了以下参数。
- 用户查找
将查找字符串配置为包含将用于对 ${userID} 变量进行认证的属性。此变量采用在登录时输入的用户名,并将该变量替换为值,然后将搜索字符串传递到目录服务器。组的专有名称 (DN) 也必须包括在字符串中。
以下为查找字符串的示例:(&(sAMAccountName=${userID})(memberOf=cn=ReportNet,ou=Groups,dc=cognos,dc=com)) - 是否使用外部身份?
如果已启用单点登录,请将值设置为 True。
- 外部身份映射
如果是否使用外部身份?设置为 True,请指定此属性。
构造字符串来在 LDAP 目录服务器中查找用户。在登录时,此字符串中的环境变量 ${environment("REMOTE_USER")} 会由用户名替换,然后字符串会传递到目录服务器。
在以下示例中,Web 浏览器会设置环境变量 REMOTE_USER,其匹配用户的 uid 属性。从浏览器会话读取环境变量,而不是将硬编码的sAMAccountName 值替换为 ${userID}。(&(sAMAccountName=${environment("REMOTE_USER")})(memberOf=cn=Cognos,cn=Groups,dc=cognos,dc=com))
创建组之后,使用 IBM Cognos Configuration 配置它,以访问 IBM Cognos Connection。组还可以添加到 Cognos 名称空间。
[转]使用 LDAP 组或角色限制访问,包含部分单点登录SSO说明的更多相关文章
- [转]使用 LDAP OU 限制访问
使用 LDAP OU 限制访问 http://www-01.ibm.com/support/knowledgecenter/api/content/SSEP7J_10.2.2/com.ibm.swg. ...
- CSU 1642 Problem B[难][前缀和]
Description 已知两个正整数a和b,求在a与b之间(包含a和b)的所有整数的十进制表示中1出现的次数. Input 多组数据(不超过100000组),每组数据2个整数a,b.(1≤a,b≤1 ...
- 用户、组或角色 '' 在当前数据库中已存在。 (Microsoft SQL Server,错误: 15023)
SQLServer2008用户组或角色'*****'在当前数据库中已存在问题的解决办法 在迁移数据库的过程中SQLServer SDE的问题 为一个数据库添加一个用户时,提示以下信息:用户.组或角色 ...
- [caffe]linux下安装caffe(无cuda)以及python接口
昨天在mac上折腾了一天都没有安装成功,晚上在mac上装了一个ParallelDesktop虚拟机,然后装了linux,十分钟就安装好了,我也是醉了=.= 主要过程稍微记录一下: 1.安装BLAS s ...
- [Swift]基础
[Swift]基础 一, 常用变量 var str = "Hello, playground" //变量 let str1="Hello xmj112288" ...
- [Ruby on Rails系列]4、专题:Rails应用的国际化[i18n]
1. 什么是internationalization(i18n)? 国际化,英文简称i18n,按照维基百科的定义:国际化是指在设计软件,将软件与特定语言及地区脱钩的过程.当软件被移植到不同的语言及地区 ...
- [译]一个灵活的 Trello 敏捷工作流
[译]一个灵活的 Trello 敏捷工作流 翻译自 An Agile Trello Workflow That Keeps Tasks Flexible Getting things done 可不只 ...
- iOS10收集IDFA,植入第三方广告[终结]--ADMob
[PS: 前段时间,公司做ASO推广,需要在应用中收集IDFA值,跟广告平台做交互!于是有了这个需求--] 1.首先,考虑了一下情况(自己懒 -_-#),就直接在首页上写了一个Banner,循环加载广 ...
- SQL Server 创建用户报错:消息 15023,级别 16,状态 1,第 1 行 用户、组或角色 'XXX' 在当前数据库中已存在。
问题描述: 原因: 当数据库恢复到其他服务器时,原数据库中包含一组用户和权限,但可能没有相应的登录或者登录所关联的用户可能不是相同的用户. 这种情况可能会出现上面的问题.该问题是无法通过新建登录或者是 ...
随机推荐
- Java常考面试题
Java常考面试题 1. 什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”? 答:Java虚拟机是一个可以执行Java字节码的虚拟机进程.Java源文件被编译成能被Java虚拟机执行 ...
- 纯原生仿ES6的Object.assign,实现深度合并对象
源码: function isObj(x){ var type = typeof x; return x !== null && (type === 'object' || type ...
- [转]Android UI 自动化测试
介绍 Android测试支持库包含UI自动化模块,它可以对Android应用进行自动黑盒测试.在API Level 18中引入了自动化模块,它允许开发者在组成应用UI的控件上模仿用户行为. 在这个教程 ...
- ant-design 实现一个登陆窗口
前提:已经完成项目实战(https://ant.design/docs/react/practical-projects-cn#定义-Model) 如果要想实现一个登陆窗口,首先得有一个ui,想到的是 ...
- java.sql.Date java.sql.Time java.sql.Timestamp 之比较
java.sql.Date,java.sql.Time和java.sql.Timestamp 三个都是java.util.Date的子类(包装类). java.sql.Date是java.util.D ...
- Python网络编程(基础总结、 入门经典)
Linux下文件类型: bcd -lsp b(块.设备文件) c(字符设备文件) d(目录) -(普通文件) ...
- 数据结构与算法之顺序栈C语言实现
顺序栈是一种特殊的顺序表,主要操作是入栈和出栈.将顺序表加一些特定限制,就成了顺序栈. 注: 1.顺序栈C语言实现: 2.按较简单的方式实现,主要帮助理解,可在此基础上修改,更加完善: 3.提供几个简 ...
- git instaweb 500 error
在arch 系统中安装perl-cgi包. 在deiban中参考:https://git-scm.com/book/zh/v2/%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A ...
- Week2 Teamework from Z.XML 软件分析与用户需求调查(四)Bing桌面及助手的现状与发展
一.Bing搜索的相关背景 第一,必应搜索前几年的发展重点在于欧美市场,并且取得了一定的成效:根据 Hitwise 的统计数据,Bing 在 2011年3 月份市场占有率突破了 30% 大关,达到 3 ...
- 关于Oracle
Oracle初学者必知的100个问题 1. Oracle安装完成后的初始口令? internal/oracle sys/change_on_install system/manager sco ...