Browser Client Backend - #436
Conversation
pascal-fischer
commented
Oct 1, 2025
There was a problem hiding this comment.
Pull Request Overview
This PR adds documentation for the backend architecture of the Browser Client, specifically detailing how the NetBird management server supports browser client functionality through temporary resources.
- Adds documentation for temporary peer registration and lifecycle management
- Documents temporary policy creation for browser client access control
- Includes visual references to management server UI elements for temporary resources
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| </p> | ||
|
|
||
| #### Temporary Policy | ||
| To allow the registered WebAssembly NetBird Client to connect to the target peer, a temporary policy will be created. The temporary policy will allow access to the target peer on ports 22 (SSH), 3389 (RDP), or 44338 (NetBird SSH server). |
There was a problem hiding this comment.
The port 44338 is described as 'NetBird SSH server' but this may be confusing since port 22 is already mentioned for SSH. Consider clarifying what service runs on port 44338 or if this refers to a specific NetBird SSH proxy service.
| To allow the registered WebAssembly NetBird Client to connect to the target peer, a temporary policy will be created. The temporary policy will allow access to the target peer on ports 22 (SSH), 3389 (RDP), or 44338 (NetBird SSH server). | |
| To allow the registered WebAssembly NetBird Client to connect to the target peer, a temporary policy will be created. The temporary policy will allow access to the target peer on ports 22 (standard SSH), 3389 (RDP), or 44338 (NetBird embedded SSH server for browser client access). |
| #### Temporary Policy | ||
| To allow the registered WebAssembly NetBird Client to connect to the target peer, a temporary policy will be created. The temporary policy will allow access to the target peer on ports 22 (SSH), 3389 (RDP), or 44338 (NetBird SSH server). | ||
| The policy will be created P2P with no groups required. This way the client will only connect to one other peer. Once either of the peers (source or destination) is removed, the temporary policy will be automatically removed from the management server. | ||
| The policies for the WebAssembly NetBird Client will be named as `Temporary access policy for peer *` (e.g. `Temporary access policy for peer safari-17-browser-client`). |
There was a problem hiding this comment.
[nitpick] The asterisk (*) in the policy naming pattern could be clearer. Consider using a more explicit placeholder like {peer-name} or <peer-name> to make it obvious that this represents the actual peer name.
| The policies for the WebAssembly NetBird Client will be named as `Temporary access policy for peer *` (e.g. `Temporary access policy for peer safari-17-browser-client`). | |
| The policies for the WebAssembly NetBird Client will be named as `Temporary access policy for peer {peer-name}` (e.g. `Temporary access policy for peer safari-17-browser-client`). |