Skip to content

feat(server): add PreSecured transport mode for pre-encrypted connections#1210

Closed
Greg Lamberson (glamberson) wants to merge 1 commit intoDevolutions:masterfrom
lamco-admin:feat/server-presecured-transport
Closed

feat(server): add PreSecured transport mode for pre-encrypted connections#1210
Greg Lamberson (glamberson) wants to merge 1 commit intoDevolutions:masterfrom
lamco-admin:feat/server-presecured-transport

Conversation

@glamberson
Copy link
Copy Markdown
Contributor

Add RdpServerSecurity::PreSecured for deployments where the transport is already secured (TLS WebSocket proxy, SSH tunnel, vsock, etc.).

PreSecured advertises PROTOCOL_SSL during X.224 negotiation so the client sees Enhanced RDP Security, but skips the TLS handshake since the underlying stream is already encrypted. The GCC Server Security Data contains ENCRYPTION_LEVEL_NONE, which is the correct response under Enhanced RDP Security per MS-RDPBCGR Section 5.4.1.

This is spec-conformant unlike RdpServerSecurity::None, which advertises PROTOCOL_RDP (Standard RDP Security) with zero encryption, a combination normatively prohibited by Section 5.3.2.

Adds with_pre_secured() to the builder API alongside the existing with_no_security(), with_tls(), and with_hybrid() methods.

Context: discussion on #1201 about the right way to handle pre-secured transports in IronRDP.

…ions

Add RdpServerSecurity::PreSecured for deployments where the transport
is already secured (TLS WebSocket proxy, SSH tunnel, vsock, etc.).

PreSecured advertises PROTOCOL_SSL during X.224 negotiation so the
client sees Enhanced RDP Security, but skips the TLS handshake since
the underlying stream is already encrypted. The GCC Server Security
Data contains ENCRYPTION_LEVEL_NONE, which is the correct response
under Enhanced RDP Security per MS-RDPBCGR Section 5.4.1.

This is spec-conformant unlike RdpServerSecurity::None, which
advertises PROTOCOL_RDP (Standard RDP Security) with zero encryption
-- a combination normatively prohibited by Section 5.3.2.
@glamberson
Copy link
Copy Markdown
Contributor Author

Per discussion on #1201 , this isn't a workable or correct solution at all. Closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants