WCF Web服务权限问题

时间:2014-07-11 20:59:15

标签: .net vb.net web-services wcf

我在visual studio 2012环境中成功运行了一个wcf Web服务,唯一的工作就是将文件从一台服务器复制到另一台服务器。 我的项目包含一个位于PC上的控制台应用程序,它将调用服务器A上的wcf Web服务。执行此wcf服务时,会将文件从服务器B复制到服务器C. 我的问题是我收到一条错误消息,表明webservice没有对服务器B& C。 我查看过这个主题的所有链接,并且整个星期都尝试了不同的东西。

如果控制台应用程序或wcf服务上有任何内容,任何人都可以帮助我所需要的,以确保我拥有服务器B&服务器C? 控制台应用程序上的代码如下所示:wcf服务代码如下:

Imports System.IO
Imports System.Configuration
Imports System.ServiceModel
Imports System.ServiceModel.Channels
Imports System.Text
Imports SysSvcmod = System.ServiceModel.Description

Module Module1

    Sub Main()
        Try
            Dim client As New ServiceReference1.ServiceClient
            Dim clientCredentials As New SysSvcmod.ClientCredentials()
            clientCredentials.UserName.UserName = ConfigurationManager.AppSettings("user").ToString
            clientCredentials.UserName.Password = ConfigurationManager.AppSettings("pswd").ToString
            client.ChannelFactory.Endpoint.Behaviors.RemoveAt(1)
            client.ChannelFactory.Endpoint.Behaviors.Add(clientCredentials)
            Dim returnstring As String
            returnstring = client.movefiles("")
        Catch ex As Exception
            ' MsgBox(ex.Message.ToString)
            LogExceptions("module1", "page_load", ex.Message)
        End Try
    End Sub

wcf服务配置文件

<?xml version="1.0"?>
<configuration>
  <appSettings>
    <add key="ExceptionFiles" value="C:\websites\bcccis\Exceptions\"/>
  </appSettings>
  <system.web>
    <compilation debug="true" strict="false" explicit="true" targetFramework="4.0"/>
    <pages>
      <namespaces>
        <add namespace="System.Runtime.Serialization"/>
        <add namespace="System.ServiceModel"/>
        <add namespace="System.ServiceModel.Web"/>
      </namespaces>
    </pages>
  </system.web>
  <system.serviceModel>
    <bindings>
      <basicHttpBinding>
        <binding name="BasicHttpEndpointBinding">
          <security mode="TransportCredentialOnly">
            <transport clientCredentialType="Windows" />
          </security>
        </binding>
      </basicHttpBinding>
    </bindings>

    <behaviors>
      <serviceBehaviors>
        <behavior>
                        <serviceMetadata httpGetEnabled="true"/>
                        <serviceDebug includeExceptionDetailInFaults="false"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>
  </system.serviceModel>

0 个答案:

没有答案