Forum Discussion
Setting Up Secure External Access for Power BI Desktop to AWS-Hosted SQL Server Database
Hello Power BI Community,
I’m seeking advice on setting up secure external access for Power BI Desktop to connect to a SQL Server database hosted on an AWS EC2 instance. Here’s the current setup:
### Current Office Setup:
1. I connect to a **jump server (90 box)** from my office laptop.
2. **27 box**: Hosts Power BI Desktop and Power BI Data Gateway.
3. **92 box**: Hosts the SQL Server database (in a private network on AWS).
4. I use Power BI Desktop on the 27 box to connect to the SQL Server database on the 92 box using the import method.
5. I publish the reports to Power BI Service and set up a scheduled refresh.
6. I use a PowerBI Pro License. This same account is used in PowerBI Desktop, PowerBI Data Gateway and PowerBI Service.
### Task at Hand:
- **Power BI Desktop** and **Power BI Data Gateway** will be installed on the customer’s machine.(in USA)
- The **SQL Server database** is hosted on our **AWS EC2** instance.(in INDIA)
- The customer needs to access this SQL Server database through Power BI Desktop.
Additionally, we’ve created 10+ Power BI reports (.pbix files) by connecting to the AWS EC2 SQL Server from Power BI Desktop via Data Gateway on our end using our Power BI Pro license. We plan to share these .pbix files with the customer, after which our involvement will end. The customer will then open the .pbix files with Power BI Desktop, connect to the database, and publish to their Power BI Service.
### Questions:
1. **Permissions:**
- What SQL Server permissions are required for the customer to access the database?
- Should specific user roles or database permissions be granted?
2. **VPN/Network Configuration:**
- Is a **VPN** necessary for securely connecting the customer’s machine to our AWS environment?
- If not using a VPN, what other network configurations (e.g., security groups, VPC, etc.) are required?
3. **IP Whitelisting:**
- Do we need to whitelist the customer’s public IP address on the AWS security group or firewall to allow access to the SQL Server?
4. **Power BI Data Gateway:**
- Are there any specific configurations required on the **Power BI Data Gateway** to facilitate this connection?
- How do we ensure the gateway is securely connecting to the AWS-hosted SQL Server?
5. **Additional Considerations:**
- Are there any other security, network, or configuration considerations we should be aware of to ensure smooth and secure access?
Any guidance or best practices from those who have set up similar environments would be greatly appreciated!
Thanks in advance for your help!
- Anonymous2 years ago
Hi manoj_0911 ,
Based on the description, for the permissions questions, common permissions include db_datareader for read-only access and db_datawriter if any data modifications are needed. It is best to create a specific user role for the customer with the necessary permissions.
For the second question, using a VPN is a secure way to connect the customer’s machine to the AWS environment.
For the third question, it is necessary that whitelist the customer’s public IP address in the AWS group.
For the gateway question, configure the gateway to connect using the appropriate credentials and connection settings.
For the additional question, try to back up the SQL Server database.
You can also view the following documents to learn more information.
Permissions (Database Engine) - SQL Server | Microsoft Learn
How to Setup an AWS Client VPN Using OpenVPN on EC2 | NetworkProGuide
Block or allow specific IPs on an EC2 instance | AWS re:Post (repost.aws)
Best Regards,
Wisdom Wu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
1 Reply
- AnonymousNot applicable
Hi manoj_0911 ,
Based on the description, for the permissions questions, common permissions include db_datareader for read-only access and db_datawriter if any data modifications are needed. It is best to create a specific user role for the customer with the necessary permissions.
For the second question, using a VPN is a secure way to connect the customer’s machine to the AWS environment.
For the third question, it is necessary that whitelist the customer’s public IP address in the AWS group.
For the gateway question, configure the gateway to connect using the appropriate credentials and connection settings.
For the additional question, try to back up the SQL Server database.
You can also view the following documents to learn more information.
Permissions (Database Engine) - SQL Server | Microsoft Learn
How to Setup an AWS Client VPN Using OpenVPN on EC2 | NetworkProGuide
Block or allow specific IPs on an EC2 instance | AWS re:Post (repost.aws)
Best Regards,
Wisdom Wu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.