本文為機器翻譯文章。如需檢視英文版,請選取 [原文] 核取方塊。您也可以將滑鼠指標移到文字上,即可在快顯視窗顯示英文原文。
譯文
原文

停用時指派使用者授權的服務存取權

 

適用版本:Office 365 Enterprise, Office 365 Midsize Business, Office 365 Small Business

上次修改主題的時間:2017-05-19

了解如何將授權指派給使用者帳戶及使用 Office 365 PowerShell 的同時停用特定的服務計劃。

Office 365 訂閱隨附的個別服務的服務計劃。Office 365 系統管理員通常需要將授權指派給使用者時,停用特定計劃。使用本文中的指示,您可以將 Office 365 授權指派時停用特定的服務計劃使用 PowerShell for 個別的使用者帳戶或多個使用者帳戶。

註記注意事項:
本文根據 Siddhartha Parmar,Microsoft 支援呈報工程師的工作。

本主題中的程序需要您連線到 Office 365 PowerShell。如需詳細指示,請參閱 連線至 Office 365 PowerShell

執行此命令來查看目前訂閱:

Get-MsolAccountSku

Get-MsolAccountSku命令顯示:

  • AccountSkuId是您的組織中 < OrganizationName > 訂閱: < 訂閱 > 格式。< OrganizationName > 為您提供當您在 Office 365 中註冊並為您的組織是唯一的值。< 訂閱 > 值是針對特定的訂閱。例如,如 litwareinc: enterprisepack、 組織名稱是 litwareinc,而訂閱名稱是 ENTERPRISEPACK (Office 365 企業版 E3)。

  • ActiveUnits是您已購買訂閱的授權數。

  • WarningUnits是尚未已更新,並將期限 30 天寬限期訂閱中的授權數。

  • ConsumedUnits是已指派給使用者訂閱授權數目。

請注意包含您想要授權的使用者在 Office 365 訂閱 AccountSkuId。此外,請確定有足夠授權指派給指派 (減去從ActiveUnitsConsumedUnits )。

接下來,執行此命令以查看關於所有訂閱中可用的 Office 365 服務計劃的詳細資料:

Get-MsolAccountSku | Select -ExpandProperty ServiceStatus

從這個命令的顯示,判斷您想要停用時指派授權給使用者的服務計劃。

以下為部分服務計劃和其對應的 Office 365 服務的清單。

 

服務計劃 描述

SWAY

Sway

INTUNE_O365

Office 365 的行動裝置管理

YAMMER_ENTERPRISE

Yammer

RMS_S_ENTERPRISE

Azure 版權管理 (RMS)

OFFICESUBSCRIPTION

Office Professional Plus

MCOSTANDARD

商務用 Skype Online

SHAREPOINTWAC

Office Online

SHAREPOINTENTERPRISE

SharePoint Online

EXCHANGE_S_ENTERPRISE

Exchange Online Plan 2

既然有 AccountSkuId 及停用的服務計劃,您可以指派個別使用者或多個使用者的授權。

單一使用者的填滿中的使用者帳戶、 AccountSkuId、 和服務計劃清單停用或移除的說明文字的使用者主體名稱和 < 和 > 字元。然後,在 PowerShell 命令提示字元執行所產生的命令。

$userUPN="<the user's account name in email format>"
$accountSkuId="<the AccountSkuId from the Get-MsolAccountSku command>"
$planList=@( <comma-separated, double-quote enclosed list of the plans to disable> )
$licenseOptions=New-MsolLicenseOptions -AccountSkuId $accountSkuId -DisabledPlans $planList
$user=Get-MsolUser -UserPrincipalName $userUPN
$usageLocation=$user.Usagelocation
Set-MsolUserLicense -UserPrincipalName $userUpn -AddLicenses $accountSkuId -ErrorAction SilentlyContinue
Sleep -Seconds 5
Set-MsolUserLicense -UserPrincipalName $userUpn -LicenseOptions $licenseOptions -ErrorAction SilentlyContinue
Set-MsolUser -UserPrincipalName $userUpn -UsageLocation $usageLocation

以下是用於 contoso:ENTERPRISEPACK 授權,名為 belindan@contoso.com、 帳戶範例命令封鎖且以停用的服務計劃 RMS_S_ENTERPRISE、 SWAY、 INTUNE_O365 及 YAMMER_ENTERPRISE:

$userUPN="belindan@contoso.com"
$accountSkuId="contoso:ENTERPRISEPACK"
$planList=@( "RMS_S_ENTERPRISE","SWAY","INTUNE_O365","YAMMER_ENTERPRISE" )
$licenseOptions=New-MsolLicenseOptions -AccountSkuId $accountSkuId -DisabledPlans $planList
$user=Get-MsolUser -UserPrincipalName $userUPN
$usageLocation=$user.Usagelocation
Set-MsolUserLicense -UserPrincipalName $userUpn -AddLicenses $accountSkuId -ErrorAction SilentlyContinue
Sleep -Seconds 5
Set-MsolUserLicense -UserPrincipalName $userUpn -LicenseOptions $licenseOptions -ErrorAction SilentlyContinue
Set-MsolUser -UserPrincipalName $userUpn -UsageLocation $UsageLocation

若要執行這項管理工作的多個使用者,建立包含 UserPrincipalName 和 UsageLocation 欄位的逗號分隔值 (CSV) 文字檔案。以下是範例:

UserPrincipalName,UsageLocation
ClaudeL@contoso.onmicrosoft.com,FR
LynneB@contoso.onmicrosoft.com,US
ShawnM@contoso.onmicrosoft.com,US

接下來,填入的輸入和輸出 CSV 檔案、 SKU 識別碼的帳戶及服務計劃來停用清單的位置和 PowerShell 命令提示字元執行所產生的命令。

$inFileName="<path and file name of the input CSV file that contains the users, example: C:\admin\Users2License.CSV>"
$outFileName="<path and file name of the output CSV file that records the results, example: C:\admin\Users2License-Done.CSV>"
$accountSkuId="<the AccountSkuId from the Get-MsolAccountSku command>"
$planList=@( <comma-separated, double-quote enclosed list of the plans to disable> )
$users=Import-Csv $inFileName
$licenseOptions=New-MsolLicenseOptions -AccountSkuId $accountSkuId -DisabledPlans $planList
ForEach ($user in $users)
{
$user.Userprincipalname
$upn=$user.UserPrincipalName
$usageLocation=$user.UsageLocation
Set-MsolUserLicense -UserPrincipalName $upn -AddLicenses $AccountSkuId -ErrorAction SilentlyContinue
sleep -Seconds 5
Set-MsolUserLicense -UserPrincipalName $upn -LicenseOptions $licenseOptions -ErrorAction SilentlyContinue
Set-MsolUser -UserPrincipalName $upn -UsageLocation $usageLocation
$users | Get-MsolUser | Select UserPrincipalName, Islicensed,Usagelocation | Export-Csv $outFileName
}

此 PowerShell 命令區塊:

  • 會顯示每個使用者的使用者主體名稱。

  • 將自訂的授權指派給每位使用者。

  • 建立已處理的所有使用者的 CSV 檔案並顯示其授權狀態。

 
顯示: