共享连接到Azure SQL数据库的PowerApp,而无需共享凭据

时间:2019-07-11 18:31:54

标签: sql-server azure azure-sql-database powerapps

我们有一个Azure SQL数据库,当前正在使用MSAccess作为用户界面。我正在研究使用PowerApps来提高可移植性,并创建了一个连接到Azure SQL数据库的测试PowerApp。

当我共享该应用程序时,不会要求其他用户提供凭据,而是使用我的安全权限(我的SQL Server连接器)进行连接。

我将PowerApps连接器添加到SQL SERVER-直接连接(云服务),输入我们的服务器mytestserver.database.windows.net,1433,数据库名称,用户名和密码。

建立一个快速表单,然后与没有任何权限访问Azure SQL数据库的另一个用户共享它。

是否可以强制用户登录,如果可以,我该如何实施?

1 个答案:

答案 0 :(得分:1)

This is a known issue with PowerApps和数据库凭据。如果您的用户很精明,那么您在这里真的没有选择。一旦您与他们共享一个具有SQL凭据的应用程序,他们便可以创建自己的自己的PowerApp ,并以连接SQL用户所拥有的任何权限重用该连接。

我见过人们做的一件事是:

  1. Add the Active Directory Connector到您的PowerApp
  2. 创建您自己的登录屏幕
  3. 在访问应用的SQL区域之前,请先通过登录屏幕查看用户是否属于AD安全组。

我不太喜欢这种方法,因为AD连接器没有任何方法可以对用户进行身份验证。用户只需向其传递一个电子邮件地址即可。

这不能缓解上面提到的共享连接问题,但可以让您有所建树。

想到的另一个选择是仅授予PowerAppsSql用户对数据库的读取权限。强制用户改为写入Sharepoint列表,然后使用您的信用下的Flow写入数据库(我知道疯狂的解决方法,但是我想在这里提供帮助:))。

希望其中一些帮助!