在C#.net项目中添加url到服务引用之后我能够访问服务的不同方法,服务提供者给了我用于身份验证的用户名和密码,但是在访问属性时我没有得到字段/用户名和密码(标题)的属性。所以我的问题是如何验证这样的Web服务?
----------------------------------------代码------ ------------------------------------------------
queryNniNameType obj = new queryNniNameType();
reqtype = new queryNameAvailabilityRequestType();
headerType = new CNR.ServiceReference1.businessDocumentHeaderType();
businessbody = new queryNniNameType();
headerType.messageType = "test";
headerType.messageVersion = 2;
headerType.senderType ="sendertype";
headerType.senderId = "381133334535055664";
businessbody.proposedName = "asdfsf";
reqtype.businessDocumentHeader = headerType;
reqtype.businessDocumentBody = businessbody;
nameAvailabilityResponseType nptype = new nameAvailabilityResponseType();
businessDocumentHeaderType bustype = new businessDocumentHeaderType();
req = new ExternalQueryNameAvailabilityClient();
reply = new queryNameAvailabilityReplyType();
reply.businessDocumentBody = nptype;
reply.businessDocumentHeader = bustype;
那么在哪里传递用户名和密码?
答案 0 :(得分:0)
在WCF服务中会是这样的:
client.ClientCredentials.UserName.UserName = "user";
client.ClientCredentials.UserName.Password = "pass";
并且对于Web服务使用客户端的凭据属性。
答案 1 :(得分:0)
为Web服务和web api提供几乎相同的安全性。 请参阅此answer 几天前我问过并接近了。