Skip to main content

Privacera Documentation

Table of Contents

Microsoft SQL connector properties for PolicySync on Privacera Platform

These Microsoft SQL connector properties can be set for PolicySync in Privacera Platform.

The properties are grouped by general function, such as JDBC connection properties, properties for user, group, and role management, and other functions.

The properties are also categorized as BASIC or ADVANCED:

  • BASIC pertains to the most fundamental aspects of the connector, such as authentication.

  • ADVANCED indicates additional features beyond the BASICs, such as row-filtering or group member handling.

Start by setting the BASIC properties and then examine the ADVANCED properties to determine which of these features you might want to enable.

For a general process to migrate values from old YAML files to the new YAML files, see Migration to PolicySync v2 on Privacera Platform 7.2.

Category

Property name

Description

Default

Allowable values

JDBC configuration properties

BASIC

CONNECTOR_MSSQL_JDBC_URL

This property is used to set jdbc url which can be used to connect to Mssql server. JDBC URL should follow below convention jdbc:sqlserver://<MSSQL_SERVER_HOST>:<MSSQL_SERVER_PORT> Example : jdbc:sqlserver://example.database.windows.net:1433

BASIC

CONNECTOR_MSSQL_JDBC_USERNAME

This property is used to set jdbc Username to be used to make connection to MSSQL.

BASIC

CONNECTOR_MSSQL_JDBC_PASSWORD

This property is used to set jdbc username password to be used to make connection to MSSQL.

BASIC

CONNECTOR_MSSQL_MASTER_DB

This property is used to set jdbc master database to be used to make initial connection to Mssql.

master

BASIC

CONNECTOR_MSSQL_AUTHENTICATION_TYPE

If MSSQL_JDBC_USERNAME is a 'local user', set value as below: MSSQL_AUTHENTICATION_TYPE: "SqlPassword" If MSSQL_JDBC_USERNAME is an Azure AD user, then set as below: MSSQL_AUTHENTICATION_TYPE: "ActiveDirectoryPassword".

SqlPassword

SqlPassword/ActiveDirectoryPassword

BASIC

CONNECTOR_MSSQL_DEFAULT_USER_PASSWORD

This property is used to set password to every new user created by policysync in MSSQL.

BASIC

CONNECTOR_MSSQL_OWNER_ROLE

This property is used to set ownership for all the resources managed by policysync. The specified role will become owner for all managed resources and will have full control on those resources.We support changing owners of database, schema, tables and views. Note :- If owner role is kept as blank, then ownership will not change and users who creates table/view or any other object he will be owner of those objects and policysync won't be able to do access control on that object

Resources management

ADVANCED

CONNECTOR_MSSQL_MANAGE_DATABASE_LIST

This property is used to set database name for which access control should be managed by policysync. The ignore database list has precedence over manage database list. Eg. testdb1.

Note

For mssql connector we support only 1 database at a time for access control, providing the multiple databases list here will not work, value for this property are case-sensitive.

ADVANCED

CONNECTOR_MSSQL_MANAGE_SCHEMA_LIST

This property is used to set list of comma separated schema names/wildcards for schema names of database to be managed by policysync. Not specifying this property indicates manage all schemas. Schemas should be specified in format of <database>.<schema>.

Note

Values for this property are case-sensitive.

ADVANCED

CONNECTOR_MSSQL_MANAGE_TABLE_LIST

This property is used to set list of comma separated tables names/wildcards for table names of the managed schema to be managed by policysync. Not specifying this property indicates manage all tables. tables should be specified in format of <database>.<schema>.<table> .

Note

Values for this property are case-sensitive.

ADVANCED

CONNECTOR_MSSQL_IGNORE_DATABASE_LIST

This property is used to set comma separated database names which access control you don't want to be managed by policysync. If you don't want to ignore any database then you can skip specifying this property. This supports wildcards as well. This has precedence over manage database list. Eg. testdb1,testdb2,sales_db* .

Note

Values for this property are case-sensitive.

ADVANCED

CONNECTOR_MSSQL_IGNORE_SCHEMA_LIST

This property is used to set comma separated schema fqdn which access control you don't want to be managed by policysync. If you don't want to ignore any schema then you can skip specifying this property. This supports wildcards as well. This has precedence over manage schema list. Eg. testdb1.schema1,testdb2.schema2,sales_db*.sales*.

Note

Values for this property are case-sensitive.

Users/Groups/Roles management

ADVANCED

CONNECTOR_MSSQL_USER_NAME_REPLACE_FROM_REGEX

This takes the regular expression as input and finds the matching characters in a user name and replaces them with the characters specified in property. If kept blank, no find and replace operation is performed.

[~`$&+:;=?@#|'<>.^*()_%\\\\[\\\\]!\\\\-\\\\/\\\\\\\\{}]

ADVANCED

CONNECTOR_MSSQL_USER_NAME_REPLACE_TO_STRING

The value specified in this property is used to replace the characters found by the regex specified user name regex property. If kept blank, no find and replace operation is performed.

_

ADVANCED

CONNECTOR_MSSQL_GROUP_NAME_REPLACE_FROM_REGEX

This takes the regular expression as input and finds the matching characters in a group name and replaces them with the characters specified in property. If kept blank, no find and replace operation is performed.

[~`$&+:;=?@#|'<>.^*()_%\\\\[\\\\]!\\\\-\\\\/\\\\\\\\{}]

ADVANCED

CONNECTOR_MSSQL_GROUP_NAME_REPLACE_TO_STRING

The value specified in this property is used to replace the characters found by the regex specified group name regex property. If kept blank, no find and replace operation is performed.

_

ADVANCED

CONNECTOR_MSSQL_ROLE_NAME_REPLACE_FROM_REGEX

This takes the regular expression as input and finds the matching characters in a role name and replaces them with the characters specified in property. If kept blank, no find and replace operation is performed.

[~`$&+:;=?@#|'<>.^*()_%\\\\[\\\\]!\\\\-\\\\/\\\\\\\\{}]

ADVANCED

CONNECTOR_MSSQL_ROLE_NAME_REPLACE_TO_STRING

The value specified in this property is used to replace the characters found by the regex specified role name regex property. If kept blank, no find and replace operation is performed.

_

ADVANCED

CONNECTOR_MSSQL_USER_NAME_PERSIST_CASE_SENSITIVITY

After loading user from Ranger API's all are converted into lowercase, but in some cases, you would need to have the users in the same case as they are in Ranger. When setting this value to true, it will maintain the case sensitivity of names as they are in Ranger.

false

true, false

ADVANCED

CONNECTOR_MSSQL_GROUP_NAME_PERSIST_CASE_SENSITIVITY

After loading group from Ranger API's all are converted into lowercase, but in some cases, you would need to have the groups in the same case as they are in Ranger. When setting this value to true, it will maintain the case sensitivity of names as they are in Ranger.

false

true, false

ADVANCED

CONNECTOR_MSSQL_ROLE_NAME_PERSIST_CASE_SENSITIVITY

After loading role from Ranger API's all are converted into lowercase, but in some cases, you would need to have the roles in the same case as they are in Ranger. When setting this value to true, it will maintain the case sensitivity of names as they are in Ranger.

false

true, false

CONNECTOR_MSSQL_USER_NAME_CASE_CONVERSION

This property only applicable if USER NAME PERSIST CASE SENSITIVITY is set to false. Managed users name would be treated as lowercase by default. If the value is set to "upper" then the user name would be treated as uppercase. If the value is set to "none" then the user name case is preserved.

lower

none, lower, upper

ADVANCED

CONNECTOR_MSSQL_MANAGE_USERS

This property controls whether policysync should manage the membership between user and user role.

false

true, false

ADVANCED

CONNECTOR_MSSQL_MANAGE_GROUPS

This property controls whether we should create role in MSSQL for groups fetched from ranger.

false

true, false

ADVANCED

CONNECTOR_MSSQL_MANAGE_ROLES

This property controls whether we should create role in MSSQL for roles fetched from ranger.

false

true, false

ADVANCED

CONNECTOR_MSSQL_MANAGE_USER_LIST

This property is used to set comma separated user names which access control should be managed by policysync. If you want to manage all users then you can skip specifying this property. This supports wildcards as well. The ignore users list has precedence over manage users list. Eg. user1,user2,dev_user*

ADVANCED

CONNECTOR_MSSQL_MANAGE_GROUP_LIST

This property is used to set comma separated group names which access control should be managed by policysync. If you want to manage all group then you can skip specifying this property. This supports wildcards as well. The ignore group list has precedence over manage group list. Eg. group1,group2,dev_group*

ADVANCED

CONNECTOR_MSSQL_MANAGE_ROLE_LIST

This property is used to set comma separated role names which access control should be managed by policysync. If you want to manage all role then you can skip specifying this property. This supports wildcards as well. The ignore role list has precedence over manage role list. Eg. role1,role2,dev_role*.

ADVANCED

CONNECTOR_MSSQL_IGNORE_USER_LIST

This property is used to set comma separated user names which access control you don't want to be managed by policysync. If you don't want to ignore any users then you can skip specifying this property. This supports wildcards as well. This has precedence over manage users list. Eg. user1,user2,dev_user*.

ADVANCED

CONNECTOR_MSSQL_IGNORE_GROUP_LIST

This property is used to set comma separated group names which access control you don't want to be managed by policysync. If you don't want to ignore any groups then you can skip specifying this property. This supports wildcards as well. This has precedence over manage groups list. Eg. group1,group2,dev_group*

ADVANCED

CONNECTOR_MSSQL_IGNORE_ROLE_LIST

This property is used to set comma separated role names which access control you don't want to be managed by policysync. If you don't want to ignore any roles then you can skip specifying this property. This supports wildcards as well. This has precedence over manage roles list. Eg. role1,role2,dev_role*

ADVANCED

CONNECTOR_MSSQL_USER_ROLE_PREFIX

This property is used to set a prefix for role which we will be creating in MSSQL for user from ranger. For example if you have user named john in ranger and you have defined prefix as test_user_ then the role which we create for john in Mssql will have name test_user_john.

priv_user_

ADVANCED

CONNECTOR_MSSQL_GROUP_ROLE_PREFIX

This property is used to set a prefix for role which we will be creating in MSSQL for group from ranger. For example if you have group named dev in ranger and you have defined prefix as test_group_ then the role which we create for dev in Mssql will have name test_group_dev.

priv_group_

ADVANCED

CONNECTOR_MSSQL_ROLE_ROLE_PREFIX

This property is used to set a prefix for role which we will be creating in MSSQL for role from ranger. For example if you have role named finance in ranger and you have defined prefix as test_role_ then the role which we create for finance in Mssql will have name test_role_finance.

priv_role_

ADVANCED

CONNECTOR_MSSQL_USE_NATIVE_PUBLIC_GROUP

Set this property to true, if you want PolicySync to use mssql native public group for access grants whenever there is policy created referring to public group inside it.

true

false, true

ADVANCED

CONNECTOR_MSSQL_MANAGE_USER_FILTERBY_GROUP

Set this property to true, if you want to manage only the users who belongs the the groups defined in manage groups list property.

false

true, false

ADVANCED

CONNECTOR_MSSQL_MANAGE_USER_FILTERBY_ROLE

Set this property to true, if you want to manage only the users who belongs the the roles defined in manage roles list property.

false

true, false

Access control management

ADVANCED

CONNECTOR_MSSQL_ENABLE_ROW_FILTER

Set this property to true, if you want to enable native row filter functionality. This is not recommended to use, since the native row filters can only be created on tables, they can't be created on views.

true

false, true

ADVANCED

CONNECTOR_MSSQL_ENABLE_VIEW_BASED_MASKING

Set this property to true, if you want to enable secure view based masking in Mssql policysync. Note :- Mssql don't support native masking yet, thus recommended to use view based masking.

true

true, false

ADVANCED

CONNECTOR_MSSQL_ENABLE_VIEW_BASED_ROW_FILTER

Set this property to true, if you want to enable secure view based row filter in Mssql policysync. Note :- Mssql support native row filters, but due to its some limitations we recommended to use view based row filter.

false

true, false

ADVANCED

CONNECTOR_MSSQL_SECURE_VIEW_CREATE_FOR_ALL

Set this property to true, if you want to create secure view for all tables as well all view which were created by end users. This will create secure view for resource regardless whether there any masking/tr filter policy exists in ranger.

false

true, false

ADVANCED

CONNECTOR_MSSQL_MASKED_NUMBER_VALUE

This property is used to specify the default masking value for numeric columns

0

ADVANCED

CONNECTOR_MSSQL_MASKED_TEXT_VALUE

This property is used to specify the default masking value for text/string columns

<MASKED>'

ADVANCED

CONNECTOR_MSSQL_SECURE_VIEW_NAME_PREFIX

By default view-based row filter and masking related secure views have the same name as the table name with postfixed by _secure. If you want to change the secure view name prefix and postfix, that can be done with these properties. After prefix and postfix is specified the view name will be in this format : {prefix}{table_name}{postfix}.

ADVANCED

CONNECTOR_MSSQL_SECURE_VIEW_NAME_POSTFIX

By default view-based row filter and masking related secure views have the same name as the table name with postfixed by _secure. If you want to change the secure view name prefix and postfix, that can be done with these properties. After prefix and postfix is specified the view name will be in this format : {prefix}{table_name}{postfix}.

_secure

ADVANCED

CONNECTOR_MSSQL_SECURE_VIEW_SCHEMA_NAME_PREFIX

By default view-based row filter and masking related secure views have the same schema name as the table schema name. If you want to change the secure view schema name prefix and postfix, that can be done with these properties. After prefix and postfix is specified the view schema name will be in this format : {prefix}{view_schema_name}{postfix} . For {view_schema_name} refer to variable MSSQL_SECURE_VIEW_SCHEMA_NAME

ADVANCED

CONNECTOR_MSSQL_SECURE_VIEW_SCHEMA_NAME_POSTFIX

By default view-based row filter and masking related secure views have the same schema name as the table schema name. If you want to change the secure view schema name prefix and postfix, that can be done with these properties. After prefix and postfix is specified the view schema name will be in this format : {prefix}{view_schema_name}{postfix}. For {view_schema_name} refer to variable Mssql_SECURE_VIEW_SCHEMA_NAME

BASIC

CONNECTOR_MSSQL_GRANT_UPDATES

This property controls whether actual grant/revoke and create/update/delete queries for user/group/role should be run on Mssql.

true

true, false

CONNECTOR_MSSQL_GRANT_UPDATES_MAX_RETRY_ATTEMPTS

This property is used to set max retry attempts to be made for granting or revoking the access in case if any failure due to database connection errors.

2

ADVANCED

CONNECTOR_MSSQL_ENABLE_DATA_ADMIN

This property is used to enable data admin feature, with data admin feature enabled you can create all the policies on table/native view and by default respective grants will be made on secure view of table table or native view. And this secure view will have row filter and masking capability as well. In case if you need permission on table then you can select the permission you want plus dataadmin in the policy, In this case that permissions will be granted on both, the table/native view and its secure view as well

true

true, false

ADVANCED

CONNECTOR_MSSQL_RANGER_SERVICE_NAME

If you have created a custom policy repository for this connector, as described in PolicySync design and configuration on Privacera Platform, set this property to the name of that custom policy repository. For example, if you have created a policy repository named postgresql_qa_instance, the value of this property should be set to postgresql_qa_instance.PolicySync design and configuration on Privacera Platform

privacera_mssql

Access audits management

BASIC

CONNECTOR_MSSQL_AUDIT_ENABLE

This property is used to enable access audit fetching from Mssql

false

BASIC-CONDITIONAL

CONNECTOR_MSSQL_AUDIT_STORAGE_URL

If this parameter is left empty or blank, Privacera Platform will target all databases attached to the MSSQL Server. If one or more database names are listed (comma separated values), only those databases will be controlled by Privacera Platform.

ADVANCED

CONNECTOR_MSSQL_AUDIT_EXCLUDED_USERS

This property is used to set the list of users whose access audits we want to ignore. It takes list of comma separated users.

CONNECTOR_MSSQL_JDBC_USERNAME