Search Results for

    Show / Hide Table of Contents

    Class BeforeSslAuthenticateEventArgs

    This is used in transparent endpoint before authenticating client.

    Inheritance
    object
    EventArgs
    ProxyEventArgsBase
    BeforeSslAuthenticateEventArgs
    Inherited Members
    ProxyEventArgsBase.ClientUserData
    EventArgs.Empty
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Titanium.Web.Proxy.EventArguments
    Assembly: Titanium.Web.Proxy.dll
    Syntax
    public class BeforeSslAuthenticateEventArgs : ProxyEventArgsBase

    Properties

    | Edit this page View Source

    AllowHttpProtocolTranslation

    Whether the proxy may bridge a mismatch between the client's negotiated HTTP version and the origin's HTTP version implied by UpstreamHttpProtocol. Defaults to false, in which case Http11 instead simply never offers "h2" to the client (so no mismatch, and no translation, is ever needed) and Http2 fails the connection outright if the client does not also support HTTP/2.

    Declaration
    public bool AllowHttpProtocolTranslation { get; set; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    DecryptSsl

    Should we decrypt the SSL request? If true we decrypt with fake certificate. If false we relay the connection to the hostname mentioned in SniHostname.

    Declaration
    public bool DecryptSsl { get; set; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    ForwardHttpsHostName

    Hostname used as the TCP/TLS forward target for this transparent connection. Defaults to the SNI hostname from the SSL handshake when available; otherwise the GenericCertificateName of the transparent endpoint. Used whether or not DecryptSsl is true. When decrypting, you may still need to adjust the HTTP request identity (for example e.HttpClient.Request.Url) in BeforeRequest.

    Declaration
    public string ForwardHttpsHostName { get; set; }
    Property Value
    Type Description
    string
    | Edit this page View Source

    ForwardHttpsPort

    Port used as the TCP/TLS forward target for this transparent connection. Defaults to the standard HTTPS port, 443. Used whether or not DecryptSsl is true. When decrypting, you may still need to adjust the HTTP request identity in BeforeRequest.

    Declaration
    public int ForwardHttpsPort { get; set; }
    Property Value
    Type Description
    int
    | Edit this page View Source

    SniHostName

    The server name indication hostname if available. Otherwise the GenericCertificateName property of TransparentEndPoint.

    Declaration
    public string SniHostName { get; }
    Property Value
    Type Description
    string
    | Edit this page View Source

    UpstreamHttpProtocol

    Controls which HTTP version the proxy uses on its own connection to the origin server for this connection, independent of the HTTP version the client itself negotiates with the proxy. Must be set during BeforeSslAuthenticate - it is read before the client TLS handshake, and the client's own ALPN offer/negotiation cannot change afterward. See UpstreamHttpProtocol.

    Declaration
    public UpstreamHttpProtocol UpstreamHttpProtocol { get; set; }
    Property Value
    Type Description
    UpstreamHttpProtocol
    Exceptions
    Type Condition
    ArgumentOutOfRangeException

    The value is not a defined UpstreamHttpProtocol member.

    Methods

    | Edit this page View Source

    TerminateSession()

    Terminate the request abruptly by closing client/server connections.

    Declaration
    public void TerminateSession()
    • Edit this page
    • View Source
    In this article
    Back to top Generated by DocFX