public SecuredCorporateServiceClient CreateClient(Uri endpoint) { var ea = CreateEndpointAddress(endpoint); var securedCorporateServiceClient = new SecuredCorporateServiceClient(ea); securedCorporateServiceClient.Endpoint.Behaviors.Add(new SecurityEndpointBehaviour()); return(securedCorporateServiceClient); }
public void GetBankCertificateIfRequired() { if (CertificateStore.Instance.ServiceCertificate != null) { return; } var client = new SecuredCorporateServiceClient(new EndpointAddress(ServiceProvider.Endpoint)); var technicalAddress = new technicalAddress(); var activationHeader = BuildActivationHeader(); var request = new getBankCertificate(); var response = client.getBankCertificate(ref technicalAddress, ref activationHeader, request); var chain = ReadCertificateChain(response); new CertificateChainValidator(CertificateStore.Instance.TrustedCaCertificates).AssertValid(chain); CertificateStore.Instance.ServiceCertificate = chain[0]; }