在 Azure DevTest Labs 中新增實驗室擁有者、參與者和使用者
Azure DevTest Labs 使用 Azure 角色型存取控制 (Azure RBAC) 來定義角色,這些角色只有執行特定實驗室工作的必要存取權。 DevTest Labs 有三個內建角色:擁有者、參與者和 DevTest Labs 使用者。 本文說明每個角色可以執行的工作,以及如何使用 Azure 入口網站或 Azure PowerShell 指令碼,將成員新增至實驗室角色。
每個角色可以採取的動作
實驗室擁有者、參與者和 DevTest Labs 使用者角色可以在 DevTest Labs 中採取下列動作:
負責人
實驗室擁有者角色可以採取下列所有動作:
實驗室工作:
- 將使用者新增至實驗室。
- 更新成本設定。
虛擬機器 (VM) 基底工作:
- 新增和移除自訂映像。
- 新增、更新和刪除公式。
- 啟用 Marketplace 映像。
VM 工作:
- 建立 VM。
- 啟動、停止或刪除 VM。
- 更新 VM 原則。
- 新增或移除 VM 資料磁碟。
構件工作:
- 新增和移除構件儲存機制。
- 將構件套用至 VM。
參與者
實驗室參與者角色可以採取與實驗室擁有者相同的所有動作,但無法將使用者新增至實驗室。
DevTest Labs 使用者
DevTest Labs 使用者角色可以在 DevTest Labs 中採取下列動作:
- 新增、更新和刪除 VM 基底公式。
- 建立 VM。
- 啟動、停止或刪除使用者建立的 VM。
- 從使用者建立的 VM 新增或移除資料磁碟。
- 將構件套用至 VM。
注意
實驗室使用者會在他們建立的 VM 上自動擁有 [擁有者] 角色。
新增擁有者、參與者或 DevTest Labs 使用者
實驗室擁有者可以使用 Azure 入口網站或 Azure PowerShell 指令碼,將成員新增至實驗室角色。 所新增的使用者可以是具備有效 Microsoft 帳戶 (MSA) 的外部使用者。
Azure 權限會從父範圍傳播至子範圍。 Azure 訂用帳戶中包含實驗室的擁有者,會自動成為訂用帳戶的 DevTest Labs 服務、實驗室和實驗室 VM 與資源的擁有者。 訂用帳戶擁有者可以將擁有者、參與者和 DevTest Labs 使用者新增至訂用帳戶中的實驗室。
注意
所新增實驗室擁有者的系統管理範圍比訂用帳戶擁有者的範圍更狹窄。 所新增擁有者無法完整存取 DevTest Labs 服務所建立的某些資源。
必要條件
若要將成員新增至實驗室,您必須:
- 透過直接或以繼承為訂用帳戶擁有者身分成為實驗室擁有者。
- 以擁有者或使用者存取系統管理員身分登入 Azure 入口網站。
使用 Azure 入口網站新增實驗室成員
若要新增成員:
- 在訂用帳戶層級,開啟訂用帳戶頁面。
- 在實驗室層級,開啟具有實驗室的資源群組,然後從資源清單中選取實驗室。
在訂用帳戶或實驗室的左側導覽中,選取 [存取控制 (IAM)]。
選取 [新增>][新增角色指派]。
在 [新增角色指派] 頁面上,選取 [擁有者]、[參與者] 或 [DevTest Labs 使用者] 角色,然後選取 [下一步]。
在 [成員] 索引標籤上,選取 [選取成員]。
在 [選取成員] 畫面上,選取您要新增的成員,然後選取 [選取]。
選取 [檢閱 + 指派],然後在檢閱詳細資料之後,再次選取 [檢閱 + 指派]。
使用 Azure PowerShell,將 DevTest Labs 使用者新增至實驗室
注意
建議您使用 Azure Az PowerShell 模組來與 Azure 互動。 若要開始使用,請參閱 安裝 Azure PowerShell。 若要了解如何移轉至 Az PowerShell 模組,請參閱將 Azure PowerShell 從 AzureRM 移轉至 Az。
您可以使用下列 Azure PowerShell 指令碼,將 DevTest Labs 使用者新增至實驗室。 指令碼需要使用者位於 Microsoft Entra ID 中。 如需將外部使用者新增至 Microsoft Entra ID 做為來賓的相關資訊,請參閱 新增來賓使用者。 如果使用者不是位於 Microsoft Entra ID 中,請改用入口網站程序。
在下列指令碼中,更新 # Values to change
註解底下的參數值。 您可以從 Azure 入口網站中的實驗室主頁面取得 subscriptionId
、labResourceGroup
及 labName
值。
# Add an external user to a lab user role in DevTest Labs.
# Make sure the guest user is added to Azure AD.
# Values to change
$subscriptionId = "<Azure subscription ID>"
$labResourceGroup = "<Lab's resource group name>"
$labName = "<Lab name>"
$userDisplayName = "<User's display name>"
# Log into your Azure account.
Connect-AzAccount
# Select the Azure subscription that contains the lab. This step is optional if you have only one subscription.
Select-AzSubscription -SubscriptionId $subscriptionId
# Get the user object.
$adObject = Get-AzADUser -SearchString $userDisplayName
# Create the role assignment.
$labId = ('subscriptions/' + $subscriptionId + '/resourceGroups/' + $labResourceGroup + '/providers/Microsoft.DevTestLab/labs/' + $labName)
New-AzRoleAssignment -ObjectId $adObject.Id -RoleDefinitionName 'DevTest Labs User' -Scope $labId