gpt4 book ai didi

web-services - Web服务授权最佳实践

转载 作者:行者123 更新时间:2023-12-04 05:09:48 27 4
gpt4 key购买 nike

我正在创建一个链接到我正在创建的 Web 服务的网页。

现在网页很容易。我可以创建一个 session 来存储登录信息,这些登录信息通过我对 web 服务的 jquery url 调用传递给 web 服务。

但是,如果它在不同域上的不同网站访问我的 web 服务(通过 javascript ajax 进行客户端访问),该怎么办?
它会调用我的 webservice/login?userid=&password= 来返回 sessionID
那么该网站必须记住 sessionID 并将其包含在每次通话中?
例如:order/outbound/create?address=&item=&companyName=&sessionID=435hg34kh

?

我很感激我在这个话题上能得到的任何帮助。

并不是说这真的与上述问题有任何关系(我认为)我正在用 php 编写 web 服务。

最佳答案

使用 Web 服务进行身份验证取决于 HTTP/Soap 协议(protocol),或者在服务契约(Contract)中(通常使用 token )。

基于第一次调用检索 ID 然后交换 session ID 的解决方案是客户端调用的好方法(无法访问 HTTP/Soap 协议(protocol),只有服务参数,在这种情况下,您通常使用基于的轻型 Web 服务休息)。

业务端调用也可能依赖于基本身份验证或 WS-Security。 Ebay 正在将您的方法用于其 Web 服务,这些服务通常从业务应用程序(而不是直接客户端浏览器)调用。

一个后果是服务器和客户端需要有效地维护 session token 。您最终需要一个注销用户的失效服务(防止登录 token 被重复使用)。

记录了跨域 Javascript HTTP 调用的基本方法 here

关于web-services - Web服务授权最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5673246/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com