Redian新闻
>
Web Service的Basic Anthentication是怎么一回事?
avatar
Web Service的Basic Anthentication是怎么一回事?# Programming - 葵花宝典
s*y
1
我要访问一个有安全认证的Web Service,他们提供了SOAP和WSDL,我在SoapUI里,输
入了username和password,能得到响应,他们说Web Service用的是Basic的认证。那么
username和password是怎么传输的?是http://xxx/xxxService?userId=&password=这样?还是存在SOAP报文里?
还有在我用wsimport生成的客户端代码里怎么处理username和password?我在哪里输入
username和password?
avatar
l*n
2
这个简单吧,就是弹出个dialog,要求输入用户名,密码
avatar
s*y
3

用网页直接访问是这样,在SoapUI里也有地方输入密码和用户名,但是在wsimport生成
的客户端的代码里怎么处理username和password?

【在 l**********n 的大作中提到】
: 这个简单吧,就是弹出个dialog,要求输入用户名,密码
avatar
l*n
4
add a header

【在 s****y 的大作中提到】
:
: 用网页直接访问是这样,在SoapUI里也有地方输入密码和用户名,但是在wsimport生成
: 的客户端的代码里怎么处理username和password?

avatar
c*e
5
rt

【在 l**********n 的大作中提到】
: add a header
avatar
s*y
6

是给Http加个header,然后写入username=XXX password=XXX?

【在 l**********n 的大作中提到】
: add a header
avatar
g*g
7
If you are using SOAP, you should use a web service client, and it should
have examples.
I don't think username/password should be passed in header.

【在 s****y 的大作中提到】
:
: 是给Http加个header,然后写入username=XXX password=XXX?

avatar
c*e
8
en,而且,c#,java的soap的写法也不同。找个例子,改改就成你的了。

【在 g*****g 的大作中提到】
: If you are using SOAP, you should use a web service client, and it should
: have examples.
: I don't think username/password should be passed in header.

avatar
l*t
9
Http标准定义的。查一下就标准就知道了。
avatar
a*y
10
正确。
HTTP Basic Authentication 在 SOAP Authentication 之前。如果你通不过认证,你
看不见SOAP Endpoint.这是一种常见的保护 Web Service 的方式。

【在 s****y 的大作中提到】
:
: 是给Http加个header,然后写入username=XXX password=XXX?

avatar
a*i
11
这个是挺标准的OAuth2吧
用token啊

【在 s****y 的大作中提到】
: 我要访问一个有安全认证的Web Service,他们提供了SOAP和WSDL,我在SoapUI里,输
: 入了username和password,能得到响应,他们说Web Service用的是Basic的认证。那么
: username和password是怎么传输的?是http://xxx/xxxService?userId=&password=这样?还是存在SOAP报文里?
: 还有在我用wsimport生成的客户端代码里怎么处理username和password?我在哪里输入
: username和password?

avatar
a*i
13
哦,没看清题,以为是要选一个技术来实现
不过我的意思是说web service 是用token而不是username/password来做security
从wiki来看,Basic也是在头里发个 Authorization: Basic aHR0cHdhdGNoOmY=
用户名和密码用来拿token,拿到以后就不需要了,是这样吧?

【在 a9 的大作中提到】
: 这怎么会是oauth2。
: http://lmgtfy.com/?q=http+basic+authentication
:
: ,输
: 那么
: 输入

avatar
g*g
14
authenticated之后会发个session cookie.

【在 a****i 的大作中提到】
: 哦,没看清题,以为是要选一个技术来实现
: 不过我的意思是说web service 是用token而不是username/password来做security
: 从wiki来看,Basic也是在头里发个 Authorization: Basic aHR0cHdhdGNoOmY=
: 用户名和密码用来拿token,拿到以后就不需要了,是这样吧?

avatar
o*r
15
Add header to call (i.e. in jQuery):
$.ajax({url : ,
type : 'get',
contentType : 'application/json',
dataType : 'json',
cache : false,
headers : {'Authorization' : "Basic cmVtb3RlMTpyZW1vdGUx"}};
'cmVtb3RlMTpyZW1vdGUx' is a base64-encoded string. The plain text is <
username>:
avatar
f*t
16
Right. This is http standard header.
If using oauth the header becomes Authorization: Bearer {access_token}

【在 a****i 的大作中提到】
: 哦,没看清题,以为是要选一个技术来实现
: 不过我的意思是说web service 是用token而不是username/password来做security
: 从wiki来看,Basic也是在头里发个 Authorization: Basic aHR0cHdhdGNoOmY=
: 用户名和密码用来拿token,拿到以后就不需要了,是这样吧?

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。