Datasources combine Database Type, Host Address (IP/hostname and port number), and Credentials into a unified record.
When a User or Role is assigned a Datasource, that entity inherits the permissions associated with the Credential in that Datasource.
In cases where multiple Credentials are desirable for a given Host Address, the Datasource can be cloned, with an alternate credential provided.
Example: Alice wishes to grant read-only access to a Microsoft SQL Server instance previously set up in strongDM with read-write access. Alice creates a new database user,
sdm-ro, on the SQL Server instance. She then clones the existing Datasource entry, and replaces the read-write credentials with the
sdm-ro username and password.