If you find yourself trying to route through QuotaGuard from the Azure function App, we wanted to post this sample code as a possible solution.

Copy

var binding = new BasicHttpBinding();

binding.Security.Mode = BasicHttpSecurityMode.Transport;
binding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Certificate;

//Wrap binding custombinding to route request through proxy with credential authentication
var customBinding = new CustomBinding(binding);
var httpElement = customBinding.Elements.Find<HttpTransportBindingElement>();
httpElement.ProxyAddress = new Uri(Environment.GetEnvironmentVariable(ProxyURL));
httpElement.ProxyAuthenticationScheme = AuthenticationSchemes.Basic;
httpElement.UseDefaultWebProxy = false;

using (var webClient = new TransparencyPlatformClient(customBinding, FinalEndpoint)
{
webClient.ClientCredentials.ClientCertificate.Certificate = Certificate;

webClient.ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = X509CertificateValidationMode.PeerOrChainTrust;
var xmlString = XmlString(xml);

webClient.ClientCredentials.UserName.UserName = ProxyUserName;
webClient.ClientCredentials.UserName.Password = ProxyPassword;

webClient.sendMessage(YourMessage);;
}

We hope this helps, as always, any questions, shoot us an email at Support.

QuotaGuard Static IP Blog

Practical notes on routing cloud and AI traffic through Static IPs.

Reliability Engineered for the Modern Cloud

For over a decade, QuotaGuard has provided reliable, high-performance static IP and proxy solutions for cloud environments like Heroku, Kubernetes, and AWS.

Get the fixed identity and security your application needs today.