在 SPF 中管理租户和用户角色
System Center - Service Provider Foundation (SPF) 不会创建用户角色或定义其范围。 若要设置租户,需要一个证书公钥,用于验证代表租户发出的声明。
创建证书
如果没有要使用的现有 CA 证书,可以生成自签名证书。 可以从证书导出公钥和私钥,并将公钥与租户相关联。
获取自签名证书
使用 makecert.exe
(证书创建工具)创建证书。
以管理员身份打开命令提示符。
通过运行下面的命令生成证书:
makecert -r -pe -n "cn=contoso.com" -b 07/12/2012 -e 09/23/2014 -ss My -sr CurrentUser -sp "Microsoft RSA SChannel Cryptographic Provider" -sy 12 -sky exchange
此命令将证书放置在当前用户证书存储中。 若要访问它,请在“开始”屏幕上输入 certmgr.msc,然后在“应用”结果中选择 certmgr.msc。 在 certmgr 窗口中,选择“证书 - 当前用户>个人>证书”文件夹。
导出公钥
- 右键单击证书>“所有任务>导出”。
- 在“导出私钥”中,选择“否”,不导出“>下一步”私钥。
- 在 “导出文件格式”中,选择 Base-64 编码的 X.509()。CER)>下一步。
- 在“要导出的文件”中,为“下一步”证书>指定路径和文件名。
- 在 “完成证书导出向导”中,选择“ 完成”。
若要使用 PowerShell 导出,请运行:
``S C:\> $path = "C:\Temp\tenant4D.cer"
PS C:\> $cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($path)
PS C:\> $key = [Convert]::ToBase64String($cert.RawData)``
导出私钥
- 右键单击证书>“所有任务>导出”。
- 在“导出私钥”中,选择“是”,然后导出私钥>。 如果此选项不可用,并且你生成了自签名证书,请确保它包含 -pe 选项。
- 在 “导出文件格式”中,选择 “个人信息交换 - PKCS #12”(。PFX). 如果可能,请确保在认证路径中包含所有证书,然后选择“下一步”。
- 在“要导出的文件”中,为“下一步”证书>指定路径和文件名。
- 在 “完成证书导出向导”中,选择“ 完成”。
创建租户
Service Provider Foundation 不会创建用户角色或定义其范围(例如云)、资源或操作。 相反,该 New-SCSPFTenantUserRole
cmdlet 会为具有用户角色名称的租户创建关联。 创建该关联时,它还会生成一个 ID,该 ID 可用于在 System Center 2016 - Virtual Machine Manager 中创建角色的相应 ID。
还可以使用 开发人员指南使用管理员 OData 协议服务创建用户角色。
以管理员身份运行 SPF 命令 shell。
输入以下命令以创建租户。 此命令假定
$key
变量包含公钥。PS C:\> $tenant = New-SCSPFTenant -Name "contoso.cloudspace.com" -IssuerName "contoso.cloudspace.com" -Key $key
运行以下命令,验证是否已成功导入租户的公钥:
PS C:\> Get-SCSPFTrustedIssuer
下一过程使用
$tenant
创建的变量。
在 VMM 中创建租户管理员角色
输入以下命令并针对 Windows PowerShell 命令行界面同意此提升:
PS C:\> Set-Executionpolicy remotesigned
输入以下命令以导入 VMM 模块:
PS C:\> Import-Module virtualmachinemanager
使用 Windows PowerShell
T:Microsoft.SystemCenter.VirtualMachineManager.Cmdlets.New\-SCUserRole
cmdlet 创建用户角色。 此命令假定$tenant
按照上述过程中所述创建的变量。PS C:\> $TARole = New-SCUserRole -Name contoso.cloudspace.com -ID $tenant.Id -UserRoleProfile TenantAdmin
注意
请注意,如果以前使用 VMM 管理控制台创建用户角色,则其权限将由 cmdlet 指定的
New\-SCSUserRole
用户角色覆盖。验证是否已创建用户角色,方法是验证该角色是否在 VMM 管理控制台的“设置”工作区中列出。
通过选择角色并选择 工具栏上的“属性 ”来定义角色:
在“作用域”上,选择一个或多个云。
在 “资源”上,添加任何资源,例如模板。
在 “操作”上,选择一个或多个操作。
对分配给租户每台服务器重复此过程。
下一过程使用
$TARole
创建的变量。
在 VMM 中创建租户自助服务用户角色
输入以下命令,在 SPF 中为创建的租户创建自助服务用户:
PS C:\> $TenantSSU = New-SCSPFTenantUserRole -Name ContosoCloudSpaceSSU -Tenant $tenant
输入以下命令在 VMM 中创建相应的租户用户角色:
PS C:\> $vmmSSU = New-SCUserRole -Name ContosoCloudSpaceVMMSSU -UserRoleProfile SelfServiceUser -ParentUserRole $TARole -ID $TenantSSU.ID
验证是否已创建用户角色,方法是验证该角色是否在 VMM 管理控制台的“设置”工作区中列出。 请注意,角色的父项为租户管理员。
根据需要为每个租户重复此过程。