Tableau Server has three Key Management System (KMS) options that allow you to enable encryption at rest. Two of these require Advanced Management capabilities, while a local one is available with all installations of Tableau Server.
Important:Â As of September 16, 2024, Advanced Management is no longer available as an independent add-on option. Advanced Management capabilities are only available if you previously purchased Advanced Management, or if you purchase certain license editions - either Tableau Enterprise (for Tableau Server or Tableau Cloud) or Tableau+ (for Tableau Cloud).
Beginning in version 2019.3, Tableau Server added these KMS options:Â
Beginning in version 2021.1, Tableau Server added another KMS option:Â
With the release of version 2019.3, Tableau Server supports the AWS key management system (KMS) as part of Advanced Management.
AWS KMS for encryption at restAWS KMS is available as part of Advanced Management in Tableau Server. For more information see About Tableau Advanced Management on Tableau Server.
If your organization is deploying Data Extract Encryption at Rest, then you may optionally configure Tableau Server to use AWS as the KMS for extract encryption. To enable AWSÂ KMS, you must deploy Tableau Server in AWS EC2. In the AWS scenario, Tableau Server uses the AWSÂ KMSÂ customer master key (CMK) to generate an AWS data key(Link opens in a new window). Tableau Server uses the AWS data key as the root master key for all encrypted extracts. However, even when configured for AWSÂ KMS, the native Java keystore and local KMSÂ are still used for secure storage of secrets on Tableau Server. The AWSÂ KMS is only used to encrypt the root master key for encrypted extracts.
Using AWS to encrypt the master root key provides better security properties by not storing the master key under the same permissions as the extracts.
The key hierarchy when Tableau Server is configured with AWSÂ KMS
To use the AWSÂ customer master key (CMK) to encrypt the root key in the Tableau Server KMS hierarchy, you must configure Tableau Server as described in this section.
Before you begin, verify that you meet the following requirements:
The following procedures are performed in the AWSÂ KMSÂ service. References are included to AWS documentation.
Tableau Server needs to be able to authenticate with AWS KMS using the instanceâs IAM role. The role needs to have a policy attached to it. The policy should be giving the instance permissions to call the "GenerateDataKey" and "Decrypt" actions on the CMK. See IAMÂ Roles for Amazon EC2(Link opens in a new window)..
In a multi-node deployment of Tableau Server, all nodes of the server must be running under roles that have this policy (or equivalent) attached. You can assign the same role to all nodes in the cluster.
Effect
is set to Allow
the Prinicpal
(the IAM role that is attached to the server instances) the Action
: GenerateDataKey
and Decrypt
. See Using Key Policies in AWSÂ KMS(Link opens in a new window).You will need the full ARN string from AWS KMS. This string is in the "General configuration" section of the AWSÂ KMS management pages. The ARNÂ is presented in this format: arn:aws:kms:<region>:<account>:key/<CMK_ID>, for example, arn:aws:kms:us-west-2:867530990073:key/1abc23de-fg45-6hij-7k89-1l0mn1234567
.
You will also need to specify the AWS region, which is also included in the ARN string. In the example above, the region is us-west-2
. The region is where your KMS instance resides. In the next step, you will need to specify a region as shown in the Region column in the Amazon APIÂ Gateway table(Link opens in a new window).
Run the following command on Tableau Server. This command will restart the server:
tsm security kms set-mode aws --aws-region "<region>" --key-arn "arn:aws:kms:<region>:<account_number>:key/<CMK_ID>"
The --key-arn
option takes a direct string copy from the ARN in the "General configuration" section of the AWSÂ KMS management pages.
For example, if your AWSÂ KMSÂ instance is running in us-west-2 region, your account number is 867530990073, and your CMKÂ key is 1abc23de-fg45-6hij-7k89-1l0mn1234567, then the command would be as follows:
tsm security kms set-mode aws --aws-region "us-west-2" --key-arn "arn:aws:kms:us-west-2:867530990073:key/1abc23de-fg45-6hij-7k89-1l0mn1234567"
See Extract Encryption at Rest.
Step 5: Validate installationRun the following command:
tsm security kms status
The following information may be returned:
View logs after you encrypt and decrypt extracts:
Publish extracts to your site and then encrypt them. See Extract Encryption at Rest.
Access the extracts with Tableau Desktop or with Web Authoring on a browser (this will decrypt the extracts for use).
Search the vizqlserver_node log files for the AwsKmsEncryptionEnvelopeAccessor
and AwsKmsEncryptionEnvelope
strings. The default location of the logs are at /var/opt/tableau/tableau_server/data/tabsvc/logs/
Log entry examples that indicate successful configuration include the following:
For publishing and extract refreshes related to KMS, search the backgrounder logs. For more information about logs, see Tableau Server Logs and Log File Locations.
In a multi-node setup for AWS KMS, the tsm security kms status
command may report healthy (OK) status, even if another node in the cluster is misconfigured. The KMS status check only reports on the node where the Tableau Server Administration Controller process is running and does not report on the other nodes in the cluster. By default the Tableau Server Administration Controller process runs on the initial node in the cluster.
Therefore, if another node is misconfigured such that Tableau Server is unable to access the AWS CMK, those nodes may report Error states for various services, which will fail to start.
If some services fail to start after you have set KMS to the AWS mode, then run the following command to revert to local mode: tsm security kms set-mode local
.
Refreshing the AWSÂ CMK is a task that you perform with AWS. By default, the AWSÂ CMKÂ will refresh once a year. See the AWS topic, How Automatic Key Rotation Works(Link opens in a new window). Since the ARN and region do not change, you do not need to update the KMS configuration on Tableau Server for normal CMK refresh scenarios.
After AWSÂ CMKÂ refreshes, you must regenerate the internal RMK and MEKs on Tableau Server. You should also re-encrypt all extracts with the new CMK:
tsm security regenerate-internal-tokens
command to regenerate all internal keys on Tableau Server, including the RMKÂ and MEKs used for extract encryption.tabcmd reencryptextracts <site-name>
to re-encrypt extracts on a given site. Run this command on every site where you are storing encrypted extracts. Depending on the number of encrypted extracts on the site, this operation could consume significant server processing load. Consider running this operation outside of business hours. See Extract Encryption at Rest.To regenerate the root master key and the master encryption keys on Tableau Server, run the tsm security regenerate-internal-tokens
command.
A server backup can be taken in AWS mode with no additional configurations or procedures. The backup contains encrypted copies of the RMK and MEKs. Decrypting the keys requires access and control of the AWSÂ CMK.
For the restore scenario, the server being restored to can be in either KMS mode, including Local. The only requirement is that the server the backup is being restored to has decrypt access to the CMK the backup itself used.
Upon restore, the MEKs from the backup are imported as decrypt-only keys. The RMK is not migrated over. A new RMKÂ is generated as part of the installation/restore process.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4