A very popular feature request for Royal TS was the ability to save connections to a central repository and allow multiple users to access a shared set of connections. If you are working in a team, chances are that everyone in the team needs access to the same set of servers.
We’ve discussed several approaches to solve the problem. On the very top of the list was, of course, a central SQL server as a repository store. The more we thought about the implications, pros and cons, we realized that a SQL server might not be the best way to implement a feature like this. So we chose a different route – at least for the initial release. We might extend Royal TS to additionally support SQL server as well in the future…
Royal TS V2 solves multi-user access in a simple and elegant way and offers additional advantages you may not be aware of:
- Multiple users can open, access, edit and save a centrally shared document.
- When a user saves a document, it is not overwritten. It is merged (when you configure the document appropriately).
- It’s still safe. Credentials are stored in different (personal and encrypted) documents and connections refer to them by name. So each user just needs another document containing a credential with the very same name as specified in the connection.
- No need for SQL! Since this all works on the file system level, there’s no need to install, maintain, prepare or do anything on a SQL server. Just put the document for your team on a network share where everyone has at least read access.
- Also works with all the cloud based file sync services! Even when you are not working in a team, you may use Royal TS from different computers. Put your document(s) in the cloud using services like Dropbox, SkyDrive, etc. and sync your changes to all your other machines instantly.
- There are no licensing restrictions! This feature works with all Royal TS V2 licenses, even when you use it for free in limited shareware mode. Although, in shareware mode you cannot open multiple files and it’s only allowed to have up to 10 connections per application instance. In this case the credential(s) must be set in the Application document but in general it will work.
The video doesn’t really explain all the technical details on how to setup a shared document but it will show you the general idea and it’s fun to watch! Click the picture above or this link to watch the video.
There’s also a step-by-step guide in the Royal TS V2 help file explaining how to setup a personal credential to use in a shared document.
Pre-requisites to make this work
As mentioned before, no SQL server is necessary and we think this is a huge advantage. Still, you need to be aware of some things before you start building up a shared document:
- You need to define or agree on the credential name(s) which will be used on the shared connection objects. The notes section of the shared document (or of the particular folder) might be a good place to write down the needed credentials.
- Agree on a file location where you put your shared document(s). This might be a network file share where everyone has access to or a shared folder in cloud based sync service (like Dropbox).
Create and prepare the shared document
Click on New on the Home tab to create a new Royal TS document. Enter a meaningful Display Name, optionally provide a Description text and make sure you set the Save Mode to Merge file on save. This will prevent the file from being overwritten when a user saves the document. The file on disk will be synced with the contents you have in memory.
In this example I will use 3 different accounts for my connections to illustrate how this is working:
The credential to access all servers in the LAB domain must be named: code4ward LAB Account
The credential to access all my production servers must be named: code4ward PROD Account
The credential to log on to the code4ward.net homepage must be named: code4ward Web Account
Like I said before, it would be a great idea to put that in the document Notes to instruct new users how to setup their credentials:
That’s all what it takes to create and prepare a document to share it with a team of users. All you need to do is to save it to a location everyone has access to and create your connections. I have saved the document to a shared folder on my network and prepared the folder structure the way I want it to be.
Note: We are not encrypting and password protecting this particular document. Since we aren’t using any usernames or passwords in that document it might not really be necessary to protect the document. Anyway, if you like to password protect (and encrypt) the document, you can do that, of course. If you do that, it requires the user to enter the appropriate password in order to open and access the document.
Create connections in the shared document
First I create a new remote desktop connection for a LAB server:
On the Edit tab, click on Remote Desktop to add a new Remote Desktop connection. Enter aComputer Name (host or IP address), a Display Name and optionally provide a Description. Then change to the Credentials settings page:
Select Specify a credential name from the drop down list and enter the exact name of the credential Royal TS should look for before the connection is established. Attention: the credential name is case sensitive and needs to match exactly the name of the credential we create afterwards!
You may configure other settings of the remote desktop connection as well. I will repeat those steps and create some more lab servers using the same credential configuration.
Then I will create my production servers and configure the remote desktop connections the same way as the lab servers except that I use code4ward PROD Account as credential name.
I will also create a new Web Page connection with Auto Fill for automatic logon. The credential configuration works the same way as for remote desktop connections.
In addition you need to create mappings for your resolved credential to the HTML elements of the web page’s log in form:
So, all connections are created, configured to use a credential (which doesn’t even exist yet) and stored to a central location. If you now want to try to connect to a server or web page now, Royal TS will start the connection but it cannot find the credential with the name specified. Royal TS will just leave the credentials blank. This means that in most cases you need to manually type in username and password.
Create your personal document and the credentials needed for the shared document
Now let’s create my personal and private document where I store my credentials:
Since we are putting usernames and passwords in the document, I strongly recommend to password protect and encrypt the document:
Save your personal document to a private location (your home drive, for example). You can use your personal document(s) to store personal connections and tasks as well but in this case we just create the 3 credentials in order to successfully use the shared document.
One the Edit tab, click on Credential to create a new credential. Make sure you enter the exactsame Display Name as specified in the credential settings from the shared document connections.
I will repeat this step for the other credentials as well: code4ward PROD Account and code4ward Web Account
When you click on one of the credentials, the Dashboard will show you all connections referring to this credential. This is an easy way to verify that you configured the connections and credentials correctly:
After setting up your credentials, connecting to one of the connections will now resolve your credentials. You just need to ensure that the document with your personal credential details is loaded in the same application instance.
All the other users who want to use the same shared document in Royal TS only need to create their own personal document and setup their credentials the same way as explained above. Then, open up both, the shared document and the personal document to automatically log on to systems with your personal credentials.
Here’s a little timesaver
If you have to open multiple documents every time Royal TS starts up (the shared document and your personal document, for example), you can use the Application Start setting in theOptions to specify a list of documents to open automatically when you start Royal TS:
If you use a shared document in a team, you might be interested to get notified as soon as someone in your team changed something in the shared document. Royal TS offers an indicator for that in the status bar:
If you see the little disk icon in the status bar, one or more documents have changed outside your Royal TS instance. Hovering over the icon will show you which documents were changed and double-clicking on it will save and merge the changed documents with your document version.
As you can see, it’s very easy and intuitive to link credentials to connections even from different files and this makes Royal TS a perfect candidate to work in teams without compromising security.
Royal TS offers the best way to work in teams and provides great flexibility to work in most, if not all scenarios. Because Royal TS can now operate in a multi-user environment without the need of SQL database systems or any other 3rd party tools for that matter, it’s one of the easiest and most powerful remote desktop management tool available today.