Silverlight 我在ClientCredentials中设置了用户名和密码,但登录窗口仍然会弹出。为什么?

Silverlight 我在ClientCredentials中设置了用户名和密码,但登录窗口仍然会弹出。为什么?,silverlight,silverlight-3.0,Silverlight,Silverlight 3.0,我有一个WCF服务,设置为通过https使用基本身份验证,如下所示: <basicHttpBinding> <binding name="secureTransport"> <security mode ="Transport"> <transport clientCredentialType="Basic"/> </security> </binding> &

我有一个WCF服务,设置为通过https使用基本身份验证,如下所示:

  <basicHttpBinding>
    <binding name="secureTransport">
      <security mode ="Transport">
        <transport clientCredentialType="Basic"/>
      </security>
    </binding>
  </basicHttpBinding>
控制台应用程序的客户端安全配置为

        <security mode="Transport">
        <transport clientCredentialType="Basic" proxyCredentialType="None" realm="" />
        <message clientCredentialType="UserName" algorithmSuite="Default" />
        </security>
                <security mode="Transport" />

SL3应用程序的客户端安全配置为

        <security mode="Transport">
        <transport clientCredentialType="Basic" proxyCredentialType="None" realm="" />
        <message clientCredentialType="UserName" algorithmSuite="Default" />
        </security>
                <security mode="Transport" />

我也尝试过“TransportWithMessageCredential”,但有同样的问题


我做错了什么?谢谢。

我恐怕要说Silverlight 3不支持HTTP基本身份验证(我知道这很烦人)。身份验证的最佳选择是使用asp.net成员资格提供程序并检查WCF服务中的身份验证,或者将用户名和密码作为参数传递到服务中


HTH

这个MIX09演示似乎表明它确实:。不幸的是,演示者实际上并没有做那个演示。它也是SL3中的一项新功能。我弄错了吗?谢谢,恐怕不行。正如我所提到的,SL3提供的唯一身份验证是通过cookie进行的基于表单的身份验证。我想他们计划把它包括进去,但它被削减了,看起来确实有效。唯一的问题是它会弹出登录窗口,询问凭据,我在调用之前已经在代码中设置了凭据。如果我输入相同的凭据,它就会工作。我想知道如何摆脱弹出对话框。我不确定你对工作的定义,但从你的描述来看,肯定不是。弹出窗口出现在您的浏览器中,因为该呼叫未通过简单的身份验证。如果你确信它有效……那么祝你好运,你会需要它的。