在 SPF 中管理租户和用户角色
重要
此版本的 Service Provider Foundation (SPF) 已终止支持;建议 升级到 SPF 2022。
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) >Next.
- 在“要导出的文件”中,指定证书>“下一步”的路径和文件名。
- 在 “完成证书导出向导”中,选择“ 完成”。
若要使用 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 管理控制台的“设置”工作区中的“用户角色”中列出。 请注意,角色的父项为租户管理员。
根据需要为每个租户重复此过程。
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈