OneIdentity / SCALUS

SCALUS -- Session Client Application Launch Uri System
Apache License 2.0
11 stars 3 forks source link
safeguard

SCALUS

SCALUS is an acronym for Session Client Application Launch Uri System. It was developed as a hackathon project at OneIdentity to aid launching remote sessions from OneIdentity's privileged account management software, Safeguard. It is a general purpose tool that can be used for many different purposes and doesn't require Safeguard to use.

What is it?

SCALUS is a dispatcher for URI protocol handlers. A protocol handler runs when the operating system attempts to launch a URI. The OS looks up an application that is registered to handle a particular URI protocol. For example a URL such as "https://" would be handled by the default browser. SCALUS can register with the OS (Windows, Mac, Linux) for any URI protocol and can be configured to launch any application.

With SCALUS, applications that don't provide a native protocol handler can still be made to execute when the OS (or the browser) attempts to launch a URI. For example, you can configure SCALUS so that clicking a link like [ssh://user@some.host:2222]() would launch Putty.exe even though Putty.exe doesn't register for ssh:// URLs. SCALUS parses the URL and makes individual parts available so that Putty.exe can be launched with all the right command line options which in this case would be something like: putty.exe -ssh -l user -P 2222 some.host

The SCALUS configuration defines variables associated with parts of the URL and those variables can be passed on the command line or via a configuration file to tools like ssh, rdesktop, RdpClient, FreeRDP etc.

How does it work?

The SCALUS UI allows you to associate an application with a URI protocol. SCALUS registers itself as the URI protocol handler and then launches the configured application in response. SCALUS is a cross-platform .NET application that both handles URI dispatch and provides a local web application for configuration which keeps the user interface consistent across Winows, Linux and Mac.

Running SCALUS with no arguments launches the UI in the default browser. In this mode, SCALUS runs as a local webserver and exits when you close the browser tab.

For common remote session launching scenarios, the SCALUS configuration is sufficient. The only reason to run the UI is to customize the configuration to run a preferred application. SCALUS is typically invoked behind-the-scenes by the OS rather than by users.

Using SCALUS

Download

SCALUS can be downloaded from the releases area.

Install

Configure

To configure SCALUS run the application with no arguments. The configuration UI will launch in your browser. Check out the SCALUS Wiki for more configuration details.

Contributing to SCALUS

Is there something you would like to add to SCALUS? See the developer guide. Is something broken or bothering you? Log an issue.