问题标签 [identity-management]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
passwords - Lotus Notes、ID 文件以及新版本(8 及更高版本)中的变化
对于那些不知道的人,Lotus Notes 是一个很酷的系统,它具有非常强大的数据库复制能力,以及非常强大的证书管理和签名。
然而,强大的证书使用本身就是 Notes 的缺点之一。
当您通过 Notes 客户端登录到 Lotus Notes 时,您使用的密码不会存储在任何地方,除了作为存储在本地工作站上的 Notes ID 文件中的私钥的加密/解密密钥。
这意味着您可以拥有此文件的 15 个副本,具有 15 个不同的密码,只要您有匹配的密码,每个副本都是有效的。
对于身份管理系统,这是相当严重的,因为没有服务器端组件可以访问密码更改事件,而是完全基于客户端,服务器几乎无法告诉它发生了!
我听到的谣言是,在后来的 Lotus Notes/Domino 版本中,这种基于 ID 文件的身份验证开始发生变化。
我很难找到关于正在改变的内容、方式和版本的明确解释。(8.5?9?以后?)
这个问题的第二部分是,在 Active Directory 集成方面发生了什么?我听说有传言说可能允许AD认证而不是ID文件认证。我在这方面的猜测是,存储在服务器上的 ID 文件仍将用于授权,但成功的 Active Directory 身份验证将用于解锁对它的访问?还是其他型号?
寻找已经弄清楚这一点的人的观点!
附带说明一下,当访问 Notes 的 Webmail 时,会使用第二个密码 (httpPassword),因为当用户进行身份验证时,服务器当然无法访问本地 ID 文件。有人假设这是他们将用于其他形式的身份验证的模型,但众所周知,假设是一个糟糕的计划!
facebook - 我可以使用 facebook 凭据让用户访问我的网站吗?
我开始在一个网站上工作,该网站将与相应的Facebook应用程序紧密相连。我希望所有人都可以免费查看内容,但只有注册用户才能编辑它(实际上与serverfault非常相似)。
因为我认为我的大多数用户都会登录到 facebook,所以我真的很想使用他们的 facebook 凭据登录到我的网站 - 与 Open-Id 注册在这里的工作方式相同。
这可以做到吗?
谢谢,
乌迪·帕斯蒙
soap - 在 salesforce.com 中,您可以拥有多值属性吗?
我正在为 Salesforce.com 开发 Novell Identity Manager 驱动程序,并试图更好地了解 Salesforce.com 平台。
迄今为止,我取得了非常好的成功。我可以从 SFDC 中读取几乎任意对象类,并为它们创建 eDirectory 对象,等等。这一切都已完成并且运行良好。(发布者频道)。一旦我把 Query 事件映射出来,几乎所有东西都开始在 Publisher Channel 中工作。
我现在正致力于在 eDirectory 中发生更改时将事件发送回 SFDC(订阅者通道)。
我在 SOAP API 中使用 upsert() 函数,并且使用 Novell Identity Manager,您基本上可以构建 SOAP 文档,并且可以在构建它时看到结果。(您可以在 XSLT 中执行此操作,或者您可以使用各种允许的令牌在 DirXML 脚本中构建文档。我正在使用到目前为止运行良好的 DirXML 脚本。)。
该评论的结果是我可以构建 SOAP 文档,查看它,以确保我做对了。这通常不同于示例代码通常提供的 Java/C++ 方法。这种方式更直观。
关于 upsert() 有几件事我不完全理解。我知道如何清空一个值,我应该得到那种事件。在<urn:sObjects>
节点内部,添加一个类似的节点(假设您已经声明了命名空间):
<urn1:fieldsToNull>FieldName</urn1:fieldsToNull>
我知道如何向属性(FieldName)添加一个值(AttrValue),添加一个节点,如:
<FieldName>AttrValue</FieldName>
所有这些都有效并且非常简单。
我的问题是,SFDC 中的值可以是多值的吗?在 eDirectory 中,多值属性的更改可以通过两种方式发生:
- 可以删除所有值,并重新添加新集合。
- 删除的单个值可以作为那种事件(删除值)发送,也可以在一次操作中删除多个值。
查看 SFDC,我只看到似乎存储在单个条目中的多选项列表属性:或;划定的。在 SFDC 中是否有另一种以不同方式管理的多值属性?如果是这样,人们将如何通过 SOAP API 操作它?
我仍然需要决定是否要将这些多选项列表映射到单个字符串或字符串的多值属性。第一种方法更简单,第二种方法更有用......嗯......选择......
一些参考资料:
- 我一直在使用示例 SOAP 消息页面来了解文档的外观。
- Apex Explorer是一个用于浏览数据库和测试查询的踢球工具。就像DBVisualizer对 JDBC 连接的数据库所做的一样。如果没有它,这将变得更加困难!
- SoapUi也是必需的,而且是一个可爱的工具!
saas - SaaS 提供商的 IdP/STS,SaaS 客户在哪里进行自己的用户管理?
(这个问题不是关于编程,而是关于如何避免进行任何编程。此外,这里有很多术语——我假设有答案的人已经知道它们的意思。)
背景:我正在使用“联合身份”的环境中进行单点登录。我们有几种支持联合的产品(使用例如 WS-Federation 或 SAML 协议,使用例如 .NET 上的 WIF 和 Java 上的 Fedlet 实现),并且它们使用 SaaS 模型提供给客户。其中许多客户没有自己的用户名/密码存储,因此他们不会自己运行“身份提供商”。
问:有没有这样的产品
可以安装在 SaaS 提供商处;
扮演 SaaS 提供的应用程序的 IdP/STS(即联合环境中的身份提供者)的角色;
拥有自己的用户名/密码存储,分别针对每个 SaaS 客户(“租户”);
允许 SaaS 客户进行自己的用户管理,而无需 SaaS 提供商的帮助。
(我们可以自己构建它,例如,作为带有用户管理屏幕的 WIF 之上的自定义 STS,但我们正在努力避免这种情况。这并不是我们真正的核心业务。)
java - IdentityManager 接缝问题
我对 IdentityManager 和接缝有疑问。我解释我的问题:
在我的应用程序中,我有一个向角色添加权限的页面。保存方法在这里:
使用这种方法一切正常。权限被添加到数据库中。
但是在获得保存权限后,应用程序会将用户重定向到一个列出具有权限的角色的页面中。
在此页面中,新权限不会出现。研究问题后,似乎 identityManager 没有从数据库加载权限。
所以我的问题是:
如何刷新 identityManager 以强制它刷新数据?
谢谢。
security - 身份管理
我听到了很多关于身份管理和提供 IDm 的框架的信息。但它到底是什么?与 PKI 相比有什么区别?为什么提供 IDM 解决方案的公司有这么大的优势?最后,几乎每个人都知道加密可能会提供这样的解决方案吗?
active-directory - Active Directory 密码同步代理的 Identity Manager 用户密码到期
Active Directory 密码同步代理是 IBM tivoli 提供的一个工具,用于将密码与与 Tivoli Identity Manager 应用程序集成的企业应用程序同步。该代理程序将安装在 Infrastructure 中的所有域控制器上。每当用户或管理员更改密码时,此模块都会捕获明文密码并将其发送到 tivoli 身份管理器平台。对于此 Active Directory 密码,同步代理程序使用 ITIM(IBM tivoli 身份管理器)用户及其凭证将密码传播到 ITIM。并且 ITIM 将有密码规则,即密码将在一定天数内过期。此 AD 代理的 ITIM 用户也必须在过期时更改。
在测试系统中,我们只需更改 ITIM 中用户的密码并使用新密码配置 AD 密码代理即可。
在生产系统中,有没有办法将此密码更改传播到所有 Active Directory 域?如何处理这种情况?
java - Seam - IdentityManager.isUserEnabled() 的问题
我有一个 JBoss Seam 应用程序,它利用 SeamIdentityManager
和JpaIdentityStore
组件来处理用户帐户创建和身份验证。我的components.xml
文件设置正确,我可以IdentityManager
毫无问题地用于创建帐户。
我创建了一个页面来允许我执行基本的帐户维护,例如启用/禁用帐户。但是,每当我调用isUserEnabled(String username)
on 方法时IdentityManager
,它总是返回 false。中的相应方法JpaIdentityStore
也返回 false。即使我可以看到这些帐户已在数据库中启用,两者都会发生。我的用户帐户类注释如下:
我对课程的任何其他方面(更改密码、创建/删除帐户等)都没有任何问题IdentityManager
。我遇到的唯一错误是当我尝试确定用户是否启用时。我没有收到任何异常或错误消息,只是返回了错误的结果。
有人遇到过这种情况么?知道如何最好地开始解决此问题吗?
编辑:一些附加信息...
我注意到,当我调用 时disableUser(String username)
,我确实看到数据库在 ENABLED 列中反映了这一点。此外,当我打电话时enableUser(String username)
,我立即看到该帐户已启用。但是,如果我导航到另一个页面然后返回并调用isUserEnabled()
,它仍然显示为 false。
oracle - 如何使用 oim 11g 客户端 api 以编程方式获取供应资源
我正在使用 oracle OIM 11g api(在包 oracle.iam 中)。我使用类 oracle.iam.platform.OIMClient 来获取所有 OIM 客户端服务,例如 UserManager。
我需要找到通过配置工作流获得的资源。我可以使用哪种服务?如何使用 OIM api?
asp.net - 使用 Microsoft Azure 构建身份管理系统
我正在寻找使用 Microsoft azure 和 .net 构建具有基于角色的访问控制的身份管理系统。
我只是想知道是否有人可以提供一些关于它的指示。我想设置身份验证,并根据用户角色(例如管理员)进行访问控制。
任何帮助,将不胜感激。