Skip to main content

Sql Server Entitlements

This connector exports entitlements from Microsoft SQL Server.

This page is about SQL Server Entitlements .

Package: Database/Microsoft SQL Server Entitlements

Overview

Identity Manager can manage permissions within Microsoft SQL Server, by exporting the server's and databases' principals, i.e. entities that can request Microsoft SQL Server's resources.

SQL Server supports three types of principals:

  • logins at the server level;
  • users at the database level;
  • roles (if any) at either level.

Every principal includes a security identifier (SID).

Prerequisites

Implementing this connector requires:

Export

This connector exports from one or several databases to CSV files the following tables:

  • sys.server_principals;
  • sys.server_role_members;
  • sys.database_principals;
  • sys.database_role_members.

This connector exports only in complete mode.

Configuration

This process is configured through a Connection in the UI and/or the XML configuration, and in the appsettings.agent.json > Connections section:

appsettings.agent.json
{
...
"Connections": {
...
"<ConnectionIdentifier>": {
...
}
}
}

The identifier of the connection and thus the name of the subsection must:

  • be unique.
  • not begin with a digit.
  • not contain <, >, :, ", /, \, |, ?, * and _.

The following example connects Identity Manager to Microsoft SQL Server and exports the principals from the databases UsercubeDemo and AdventureWorks2017:

appsettings.agent.json
{
...
"Connections": {
...
"SqlServerEntitlementsExport": {
"ConnectionString": "data source=.;Database=Usercube;Integrated Security=SSPI;Min Pool Size=10;encrypt=false;",
"Databases": [ "UsercubeDemo", "AdventureWorks2017" ]
}
}
}

Setting attributes

NameDetails
ConnectionString requiredType String Description Connection string of the database. See the specific syntax.
Timeout optionalType Int32 Description Time period (in seconds) after which the request attempt is terminated and an error is generated.
------
Databases optionalType String List Description List of databases to be exported. Note: when not specified, all databases from the SQL Server are exported.

Output details

This connector is meant to generate to the Application SettingsExport Output folder the following CSV files:

  • <connectionIdentifier>_serverPrincipals.csv;
  • <connectionIdentifier>_serverRoleMembers.csv;
  • <connectionIdentifier>_databasePrincipals.csv;
  • <connectionIdentifier>_databaseRoleMembers.csv.

For example, if the connection identifier is SqlServerEntitlementsExport, then the file names are SqlServerEntitlementsExport_serverPrincipals.csv, etc.

The output files' columns are the columns returned by the SQL query.

Fulfill

There are no fulfill capabilities for this connector.

Authentication

Password reset

This connector does not reset passwords.

Credential protection

Data protection can be ensured through:

AttributeNaming Convention for the Key in Azure Key Vault
ConnectionStringConnections--<identifier>--ConnectionString
TimeoutConnections--<identifier>--Timeout

Connection is not available for this connector.