Hello,
I have a requirement where I need to connect my StreamInsight client with client certificates over an SSL channel. With a normal WCF client I would need to configure an endpoint behavior to do this. I cannot figure out how to do
this. Ideally, I would like to add this behavior by config, but I would settle for doing this programmatically. I cannot find anything about either method.
The config I'm trying to apply is:
<system.serviceModel>
<bindings>
<wsHttpBinding>
<binding>
<security mode="Transport">
<transport clientCredentialType="Certificate" />
<message clientCredentialType="Certificate" />
</security>
</binding>
</wsHttpBinding>
</bindings>
<services>
<service name="Microsoft.ComplexEventProcessing.ManagementService.ManagementService">
<endpoint address="https://*****/StreamInsight/****"
binding="wsHttpBinding" contract="Microsoft.ComplexEventProcessing.ManagementService.IManagementService" />
</service>
</services>
</system.serviceModel>
This is my code where I connect to the server (ResolveBinding is a method that grabs the Binding from the app.config).
var endpointAddress = new System.ServiceModel.EndpointAddress(Endpoint);
var binding = ResolveBinding(ConfigurationManager.AppSettings["BindingName"]);
CepServer = Server.Connect(endpointAddress, binding);
I can assign an endpoint address and I can assign a binding, but I don't see a way to customize the client credentials.
Does anyone know how to customize WCF configuration on the client side of a StreamInsight client/server solution?