Skip to content

Commit 81fd4da

Browse files
feat(agent-installer): drop Gateway URL override field from dialog
The dialog's optional "Gateway URL (advanced)" textbox encouraged a deployment pattern the Gateway explicitly doesn't support: pointing the agent at the Gateway via a different host/IP than the canonical externally-reachable `Hostname` configured on the Gateway side. Per the team's design, a Gateway has one canonical hostname (the one its HTTPS cert validates against); multiple agent-facing identities are not supported. Removed: - `AGENT_TUNNEL_GATEWAY_URL` MSI public property (Program.cs, AgentProperties.cs) - `--gateway` argument forwarding in CA.EnrollAgentTunnel (CustomActions.cs) - gatewayUrl textbox + label + hint label from AgentTunnelDialog (.cs + .Designer.cs), reduced TableLayoutPanel RowCount from 14 to 11 - `AgentTunnelDlgGatewayUrlLabel` / `AgentTunnelDlgGatewayUrlHint` localization strings (en-us + fr-fr .wxl) The JWT's `jet_gw_url` claim remains the sole source of truth for the agent's enrollment endpoint and persisted tunnel identity. The CLI `--gateway` flag on `agent.exe up` is still available for dev/operator scenarios as an enrollment-transport override only (identity stays anchored to the JWT host).
1 parent 763cb73 commit 81fd4da

8 files changed

Lines changed: 1 addition & 62 deletions

File tree

package/AgentWindowsManaged/Actions/AgentActions.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -294,7 +294,6 @@ internal static class AgentActions
294294
UsesProperties = string.Join(";", new[]
295295
{
296296
AgentProperties.AgentTunnelEnrollmentString,
297-
AgentProperties.AgentTunnelGatewayUrl,
298297
AgentProperties.AgentTunnelAgentName,
299298
AgentProperties.AgentTunnelAdvertiseSubnets,
300299
AgentProperties.AgentTunnelAdvertiseDomains,

package/AgentWindowsManaged/Actions/CustomActions.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -325,7 +325,6 @@ public static ActionResult EnrollAgentTunnel(Session session)
325325
string enrollmentString = session.Property(AgentProperties.AgentTunnelEnrollmentString)?.Trim() ?? string.Empty;
326326
string subnetsArg = session.Property(AgentProperties.AgentTunnelAdvertiseSubnets)?.Trim() ?? string.Empty;
327327
string domainsArg = session.Property(AgentProperties.AgentTunnelAdvertiseDomains)?.Trim() ?? string.Empty;
328-
string gatewayUrlArg = session.Property(AgentProperties.AgentTunnelGatewayUrl)?.Trim() ?? string.Empty;
329328
string agentNameArg = session.Property(AgentProperties.AgentTunnelAgentName)?.Trim() ?? string.Empty;
330329

331330
ActionResult Fail(string msg)
@@ -361,7 +360,6 @@ ActionResult Fail(string msg)
361360
}
362361

363362
string arguments = $"up --enrollment-string \"{enrollmentString}\"";
364-
if (gatewayUrlArg.Length != 0) arguments += $" --gateway \"{gatewayUrlArg}\"";
365363
if (resolvedName.Length != 0) arguments += $" --name \"{resolvedName}\"";
366364
if (subnetsArg.Length != 0) arguments += $" --advertise-subnets \"{subnetsArg}\"";
367365

package/AgentWindowsManaged/Dialogs/AgentTunnelDialog.Designer.cs

Lines changed: 1 addition & 45 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package/AgentWindowsManaged/Dialogs/AgentTunnelDialog.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ public override bool ToProperties()
2525
Runtime.Session[AgentProperties.AgentTunnelAgentName] = agentName.Text.Trim();
2626
Runtime.Session[AgentProperties.AgentTunnelAdvertiseSubnets] = advertiseSubnets.Text.Trim();
2727
Runtime.Session[AgentProperties.AgentTunnelAdvertiseDomains] = advertiseDomains.Text.Trim();
28-
Runtime.Session[AgentProperties.AgentTunnelGatewayUrl] = gatewayUrl.Text.Trim();
2928

3029
return true;
3130
}
@@ -38,7 +37,6 @@ public override void OnLoad(object sender, EventArgs e)
3837
agentName.Text = Runtime.Session.Property(AgentProperties.AgentTunnelAgentName);
3938
advertiseSubnets.Text = Runtime.Session.Property(AgentProperties.AgentTunnelAdvertiseSubnets);
4039
advertiseDomains.Text = Runtime.Session.Property(AgentProperties.AgentTunnelAdvertiseDomains);
41-
gatewayUrl.Text = Runtime.Session.Property(AgentProperties.AgentTunnelGatewayUrl);
4240

4341
base.OnLoad(sender, e);
4442
}

package/AgentWindowsManaged/Program.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -352,7 +352,6 @@ static void Main()
352352
// Agent tunnel properties: must be declared Secure so the values set in the wizard UI
353353
// survive the UAC boundary and reach the deferred CA via CustomActionData.
354354
projectProperties.Add(new Property(AgentProperties.AgentTunnelEnrollmentString, "") { Hidden = true, Secure = true });
355-
projectProperties.Add(new Property(AgentProperties.AgentTunnelGatewayUrl, "") { Secure = true });
356355
projectProperties.Add(new Property(AgentProperties.AgentTunnelAgentName, "") { Secure = true });
357356
projectProperties.Add(new Property(AgentProperties.AgentTunnelAdvertiseSubnets, "") { Secure = true });
358357
projectProperties.Add(new Property(AgentProperties.AgentTunnelAdvertiseDomains, "") { Secure = true });

package/AgentWindowsManaged/Properties/AgentProperties.cs

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,6 @@ internal partial class AgentProperties
3131
/// </summary>
3232
public static string AgentTunnelAdvertiseDomains = "AGENT_TUNNEL_ADVERTISE_DOMAINS";
3333

34-
/// <summary>
35-
/// Optional gateway URL override. When set, the agent uses this URL instead of the JWT's
36-
/// jet_gw_url claim. Useful when the JWT was minted with a URL that isn't reachable from
37-
/// the agent's network (e.g. DVLS embedded "localhost" but the agent is remote).
38-
/// </summary>
39-
public static string AgentTunnelGatewayUrl = "AGENT_TUNNEL_GATEWAY_URL";
40-
4134
/// <summary>
4235
/// Optional agent display name. Resolution order at install time:
4336
/// dialog value (if non-empty) > JWT's jet_agent_name claim (if present) > local computer name.

package/AgentWindowsManaged/Resources/DevolutionsAgent_en-us.wxl

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,4 @@ If it appears minimized then active it from the taskbar.</String>
6969
<String Id="AgentTunnelDlgDomainsHint">Comma-separated DNS suffixes the agent can resolve, e.g. corp.example.com, lab.example.com. Leave blank to skip.</String>
7070
<String Id="AgentTunnelDlgAgentNameLabel">Agent name (optional):</String>
7171
<String Id="AgentTunnelDlgAgentNameHint">Identifier for this agent. Leave blank to use the name in the JWT, or the local computer name as a final fallback.</String>
72-
<String Id="AgentTunnelDlgGatewayUrlLabel">Gateway URL (advanced, optional):</String>
73-
<String Id="AgentTunnelDlgGatewayUrlHint">Override the URL embedded in the enrollment JWT. Leave blank to use the JWT's value.</String>
7472
</WixLocalization>

package/AgentWindowsManaged/Resources/DevolutionsAgent_fr-fr.wxl

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,6 @@
1414
<String Id="AgentTunnelDlgDomainsHint">Suffixes DNS séparés par des virgules que l'agent peut résoudre, p. ex. corp.example.com, lab.example.com. Laissez vide pour ignorer.</String>
1515
<String Id="AgentTunnelDlgAgentNameLabel">Nom de l'agent (facultatif) :</String>
1616
<String Id="AgentTunnelDlgAgentNameHint">Identifiant de cet agent. Laissez vide pour utiliser le nom inscrit dans le JWT, ou le nom de l'ordinateur local comme dernier recours.</String>
17-
<String Id="AgentTunnelDlgGatewayUrlLabel">URL de la passerelle (avancé, facultatif) :</String>
18-
<String Id="AgentTunnelDlgGatewayUrlHint">Remplace l'URL incluse dans le JWT d'enrôlement. Laissez vide pour utiliser la valeur du JWT.</String>
1917
<String Id="Language">1036</String>
2018
<String Id="ProductDescription">Service à l’échelle du système pour étendre les fonctionnalités de Devolutions Gateway.</String>
2119
<String Id="VendorFullName">Devolutions Inc.</String>

0 commit comments

Comments
 (0)