Gateway Client Installation

The Gateway Client utility can be installed on a system meeting current system requirements for CygNet software installations.

The Gateway Client utility files (GatewayClient.exe and GatewayClient.exe.config) are stored in the CygNet\Utilities directory on the host server.

To Install the Gateway Client

  1. Copy the files GatewayClient.exe and GatewayClient.exe.config to a folder.
  2. Edit the GatewayClient.exe.config file:
  1. For the endpoint nodes, set the address attribute to that of the IP address (or fully qualified domain name) of the machine that is hosting the Enterprise Gateway Service.
  2. For the servicePrincipalName, set the value attribute to that of the server that the requests are being sent from. This must be the fully qualified name of the client computer.
  3. If an Administrator changes the account that the Enterprise Gateway Service runs as from LocalSystem or NetworkService to any other account, clients will need to add the element <userPrincipalName value="domain\username"/> under the <identity> section for each endpoint in the GatewayClient.exe.config that the Gateway Client will be referencing, where "domain\username" refers to the account that the Enterprise Gateway Service will be running as.
  4. Note: There are two nodes for both the Enterprise Gateway and diagnostics. The contract attribute in the endpoint node contains the name of the item. Be sure to configure both of them. If you want the Diagnostics and the Enterprise Operation requests to go to the same CygNet server, set the values of both couplets the same.

 

    Copy
    GatewayClient.exe.config
    <?xml version="1.0"?>
    <configuration>
        <configSections>
        </configSections>
        <system.serviceModel>
            <bindings>
                <basicHttpBinding>
                    <binding name="BasicHttpBinding_EnterpriseGateway" closeTimeout="00:20:00" openTimeout="00:20:00" receiveTimeout="00:20:00" sendTimeout="00:20:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536" messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true">
                        <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
                        <security mode="TransportCredentialOnly">
                            <transport clientCredentialType="Windows" proxyCredentialType="None" realm=""/>
                            <message clientCredentialType="UserName" algorithmSuite="Default"/>
                        </security>
                    </binding>
                    <binding name="BasicHttpBinding_EnterpriseGatewayDiagnostics" closeTimeout="00:20:00" openTimeout="00:20:00" receiveTimeout="00:20:00" sendTimeout="00:20:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536" messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true">
                        <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
                        <security mode="TransportCredentialOnly">
                            <transport clientCredentialType="Windows" proxyCredentialType="None" realm=""/>
                            <message clientCredentialType="UserName" algorithmSuite="Default"/>
                        </security>
                    </binding>
                </basicHttpBinding>
                <wsHttpBinding>
                    <binding name="WSHttpBinding_EnterpriseGateway" closeTimeout="00:20:00" openTimeout="00:20:00" receiveTimeout="00:20:00" sendTimeout="00:20:00" bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="10000000" maxReceivedMessageSize="10000000" messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false">
                        <readerQuotas maxDepth="32" maxStringContentLength="10000000" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
                        <reliableSession ordered="true" inactivityTimeout="00:20:00" enabled="false"/>
                        <security mode="Message">
                            <transport clientCredentialType="Windows" proxyCredentialType="None" realm=""/>
                            <message clientCredentialType="Windows" negotiateServiceCredential="true" algorithmSuite="Default" establishSecurityContext="true"/>
                        </security>
                    </binding>
                    <binding name="WSHttpBinding_EnterpriseGatewayDiagnostics" closeTimeout="00:20:00" openTimeout="00:20:00" receiveTimeout="00:20:00" sendTimeout="00:20:00" bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="10000000" maxReceivedMessageSize="10000000" messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false">
                        <readerQuotas maxDepth="32" maxStringContentLength="10000000" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
                        <reliableSession ordered="true" inactivityTimeout="00:20:00" enabled="false"/>
                        <security mode="Message">
                            <transport clientCredentialType="Windows" proxyCredentialType="None" realm=""/>
                            <message clientCredentialType="Windows" negotiateServiceCredential="true" algorithmSuite="Default" establishSecurityContext="true"/>
                        </security>
                    </binding>
                </wsHttpBinding>
            </bindings>
            <client>
                <endpoint address="https://127.0.0.1/" binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_EnterpriseGateway" contract="EnterpriseGatewayService.EnterpriseGateway" name="WSHttpBinding_EnterpriseGateway">
                    <identity>
                        <servicePrincipalName value="host/fully.qualified.machine.domain.name"/>
                        <!-- If your Gateway service requires network access to file shares and uses a domain login -->
                        <!-- you must specify it here or your request will fail security. -->
                        <!--<userPrincipalName value="domain\servicelogin" />-->
                    </identity>
                </endpoint>
                <endpoint address="https://127.0.0.1/" binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_EnterpriseGatewayDiagnostics" contract="EnterpriseGatewayService.EnterpriseGatewayDiagnostics" name="WSHttpBinding_EnterpriseGatewayDiagnostics">
                    <identity>
                        <servicePrincipalName value="host/fully.qualified.machine.domain.name"/>
                        <!-- If your Gateway service requires network access to file shares and uses a domain login -->
                        <!-- you must specify it here or your request will fail security. -->
                        <!--<userPrincipalName value="domain\servicelogin" />-->
                    </identity>
                </endpoint>
                <!--
                <endpoint address="https://127.0.0.1/EnterpriseGateway" binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_EnterpriseGateway" contract="EnterpriseGatewayService.EnterpriseGateway" name="WSHttpBinding_EnterpriseGateway1">
                    <identity>
                        <servicePrincipalName value="host/fully.qualified.machine.domain.name" />
                        <userPrincipalName value="domain\servicelogin" />
                    </identity>
                </endpoint>
                <endpoint address="https://127.0.0.1/EnterpriseGateway" binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_EnterpriseGatewayDiagnostics" contract="EnterpriseGatewayService.EnterpriseGatewayDiagnostics" name="WSHttpBinding_EnterpriseGatewayDiagnostics1">
                    <identity>
                        <servicePrincipalName value="host/fully.qualified.machine.domain.name" />
                        <userPrincipalName value="domain\servicelogin" />
                    </identity>
                </endpoint>
                <endpoint address="https://127.0.0.1/EnterpriseGatewayBasic" binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_EnterpriseGateway" contract="EnterpriseGatewayService.EnterpriseGateway" name="BasicHttpBinding_EnterpriseGateway" />
                <endpoint address="https://127.0.0.1/EnterpriseGatewayBasic" binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_EnterpriseGatewayDiagnostics" contract="EnterpriseGatewayService.EnterpriseGatewayDiagnostics" name="BasicHttpBinding_EnterpriseGatewayDiagnostics" />
                -->
            </client>
        </system.serviceModel>
    <startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0,Profile=Client"/></startup></configuration>

Back to top