簡體   English   中英

PowerApps:在PowerApps應用程序中實現基於角色的安全性

[英]PowerApps : Implementing Role Based Security In Your PowerApps App

我已經使用Power Apps創建了一個應用程序。 假設主屏幕有兩個按鈕“ admin”和“ user”。 如果具有管理員角色的用戶訪問該應用程序,則他/她應該只能看到“管理員”按鈕。 如果具有“用戶”角色的用戶登錄,則他/她應該只能看到“用戶”按鈕。 假定用戶是Azure Active Directory的一部分。

您可以根據環境的設置方式執行幾種操作。

  1. 將管理員電子郵件地址保留在列表中的某個位置(Azure SQL / Sharepoint / etc)
  2. 連接到Office365Users數據源( View/Data Sources
  3. 比較User()。發送電子郵件到管理員列表
  4. 如果為true,則將“管理按鈕”的可見性設置為“ true”,否則設置為“ false”

另一個選擇是連接到Azure AD數據源,並使用AzureAD.GetMemberGroups或其他類似函數來查看用戶是否屬於正確的安全組。

如果您的衣服很小,並且管理員團隊將始終是管理員,則可以使用以下命令將其硬編碼到您的應用中:

If(
    User().Email = bob@mycompany.com,
    true,
    false
)

根據用戶安全角色控制對應用程序元素的訪問,有以下三種方法:

方法1:我們可以利用Azure Active Directory組。 我們需要在PowerApps中創建一個自定義連接器,該連接器將返回用戶所屬的組(表示安全角色)。 這些組應在Azure Active Director中創建。 用戶必須屬於一個組。

方法2:如果應用程序的數據源使用基於安全角色的模型,則此方法更適用。 在這種情況下,PowerApps將繼承數據源內用戶的安全角色。

方法3:假設有SQL Server數據庫作為我們應用程序的數據源。 我們可以創建自己的安全模型,例如擁有一個用戶表,該用戶表的列存儲布爾類型值(SQL Server中的Bit),每列代表一個安全角色。 值為true表示用戶已分配了相應的角色。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM