Skip to content

Commit b6258f2

Browse files
committed
Include thumbrint in connection info
1 parent 6dd3649 commit b6258f2

File tree

3 files changed

+21
-5
lines changed

3 files changed

+21
-5
lines changed

source/Halibut/Transport/Observability/SecureConnectionInfo.cs

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,17 +20,33 @@ public struct SecureConnectionInfo
2020
{
2121
SecureConnectionInfo(
2222
SslProtocols sslProtocols,
23-
ConnectionDirection connectionDirection
23+
ConnectionDirection connectionDirection,
24+
string thumbprint
2425
)
2526
{
2627
SslProtocols = sslProtocols;
2728
ConnectionDirection = connectionDirection;
29+
Thumbprint = thumbprint;
2830
}
2931

3032
public SslProtocols SslProtocols { get; }
3133
public ConnectionDirection ConnectionDirection { get; }
34+
public string Thumbprint { get; }
3235

33-
public static SecureConnectionInfo CreateIncoming(SslProtocols sslProtocols) => new(sslProtocols, ConnectionDirection.Incoming);
34-
public static SecureConnectionInfo CreateOutgoing(SslProtocols sslProtocols) => new(sslProtocols, ConnectionDirection.Outgoing);
36+
public static SecureConnectionInfo CreateIncoming(
37+
SslProtocols sslProtocols,
38+
string thumbprint
39+
)
40+
{
41+
return new SecureConnectionInfo(sslProtocols, ConnectionDirection.Incoming, thumbprint);
42+
}
43+
44+
public static SecureConnectionInfo CreateOutgoing(
45+
SslProtocols sslProtocols,
46+
string thumbprint
47+
)
48+
{
49+
return new(sslProtocols, ConnectionDirection.Outgoing, thumbprint);
50+
}
3551
}
3652
}

source/Halibut/Transport/SecureListener.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -340,7 +340,7 @@ await ssl
340340
{
341341
connectionAuthorizedAndObserved = true;
342342
connectionsObserver.ConnectionAccepted(true);
343-
secureConnectionObserver.SecureConnectionEstablished(SecureConnectionInfo.CreateIncoming(ssl.SslProtocol));
343+
secureConnectionObserver.SecureConnectionEstablished(SecureConnectionInfo.CreateIncoming(ssl.SslProtocol, thumbprint));
344344
tcpClientManager.AddActiveClient(thumbprint, client);
345345
errorEventType = EventType.Error;
346346
await ExchangeMessages(ssl).ConfigureAwait(false);

source/Halibut/Transport/TcpConnectionFactory.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ await ssl.AuthenticateAsClientAsync(
6868
await ssl.FlushAsync(cancellationToken);
6969

7070
log.Write(EventType.Security, "Secure connection established. Server at {0} identified by thumbprint: {1}, using protocol {2}", client.Client.RemoteEndPoint, serviceEndpoint.RemoteThumbprint, ssl.SslProtocol.ToString());
71-
secureConnectionObserver.SecureConnectionEstablished(SecureConnectionInfo.CreateOutgoing(ssl.SslProtocol));
71+
secureConnectionObserver.SecureConnectionEstablished(SecureConnectionInfo.CreateOutgoing(ssl.SslProtocol, serviceEndpoint.RemoteThumbprint ?? "Unknown"));
7272

7373
return new SecureConnection(client, ssl, exchangeProtocolBuilder, halibutTimeoutsAndLimits, log);
7474
}

0 commit comments

Comments
 (0)