Mremoteng: REST interface for mremoteng for better teams connections syncing

Created on 18 Apr 2019  路  3Comments  路  Source: mRemoteNG/mRemoteNG

Expected Behavior

mremoteNG can support a REST interface where we can build and sync connections based off json files and host them on the intranet so that anytime our devops teams builds a new system, in our automation scripts we update the appropriate json files and those systems are automatically pushed to the mremoteng interface of any team members that got their json file updated. In order to achive this correctly, you must remove the username and password from being imported/exported to that json file for security purposes.

Devops: https://www.contoso.com/mremoteng/devops.json
Sysops: https://www.contoso.com/mremoteng/sysops.json
Dev: https://www.contoso.com/mremoteng/dev.json
QA: https://www.contoso.com/mremoteng/QA.json
Negeng:https://www.contoso.com/mremoteng/neteng.json
Sales:https://www.contoso.com/mremoteng/Sales.json

Depending on what team you are depends on which json file you have access to based on Azure/AWS identity management or Windows active directory.

Current Behavior

can only import csv or xml files, not practical in todays automated focused environment.

Possible Solution

Create REST api for mremoteng
Separate username/password credentials from connection import json file
Possibly create API for capturing username/password credentials from Windows AD/Azure/AWS identity management

Context

We want to be able to update connection information in real time when a new system comes online and update the json file on the intranet so that teams automatically have access to these systems after the automation of building them is complete.

Your Environment

Windows 10, Windows Server 2012/2016, RedHat Linux

Not Planned

Most helpful comment

Cant you solve that with a configuration to an SQL database?

Does it have to be json?

All 3 comments

Cant you solve that with a configuration to an SQL database?

Does it have to be json?

Open a SQL database directly to the whole internet isn't really a acceptable option. It's a security nightmare! A common usage scenario is, for example, the home office and not only the work in the internal company network. With an appropriate interface, this scenario could be made possible in a secure context.

You should keep in mind that a REST interface offers more possibilities and flexibility. For example, it is possible to offer different connections with different parameters depending on the logged in user. With REST as frontend you can do everything you want in the backend.

With the implementation it would be good to enable Basic Authentication as an authentication method as well as JSON Web Token (JWT) from the beginning.

Open a SQL database directly to the whole internet isn't really a acceptable option

Nobody told you to. Use VPN, Jump-Host, NAT, Reverse-Proxy for things like this, as it is common practise.

You should keep in mind that a REST interface offers more possibilities and flexibility.

Well, primarily it offers nothing but work. Feel free to submit a PR for this but atm we will focus on fixing the bugs that are already there instead of introducing new ones 馃槢

Was this page helpful?
0 / 5 - 0 ratings

Related issues

MarkoMusa picture MarkoMusa  路  4Comments

agiz10 picture agiz10  路  4Comments

deathrush picture deathrush  路  5Comments

nerddtvg picture nerddtvg  路  3Comments

Taelyn picture Taelyn  路  4Comments