我们希望允许用户从外部网络访问peoplesoft门户。但是..that访问需要是只读的,而且非常有限。
是否有人在peoplesoft中启用了基于位置的角色。即禁用所有角色并仅启用基于ip地址或web服务器的特定角色?
发布于 2010-06-30 00:11:31
我已经执行了类似于使用DNS条目来确定内部/外部访问的操作。如果用户在家中登录到PeopleSoft,则希望强制所有用户进行自助访问,但如果用户通过VPN登录或在桌面上登录,则为用户提供完全访问权限。这样,高级用户将无法获得完全的安全性,除非他们通过VPN或在工作中进行身份验证。
我们通过自定义USERMAINT组件,为“自助服务”安全性创建了一个新的安全表,添加了自定义的登录PeopleCode,并设置了第二个供外部访问的域名系统条目。
首先,网络管理员设置了两组指向PS web服务器的DNS条目。例如,psoft.company.com是内部DNS,仅设置用于本地网络访问,而selfservice.company.com是可用于全局访问的外部DNS。
接下来,我们定制了USERMAINT组件(用户配置文件)。我们隐藏了delivered选项卡,并将其替换为副本。新页面指向PSUSERROLE的副本。我们这样做是因为我们想使用交付的PSROLEUSER表作为“当前”安全表。如果安全管理员想要更新用户的内部(或日间工作)安全,我们希望长期存储。(这将在下面更有意义)。因此,新的自定义表,比如XXROLEUSER,现在是安全性的主表。
然后,我们为Security Admin添加了记录/页面/组件来定义“自助服务”安全性(XXSSROLES)。此记录/页面仅存储用户从外部登录时的角色名称。这使安全管理员可以针对季节变化更新自助服务安全性,如开放式注册。管理员可以在开放式注册期间添加角色以授予其他访问权限,然后在期限结束时将其删除。
最后,我们创建了一个处理内部/外部安全切换的自定义登录PeopleCode步骤。登录PeopleCode抓取用于登录的URL。该代码解析URL,以查看是否使用DNS条目访问系统。如果DNS条目是"selfservice.company.com",代码将为用户清除PSROLEUSER中的行,并插入XXSSROLES表中的角色。如果DNS条目是"psoft.company.com",代码将清除PSROLEUSER并插入XXROLEUSER表中的角色。
此代码更改将PSROLEUSER转换为事务表。因为工具系统依赖于这个表来实现许多不同的安全功能,所以创建一个副本作为“主表”在用户配置文件组件中使用是很重要的。
如果这是你有兴趣尝试的东西,我很乐意为登录PeopleCode发布一些示例代码。
我将登录PeopleCode函数上传到了GitHub (参见下面的链接)。您可以创建自定义记录来存储PeopleCode,然后将其添加到“登录PeopleCode”页中。如果您需要更多信息,请让我知道。我不能发布整个技术规范,但如果你有问题,我很乐意帮助你。
http://github.com/iversond/PeopleTools-Dynamic-Login
发布于 2009-09-28 14:02:36
Recruiting Solutions使用类似的流程-在创建允许申请者申请职位的外部候选人网关时,会为权限受到严格限制的特定web服务器创建一个'guest‘ID -基本上只有外部申请者的申请对象。
在PS9中,查看安全选项卡下的PeopleTools > Web Profile > Web Profile Configuration。您绝对可以在web服务器级别保护系统。
HTH
发布于 2017-01-19 09:25:22
免责声明:我为公司工作。
虽然来得有点晚,但一个有用的答案是:IntraSee已经为这种情况开发了解决方案。
关键是您需要能够定义规则(位置),然后将这些规则绑定到特定的角色。在登录时评估,根据规则和用户位置撤消或授予角色。它可以使用IP或其他属性来确定角色。
手动完成此操作有一点棘手,因为您需要考虑用户配置文件和相关权限的版本控制。Signon PeopleCode是评估这些规则的最佳场所,因为您可以在每个会话中执行一次,并且您可以访问业务数据来做出相关决策。例如,如果一个人有很大的批准限制,也许他们不能远程批准,但限制很小的人可以。相同的安全访问权限,但根据位置和数据添加或撤销。
根据您的特定情况:您将拥有对这些用户具有只读访问权限的基本角色,然后是一组具有读/写权限的“opt-in”角色。当它们从正确的位置进入时,它们会获得读/写权限。因此,我们只在适当的时候添加额外的访问权限。
https://stackoverflow.com/questions/1462629
复制相似问题