[英]UserName authentication for WCF WebService
我正在做一个绝对的噩梦,试图让它正常工作。 有人可以指出正确的方向或告诉我我哪里出问题了吗?
我创建了一个位于LocalMachine\\My
的证书。
我已经遵循了有关此站点以及其他站点和文档的建议,但是似乎丢失了一些内容,因为我的ASP.NET网站仍可以在无需身份验证的情况下连接到WebService。
总结一下:网站连接到Web服务正常,这表明身份验证不起作用,因为我还没有告诉网站连接到Web服务所需的安全设置。
先感谢您
这是信息:
WebService Host(控制台应用程序)在以下位置使用以下代码
ServiceHost host = new ServiceHost(typeof(MyService));
host.Open();
<services>
<service behaviorConfiguration="MetaDataBehaviour" name="MyService_Provider.MyService">
<clear />
<endpoint address="myService" binding="wsHttpBinding" contract="MyService_Provider.IMyService"
listenUriMode="Explicit" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:8080" />
</baseAddresses>
</host>
</service>
</services>
<system.serviceModel>
<bindings />
<client />
<services>
<service behaviorConfiguration="MyService_Provider.Service1Behavior"
name="MyService_Provider.MyService">
<endpoint address="" binding="wsHttpBinding" contract="MyService_Provider.IMyService">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:8732/Design_Time_Addresses/MyService_Provider/Service1/" />
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="MyService_Provider.Service1Behavior">
<serviceMetadata httpGetEnabled="True"/>
<serviceDebug includeExceptionDetailInFaults="False" />
<serviceCredentials>
<userNameAuthentication userNamePasswordValidationMode="Custom" customUserNamePasswordValidatorType="MyService_Provider.CredentialsValidator,MyService_Provider"/>
<serviceCertificate findValue="mycert" storeLocation="LocalMachine" storeName="My" x509FindType="FindBySubjectName"/>
</serviceCredentials>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
您尚未为服务指定任何安全要求。 看看这个文章,配置服务使用证书的一个例子。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.