Blogging about Royal TS/X, Royal Server and Royal Passwords

Major Version Release

It has been two years since we released the last major versions of our products. In these two years, we were able to integrate a couple of great new features and a lot of smaller enhancements throughout all our products.

New in Royal TS V5 (for Windows) and Royal TSX V4 (for macOS)

User Interface Updates

Let’s start with a feature which is probably most visible to the user: the User Interface. In Royal TS V5 (for Windows) we invested heavily in making the app even better in high DPI scenarios. All the icons are now based on SVG (vector based) images which allows us to render them with the highest quality based on the DPI setting of the system. In addition, we also introduced a couple of default color schemes (nowadays everyone seems to love dark themes). Users can also define and even share their own color schemes individually. Even the colors used in all the icons can be tweaked to ensure best readability and contrast. You can read more about the UI updates for Windows in this blog post.

On the Mac, we not only have macOS Mojave support, we also fully support Mojave’s dark mode. By default, Royal TSX will “follow” your preference from the OS but you can also switch to light or dark mode independently in the Preferences. In this Royal TSX (for macOS) release we also finally added support for splitting tabs and allow resizing the properties dialog.

We also know that our users love to configure their objects with custom icons. That’s why we included the open source VMware Clarity icon library in our custom icon picker.

 

Dynamic Folders and Dynamic Credentials

One thing should be made clear: this is a game changer! Truly a first in the industry!

In a nutshell: you can write a script which populates a folder with connections, credentials, etc. dynamically based on your script output.

You may now ask: why do we (you) need this? Our main motivation came from a massive amount of feature requests about integrating with 3rd party systems like password vaults or PAM solutions or other data sources like Active Directory, AWS or Azure. It’s impossible for us to support and maintain each and every product out there. In addition, each user/company may use these products differently which makes it hard to support them in a way that all scenarios can be covered. But there’s one thing most of these products have in common: they have an API to access the data.

We already have a lot of sample scripts in our Github repository for various systems and we already have a growing community contributing to this repo. One of our users even posted a nice YouTube tutorial on how to make use of dynamic folders.

We support a variety of script interpreters on both platforms. All you need to do is, create a script which generates specific output (our well documented JSON format). With that, you can pull in data from everywhere you have script or API access to, and create your connections, credentials, tasks, subfolders, etc.

 

Remote Desktop Gateway Object

This has been on our todo list for quite a while. With the introduction of Royal Server and our deep Secure Gateway (automatic SSH tunneling) integration, we provided two object types called Royal Server and Secure Gateway. These object types helped you set up your connections and configure them to use the Royal Server or Secure Gateway to connect to.

We now have a similar concept for the Remote Desktop Gateway configuration. Instead of configuring the RD Gateway on each Remote Desktop connection, you can create a Remote Desktop Gateway object in your document and refer to the object from each connection (or even inherit it from its parent folder). This makes management and also credential assignment much easier. On top of that, you can also leverage the “Connect with Options” menu to either use a different Remote Desktop Gateway object or connect directly without the configured RD Gateway object.

 

More new stuff…

Our newest releases of Royal TS and Royal TSX have much more to offer. To learn more about the new features in our apps and plugins, please check out the following pages:

New Features in Royal TS (for Windows)
New Feature in Royal TSX (for macOS)

New in Royal Server V3

Document Store Security

In Royal Server V3 you can now configure which users/groups are allowed to use the document store component. Access rules, read/modify operations and grant/deny permissions for Windows users and groups are now supported.

 

Multi-Factor-Authentication (MFA) Support

You can enforce a second authentication (OTP) when a document is opened from a Royal Server. Our clients will prompt for the OTP (one time password) and only open the document when the code is valid.

 

Secure Gateway

One very popular feature of Royal Server is the Secure Gateway. It allows you to easily tunnel connections using SSH port forwarding through our server without the need of a 3rd party SSH server. So Royal Server is basically your SSH server and our newest release features a new core which is much more robust and secure. In addition, you now can control which encryption algorithms the client should use to tunnel your connections.

 

Dynamic Folder

As mentioned above, this is one of the new key features of our new clients versions. Instead of executing the dynamic folder script locally on the machine where Royal TS/X runs, you can configure the dynamic folder to execute the script on the Royal Server.

 

More new stuff…

A complete list of Royal Server improvements can be found here.

What’s new in Royal Passwords

Our Chrome and Firefox extension also got a couple of noteworthy enhancements:

Improved Security

When you use the browser extension for the first time, Royal TS/X will now ask you if you want to allow access and trust the browser that is querying the data. By default, Royal TS/X will now also check if the browser process that is requesting the data, is actually Google Chrome or Firefox. In case you are using a different browser with the extension you may disable this check in the Preferences/Options under “Browser Extensions”.

 

Web Connections

In the past, our browser extensions only showed credential objects. With this release, we will now also offer web connections from your document(s).

 

Custom Icons

If you assign a custom icon to your credential or web page connection, it will now also be shown in our browser extension.



User Interface Updates in Royal TS V5

A couple of weeks ago we released the beta of Version 5 of Royal TS for Windows. In this blog post we want to introduce a couple of things we changed in the user interface. We are still tweaking and optimizing V5, so there’s a good chance that some of the things might change or look a bit different.

Royal TS UI Color Scheme

1. General User Interface Changes

A “lighter” User Interface

As you can see in the screenshot above, Royal TS V5 now looks a bit “lighter”. If you look at the Navigation panel header, the tab header and even the split-line between the Navigation panel and the Dashboard tab, you will notice thinner lines and a more compact, flatter layout.

SVG Icons

We also made a huge effort to update all the icons we use in the user interface (even those coming from the plugins). All icons are now SVG based which means they are now vector based and not pixel based anymore. Back in V3 and V4 we needed 11 different pixel based images for each icon and use the appropriate size, depending on the DPI setting on Windows. This was already a huge improvement and made look Royal TS’ icons crisp and sharp even if you set your DPI setting to 200% (192 DPI) but it was also very hard to maintain. Every time we had to add a new icon or change an icon, we had to generate all the 11 variants of sizes up to 256×256 pixels.

In V5, all icons are now vector based SVG icons and will be scaled automatically based on the DPI setting. This also means that scaling up your display to 300 or more percent, will be no problem and all the icons will still look great!

There are no more “Skins”

Royal TS V2 up to V4 allowed you to switch to different skins and some skins also had different color schemes. Different skins also meant different styles and a dedicated “look-and-feel” for each skin. There were all sorts of skins available (like Office or Visual Studio inspired skins) but the reality was that depending on the skin we had to tweak a lot of our UI. This was a maintenance nightmare. We decided to drop the skins feature because most of the skins had one major flaw: most skins were pixel based which means that even when our icons look great, the rest of the UI does not. We decided to focus our efforts to the vector based skin and made sure Royal TS is ready to run on the high resolutions screens which are getting more and more affordable.

2. Introducing Color Schemes

On the View ribbon tab, there’s a new drop down button called “Color Schemes” with 4 built-in schemes: Default, Light, Dark and Black. This is pretty much what Microsoft Office, Visual Studio, and many other apps are offering nowadays. The Default scheme is the one you see in the above screenshot. This might change as we plan to still do some tweaking or maybe do a competition to let users submit color schemes we consider as our default scheme.

3. Custom Color Scheme

Now it gets interesting! Clicking “Custom…” in the Color Schemes dropdown shows the dialog you see above in the screenshot. Here are a couple of interesting things:

  • The drop down at the top allows you to choose from many, many pre-defined color schemes right out of the box. Once you selected the color scheme, hit the “Copy” button to copy all the color values from the selected scheme to the property grid. This way, you can quickly get started with a predefined scheme and tweak the colors as you wish.
  • Clicking on a color will show a short description at the bottom where this particular color will be used.
  • There are also “Icon Colors” available. Tweaking these colors allows you to set the colors used by all the icons in the UI. This way you can make sure that a black color in a black skin still has enough contrast to look great.
  • To get a better feel for the scheme, hit the Preview button to see how your current color scheme will look like.

In our usage statistics we see that roughly 10% of our beta users are going for a custom color scheme. That’s really impressive because we didn’t announce this feature yet.

4. Share your Color Schemes

The “Share” button allows you to share your color scheme with other users. We create a special link which instructs your browser to open Royal TS’ Color Scheme editor and set the color scheme for you to try. Click this link to try it. In case you have an older version of Royal TS installed after you installed the newer one, your browser might open the older version which doesn’t support color schemes. In this case you can still just copy the link into the clipboard and use the Copy drop down button to apply the colors to the property grid.

That’s it for now. We really hope that the updated look and feel is appealing to all of you. We also hope that the color customization options are a welcome addition. Please let us know what you think about these changes and if you like them or not.

To download the Royal TS V5 beta, follow this link.



Use a PowerShell Logon Script to Pre-Configure Royal TS Settings

Recently we got an interesting support request where a customer wanted to prepare the application settings, which are usually available in the Royal TS UI through View -> Options,  using a logon script in PowerShell.

I thought it would be a good idea to share this in a blog post because there are one or two caveats to watch out for but first, here’s the script:

# import the powershell module to get access to the cmd lets
Import-Module "C:\Program Files (x86)\code4ward.net\Royal TS V4\RoyalDocument.PowerShell.dll" -Force

# create a store
$store = New-RoyalStore -UserName $Env:USERNAME

# path to the app document
$appDocPath = "$Env:APPDATA\code4ward\code4ward.RoyalTS.UserPreferences.config"

# open the app document
$appDoc = Open-RoyalDocument -Store $store -FileName $appDocPath

# set all the options
$store.Options.DontShowDocumentModifiedNotification = $true
$store.Options.DontShowMaintenanceExtensionNotification = $true
$store.Options.DontShowRestoreConnectionsDialog = $true
$store.Options.DoNotCreateDashboardOnStartup = $true
$store.Options.DoNotShowGettingStartedPageOnStartup = $true
$store.Options.SuperStartPageBehavior = 0
$store.Options.AutoStartDocumentMode = 3

# here we need an array of strings with the full path to all the docs we want to open automatically
$store.Options.AutoStartDocumentList = @( "FullDocumentPath1", "FullDocumentPath2" )

# this saves the document as "*.rtsz"
Out-RoyalDocument -Document $appDoc -FileName $appDocPath
Close-RoyalDocument -Document $appDoc

# now we need to delete the old .config file and rename the .rtsz file
Remove-Item -Path $appDocPath
Rename-Item -Path "$appDocPath.rtsz" -NewName $appDocPath

Now to the two caveats:

  1. The property AutoStartDocumentList must be set using a string array – even if you only set one path.
  2. When you invoke the Out-RoyalDocument cmdlet, the file will be “*.rtsz” but the extension for this particular file must be “*.config”. That’s why we have the last two lines of code (Remove-Item and Rename-Item) in the script.


Royal TSX and macOS 10.14 Mojave

Update 6 (2018-10-17):
The issue mentioned in the previous update has now been fixed and released as part of Royal TSX 3.3.2. If you’re using macOS Mojave, please ensure that you’re running the latest version of Royal TSX available from our website.

For the best experience and full Mojave compatibility, including dark mode, please consider giving our public beta of Royal TSX 4.0 a try.

If you’re still running into issues with Royal TSX on macOS Mojave, please contact us!

Update 5 (2018-09-24):
Happy Mojave day everyone! We worked hard over the last couple months to ensure Royal TSX will be compatible with macOS Mojave once it’s released to the public.

If you’re already using macOS Mojave or plan to update later, we strongly suggest to update to the public beta of Royal TSX 4.0 which offers full Mojave compatibility (including dark mode).
In case you decide against updating to the beta, please ensure that you have at least Royal TSX 3.3.2. Every prior V3 release will have issues when run on macOS Mojave.

There’s still a known issue in a third party library that we’re using in Royal TSX (the mono framework; link to bug report) which results in Royal TSX showing various visual artifacts. If you run into any of the following issues, please let us know:

  • Visual artifacts when resizing window
  • The stoplight buttons (close, minimise, full screen) go missing when hovering over them
  • Incorrect/missing animation when entering or exiting full screen
  • Inability to expand or collapse navigation panel (sidebar) items
  • The navigation panel (sidebar) appears fully black
  • Any view that offers a scrollbar stops being able to be scrolled
  • CoreAnimation errors logged to Console.app

A workaround for this bug is included in the latest Royal TSX 4.0 beta. We plan to include this workaround in V3 as well once we gather enough feedback and can release it with confidence.

If you encounter any of the mentioned issues or have other feedback related to Royal TSX on macOS Mojave, don’t hesitate to contact us!

Update 4 (2018-07-23):
The first public beta of Royal TSX 4.0 which will offer full Mojave compatibility (including dark mode) is now available. Please give it a try and let us know if you encounter any issues! Thx!

Update 3 (2018-07-16):
A new Royal TSX beta update (V3.3.1.2) is out now which attempts to resolve the scrolling issue. If you give the beta a try and still encounter the issue, please let us know! Thx!

Update 2 (2018-06-20):
Unfortunately, DP2 doesn’t fix the crash when scrolling the navigation panel. We’re still investigating what’s causing this. Unfortunately, Apple hasn’t responded to our bug report yet.

Update 1 (2018-06-15):
The first Royal TSX beta update (V3.3.1.1) is now out which somewhat improves compatibility with macOS 10.14 DP1. Specifically, a bug has been resolved that caused the application to crash when closing Remote Desktop connections. Please note that the problem that causes the app to hang when scrolling the navigation panel is still unresolved.

Original post (2018-06-14):

Hello early adopters,

now that the first developer preview of macOS 10.14 Mojave has been released, we wanted to give you a quick update on Royal TSX’ compatibility with the new OS.

Like with every beta OS, we want to remind you that we do NOT generally support beta/developer preview releases and we do NOT recommend to install OS betas if your daily workflow depends on Royal TSX. However, it’s obviously in our own interest that our products are compatible as soon as possible. For more information please see this KB article.

In the case of 10.14 DP1 we unfortunately have to report that Royal TSX is NOT compatible at the moment. Royal TSX randomly hangs/freezes when scrolling the navigation panel (sidebar) as well as other list views. While we’d love to fix whatever is causing this, we haven’t been able to track down the source of the problem yet.

We filed bug reports with Apple and hope that whatever is causing the hangs gets fixed in one of the next developer preview releases of macOS Mojave. If you would like to help us get this resolved, please also file bug reports with Apple. The more reports/dupes they get the more likely it is that the issue gets resolved.

Thx for your understanding,
The Royal Applications Team



Microsoft’s March 13, 2018 updates and Royal TSX

Update March 14, 2018:
A new version of the FreeRDP plugin (V3.3.6) that fixes the issue is now available. You can install the update as usual via “Royal TSX – Check for Updates…”.

 

On March 13, 2018 Microsoft released updates for several Windows versions that include a fix for a security vulnerability in the Credential Security Support Provider protocol (CredSSP, also known as Network Level Authentication or NLA).
You can learn more about the vulnerability and associated patch here.

The respective updates that include this fix are…

Unfortunately, the security update breaks compatibility with 3rd party Remote Desktop clients which use the open source library, FreeRDP. We’re already in touch with the FreeRDP developers and hope to have a fix available soon.
You can follow the developments on the FreeRDP project’s Github page.

In our testing, affected Windows operating systems include Windows 10, Windows Server 2016, Windows 8.1, Windows Server 2012 R2, Windows 7 SP1 and Windows Server 2008 R2.

Workarounds

Until a proper fix is available for FreeRDP, here are some workarounds to keep you connected to your remote systems:

  1. Use Microsoft Remote Desktop
    Microsoft’s own Mac RDP client doesn’t seem to be affected by the problem, so it’s probably your best bet until an update for Royal TSX is available. You can get it on the Mac App Store.
  2. Uninstall the Windows update
    Uninstalling the Windows update (or putting it into the “Absent” state) that contains the security patch will allow you to access the system using Royal TSX again.
  3. Disable NLA
    By disabling the requirement for NLA on the server side and forcing Royal TSX to connect with TLS encryption instead you can also work around the problem.
    Here’s how to:

    1. Connect to the remote host using Microsoft Remote Desktop
    2. Run “SystemPropertiesRemote.exe” (or manually open “System Properties – Remote”)
    3. Disable “Allow connections only from computers running Remote Desktop with Network Level Authentication (recommended)”
    4. In Royal TSX open the properties of your RDP connection and switch to the “Advanced – Authentication” section
    5. Disable “Network Level Authentication (NLA)”
    6. Enable “TLS Encryption”

We’re really sorry for any inconvenience caused by this and will update this article as soon as new information becomes available.