与人融为一体软
我想远程查询 peoplesoft 并获取一些与用户凭据匹配的数据。 有没有办法以编程方式执行此操作? 我可以使用 python 来做吗?如果没有,我需要哪种语言或技术?
提前致谢。
I want to remotely query peoplesoft and fetch some data given user's credentials match.
Is there a way to do this programatically?
can I do it using python? If not, which language or tech would I need?
Thanks in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
如果您可以联系 peoplesoft 管理员,他们也许能够提供一个 Web 服务,您可以使用 python 访问该服务。
如果没有,您可以使用 urllib 通过 python 访问 peoplesoft 门户网站,然后解析 html(如果您需要的数据位于页面中)。
If you can contact the peoplesoft admins, they might be able to provide a webservice which you could then access with python.
If not, you could access the peoplesoft web portal with python using urllib and then parse the html (if the data you need is in a page).
从纯粹的技术角度来看,PeopleSoft 很好地支持 Web 服务,并且可以通过这种方式公开数据。它还由数据库(通常是 Oracle 或 SQL Server)作为后端,可以直接连接到该数据库。假设您正在与 PS 开发人员合作,那么 Web 服务将是最佳途径。
如果你没有其他选择,你可以屏幕抓取它。显然,这将是最坏的情况。
From a purely technical standpoint, PeopleSoft supports web services quite well and could expose the data that way. It's also backended by a database, usually Oracle or SQL Server, which could be potentially attached to directly. Assuming you're working in coordination with a PS developer, web services would be the best route to go.
If you have no other options, you could screen scrape it. Obviously that would be the worst case scenario.
嗯...这取决于您想要实现的目标。
如果您是管理员类型的超级用户,那么到目前为止最简单的事情就是使用 SQL 查询数据库本身。您不需要系统 ID,大多数情况下数据库上的只读 SQL 用户就可以了。我一直使用 Python、mx.ODBC 以及通过浏览 PSRECDEFN 和 PSRECFIELDDB 获得的表结构的良好知识来完成此操作。这是非常灵活和强大的,但需要信任这个人并完全绕过应用程序的业务规则和规则。安全。
如果您想以 PeopleSoft 用户身份登录,那就完全是另一回事了。您必须使用相同的 OPRID、密码和身份验证机制(直接、单点登录或 LDAP)进行身份验证。这会很困难。那么您将没有凭据来查询数据库本身,因为 PeopleSoft 没有每个应用程序用户 1 个数据库用户。
在这种情况下,网络服务选项将是最佳选择。
Well... it depends what you are trying to achieve.
If you are an admin-type superuser, then the easiest thing to do by far is to query the database itself using SQL. You don't need the system id for that, rather a read-only SQL user on the database will do just fine most of time. I do this all the time with Python, mx.ODBC and a good knowledge of the table structure acquired by browsing PSRECDEFN and PSRECFIELDDB. This is very flexible and powerful, but requires trusting this person and totally bypasses the application's business rules & security.
If you want to log in as a PeopleSoft user, that becomes an entirely different kettle of fish. You'd have to authenticate using the same OPRID, password and authentication mechanism (direct, single-signon or ldap). Which would be difficult. Then you would have no credentials to query the database itself as PeopleSoft does not have 1 db user per application user.
In that case, the web service option would be the way to go.