我在MVC c#中創建一個Web應用程序,您可以使用您的AD帳戶登錄並閱讀祕密。問題是有很多鑰匙蓋 - 每個都有特定的權限。我已經設法使用一個特定的保險櫃執行此操作,並使用AD登錄名使用保險庫URL列出保管庫中的機密。列出與AD用戶帳戶關聯的關鍵電子倉庫?
我希望能夠列出用戶也可以訪問的保險庫。我知道這在Powershell中很容易實現,但我無法知道如何在C#中執行此操作。
有沒有辦法做到這一點?謝謝!
我在MVC c#中創建一個Web應用程序,您可以使用您的AD帳戶登錄並閱讀祕密。問題是有很多鑰匙蓋 - 每個都有特定的權限。我已經設法使用一個特定的保險櫃執行此操作,並使用AD登錄名使用保險庫URL列出保管庫中的機密。列出與AD用戶帳戶關聯的關鍵電子倉庫?
我希望能夠列出用戶也可以訪問的保險庫。我知道這在Powershell中很容易實現,但我無法知道如何在C#中執行此操作。
有沒有辦法做到這一點?謝謝!
據我所知,目前還沒有這樣的REST,我們可以通過不同的訂閱獲得所有關鍵保險庫。
作爲一種解決方法,我們需要在所有訂閱和資源組下列出Key Vault。並檢查accessPolicies
以查看Key Vault是否可訪問。
例如,一個accessPolicie
如下所示,我們可以檢查用戶的對象是否匹配accessPolicie
中的objectId
。
{
"tenantId": "",
"objectId": "",
"permissions": {
"keys": [],
"secrets": [
"Get"
],
"certificates": []
}
},
要列出重點庫所有訂閱之下,資源組,你可以參考下面的REST:
GET: https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.KeyVault/vaults?api-version=2015-06-01
authorization: bearer {access_token}
如果你有關於Azure的任何想法或意見,你可以從here提交。
好主意!我會去做。 – Pikapops
好吧,你可以直接調用powershell或休息端點? – 4c74356b41
你能澄清你的意思是'關聯'嗎?您是指創建保險櫃的帳戶,可以管理保險櫃的帳戶,具有某些特定帳戶訪問權限的帳戶或其他內容? –
所有成員。所以如果用戶可以寫信給它,閱讀它,管理它 - 只要他們能看到保險庫。我不能使用PowerShell,因爲它是一個Web應用程序。我正在研究的方式是通過其餘API,但它只能顯示與訂閱相關的保管庫。 – Pikapops