Class HostnameConfiguration


  • public final class HostnameConfiguration
    extends Object
    Custom hostname configuration.
    • Constructor Detail

      • HostnameConfiguration

        public HostnameConfiguration()
    • Method Detail

      • type

        public HostnameType type()
        Get the type property: Hostname type.
        Returns:
        the type value.
      • withType

        public HostnameConfiguration withType​(HostnameType type)
        Set the type property: Hostname type.
        Parameters:
        type - the type value to set.
        Returns:
        the HostnameConfiguration object itself.
      • hostname

        public String hostname()
        Get the hostname property: Hostname to configure on the Api Management service.
        Returns:
        the hostname value.
      • withHostname

        public HostnameConfiguration withHostname​(String hostname)
        Set the hostname property: Hostname to configure on the Api Management service.
        Parameters:
        hostname - the hostname value to set.
        Returns:
        the HostnameConfiguration object itself.
      • keyVaultId

        public String keyVaultId()
        Get the keyVaultId property: Url to the KeyVault Secret containing the Ssl Certificate. If absolute Url containing version is provided, auto-update of ssl certificate will not work. This requires Api Management service to be configured with aka.ms/apimmsi. The secret should be of type *application/x-pkcs12*.
        Returns:
        the keyVaultId value.
      • withKeyVaultId

        public HostnameConfiguration withKeyVaultId​(String keyVaultId)
        Set the keyVaultId property: Url to the KeyVault Secret containing the Ssl Certificate. If absolute Url containing version is provided, auto-update of ssl certificate will not work. This requires Api Management service to be configured with aka.ms/apimmsi. The secret should be of type *application/x-pkcs12*.
        Parameters:
        keyVaultId - the keyVaultId value to set.
        Returns:
        the HostnameConfiguration object itself.
      • identityClientId

        public String identityClientId()
        Get the identityClientId property: System or User Assigned Managed identity clientId as generated by Azure AD, which has GET access to the keyVault containing the SSL certificate.
        Returns:
        the identityClientId value.
      • withIdentityClientId

        public HostnameConfiguration withIdentityClientId​(String identityClientId)
        Set the identityClientId property: System or User Assigned Managed identity clientId as generated by Azure AD, which has GET access to the keyVault containing the SSL certificate.
        Parameters:
        identityClientId - the identityClientId value to set.
        Returns:
        the HostnameConfiguration object itself.
      • encodedCertificate

        public String encodedCertificate()
        Get the encodedCertificate property: Base64 Encoded certificate.
        Returns:
        the encodedCertificate value.
      • withEncodedCertificate

        public HostnameConfiguration withEncodedCertificate​(String encodedCertificate)
        Set the encodedCertificate property: Base64 Encoded certificate.
        Parameters:
        encodedCertificate - the encodedCertificate value to set.
        Returns:
        the HostnameConfiguration object itself.
      • certificatePassword

        public String certificatePassword()
        Get the certificatePassword property: Certificate Password.
        Returns:
        the certificatePassword value.
      • withCertificatePassword

        public HostnameConfiguration withCertificatePassword​(String certificatePassword)
        Set the certificatePassword property: Certificate Password.
        Parameters:
        certificatePassword - the certificatePassword value to set.
        Returns:
        the HostnameConfiguration object itself.
      • defaultSslBinding

        public Boolean defaultSslBinding()
        Get the defaultSslBinding property: Specify true to setup the certificate associated with this Hostname as the Default SSL Certificate. If a client does not send the SNI header, then this will be the certificate that will be challenged. The property is useful if a service has multiple custom hostname enabled and it needs to decide on the default ssl certificate. The setting only applied to Proxy Hostname Type.
        Returns:
        the defaultSslBinding value.
      • withDefaultSslBinding

        public HostnameConfiguration withDefaultSslBinding​(Boolean defaultSslBinding)
        Set the defaultSslBinding property: Specify true to setup the certificate associated with this Hostname as the Default SSL Certificate. If a client does not send the SNI header, then this will be the certificate that will be challenged. The property is useful if a service has multiple custom hostname enabled and it needs to decide on the default ssl certificate. The setting only applied to Proxy Hostname Type.
        Parameters:
        defaultSslBinding - the defaultSslBinding value to set.
        Returns:
        the HostnameConfiguration object itself.
      • negotiateClientCertificate

        public Boolean negotiateClientCertificate()
        Get the negotiateClientCertificate property: Specify true to always negotiate client certificate on the hostname. Default Value is false.
        Returns:
        the negotiateClientCertificate value.
      • withNegotiateClientCertificate

        public HostnameConfiguration withNegotiateClientCertificate​(Boolean negotiateClientCertificate)
        Set the negotiateClientCertificate property: Specify true to always negotiate client certificate on the hostname. Default Value is false.
        Parameters:
        negotiateClientCertificate - the negotiateClientCertificate value to set.
        Returns:
        the HostnameConfiguration object itself.
      • certificate

        public CertificateInformation certificate()
        Get the certificate property: Certificate information.
        Returns:
        the certificate value.
      • withCertificate

        public HostnameConfiguration withCertificate​(CertificateInformation certificate)
        Set the certificate property: Certificate information.
        Parameters:
        certificate - the certificate value to set.
        Returns:
        the HostnameConfiguration object itself.
      • certificateSource

        public CertificateSource certificateSource()
        Get the certificateSource property: Certificate Source.
        Returns:
        the certificateSource value.
      • withCertificateSource

        public HostnameConfiguration withCertificateSource​(CertificateSource certificateSource)
        Set the certificateSource property: Certificate Source.
        Parameters:
        certificateSource - the certificateSource value to set.
        Returns:
        the HostnameConfiguration object itself.
      • certificateStatus

        public CertificateStatus certificateStatus()
        Get the certificateStatus property: Certificate Status.
        Returns:
        the certificateStatus value.
      • withCertificateStatus

        public HostnameConfiguration withCertificateStatus​(CertificateStatus certificateStatus)
        Set the certificateStatus property: Certificate Status.
        Parameters:
        certificateStatus - the certificateStatus value to set.
        Returns:
        the HostnameConfiguration object itself.
      • validate

        public void validate()
        Validates the instance.
        Throws:
        IllegalArgumentException - thrown if the instance is not valid.