看起來我是on a journey首先以編程方式創建Azure應用程序,然後使用Azure Management API創建一些資源。我想問一個新的問題,如何基本上使用HttpClient
(或者使用Microsoft Graph API庫確切需要的權限的更聰明的方法)來執行PowerShell命令New-AzureRmRoleAssignment -RoleDefinitionName Owner -ServicePrincipalName $adApp.ApplicationId.Guid
。以編程方式在.NET Core控制檯應用程序中的新AzureRmRoleAssignment
這次嘗試成爲一個更好的人(更多地提供代碼),我prepared a repo in GH,但問題基本上歸結爲應該使用什麼樣的URI(here)。該代碼是
var roleAssignment = $"{{something here}}";
var roleAssignementContent = new StringContent(roleAssignment, Encoding.UTF8, "application/json");
var roleAssignmentResponse = await client.PostAsync($"https://graph.windows.net/{tenants.value[0].tenantId}/applications/{createdApplication.appId}?api-version=1.6", roleAssignementContent).ConfigureAwait(false);
var roleAssignement = await roleAssignmentResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
我擺弄Graph API Explorer太多,如果事情使用它(或庫)比較容易,但用更少的運氣。事實上,最終目標是以編程方式創建應用程序,以便可以使用Azure Management Libraries進行部署。也就是說,所有代碼都是從開始到結束。
(另外,該代碼是一次性的質量,只有提供更功能的例子。)
我試圖按照您的指示,但我必須在https://github.com/veikkoeeva/AppCreator失去了一些東西作爲/blob/master/AppCreator/Program.cs#L300「步驟3」的結果是_Bad Request_。這是我錯過了一些理由的原因,但我無法理解這可能是什麼。你願意借你的眼睛嗎? – Veksi
要添加到前一個,它似乎沒有錯誤的URL,有效負載似乎是好的,它也不是授權問題。所以,我似乎無法理解(目前)的呼叫中的某些內容。 – Veksi
請嘗試使用fiddler或開發人員工具來檢查執行roleAssignments api時內部錯誤消息的內容。 –