Office 365 ポータルまたは Windows PowerShell 用 Microsoft Online Services モジュールでユーザーの確認エラーが表示される

適用対象: Exchange OnlineOffice 365 User and Domain Management

現象


Office 365 ポータルまたは Windows PowerShell 用 Microsoft Azure Active Directory モジュールで、管理者に確認エラーが表示されます。 
  • Office 365 ポータルで、以下の現象が発生します (1 つまたは複数)
    • 赤色で囲まれた "X" がユーザーの横に表示される。
    • ユーザー管理ページの上部に次のエラー メッセージが表示される。
      "1 つ以上のユーザー アカウントにエラーがあります。影響のあるユーザーとエラー メッセージの詳細を表示するには、ユーザーのリストを [エラーのあるユーザー] でフィルター処理し、ユーザーを選択し、[編集] をクリックします。"
      また、ユーザーのプロパティを表示すると、次の形式でエラー メッセージが表示されます。
       
      <サービス>: <エラー メッセージ>

      エラー メッセージ例:
      Exchange: The name "<Name>" is already being used. Please try another name (Exchange: <名前> は既に使用されています。別の名前を指定してください。)
  • Windows PowerShell 用 Azure Active Directory モジュールで、コマンドレットを実行すると、エラー メッセージが表示されます。 たとえば、Get-MsolUser -UserPrincipalName johnsmith@contoso.com | Select Errors, ValidationStatus を実行すると、次のエラー メッセージが表示されます。
    Errors : {Microsoft.Online.Administration.ValidationError,
    Microsoft.Online.Administration.ValidationError,
    Microsoft.Online.Administration.ValidationError}
    ValidationStatus : Error

原因


エラーにより、原因は異なります。エラーの詳細は、Windows PowerShell 用 Azure Active Directory モジュールのオブジェクトに応じた適切なコマンドレットを実行して取得します。 

連絡先

以下のコマンドレットは、連絡先に関するすべてのエラーを抽出します。
$errors = (Get-MsolContact –ObjectID < Object_ID >).Errors 
次のコマンドレットは、各エラーに対して繰り返し実行され、サービス情報とエラー メッセージを抽出します。
$errors | foreach-object {"`nService: "+ $_.ErrorDetail.Name.split("/")[0]; "Error Message: "+ $_.ErrorDetail.ObjectErrors.ErrorRecord.ErrorDescription} 
以下は、コマンドレット例です。
$errors = (Get-MsolContact –ObjectID 430ecced-b2c5-455b-94df-ab2b5756b060 ).Errors 
$errors | foreach-object {"`nService: "+ $_.ErrorDetail.Name.split("/")[0]; "Error Message: " + $_.ErrorDetail.ObjectErrors.ErrorRecord.ErrorDescription} 

グループ

以下のコマンドレットは、グループに関するすべてのエラーを抽出します。
$errors = (Get-MsolGroup –ObjectID < Object_ID >).Errors 
次のコマンドレットは、各エラーに対して繰り返し実行され、サービス情報とエラー メッセージを抽出します。
$errors | foreach-object {"`nService: "+ $_.ErrorDetail.Name.split("/")[0]; "Error Message: "+ $_.ErrorDetail.ObjectErrors.ErrorRecord.ErrorDescription} 
以下は、コマンドレット例です。
$errors = (Get-MsolContact –ObjectID 430ecced-b2c5-455b-94df-ab2b5756b060 ).Errors 
$errors | foreach-object {"`nService: " + $_.ErrorDetail.Name.split("/")[0]; "Error Message: " + $_.ErrorDetail.ObjectErrors.ErrorRecord.ErrorDescription} 

ユーザー

以下のコマンドレットは、ユーザーに関するすべてのエラーを抽出します。
$errors = (Get-MsolUser -UserPrincipalName "< User_ID >").Errors 
次のコマンドレットは、Azure AD 上に存在するすべてのユーザーに対するすべてのエラーを抽出します。
Get-MsolUser -HasErrorsOnly -All | ft DisplayName,UserPrincipalName,@{Name="Error";Expression={($_.errors[0].ErrorDetail.objecterrors.errorrecord.ErrorDescription)}} -AutoSize -wrap
以下のコマンドレットを使用し、エラーを CSV 形式で取得します。
Get-MsolUser -HasErrorsOnly | select DisplayName,UserPrincipalName,@{Name="Error";Expression={($_.errors[0].ErrorDetail.objecterrors.errorrecord.ErrorDescription)}} | Export-csv c:\temp\validationerrors.csv 

以下のコマンドレットは、各エラーを繰り返し、サービス情報およびエラー メッセージを抽出します。

$errors | foreach-object {"`nService: " + $_.ErrorDetail.Name.split("/")[0]; "Error Message: " + $_.ErrorDetail.ObjectErrors.ErrorRecord.ErrorDescription}
例えば、以下のコマンドレットを実行します。
$errors = (get-msoluser -userprincipalname "johnsmith@contoso.com").Error 
Get-MsolUser -HasErrorsOnly -All | ft DisplayName,UserPrincipalName,@{Name="Error";Expression={($_.errors[0].ErrorDetail.objecterrors.errorrecord.ErrorDescription)}} -AutoSize -wrap
Get-MsolUser -HasErrorsOnly | select DisplayName,UserPrincipalName,@{Name="Error";Expression={($_.errors[0].ErrorDetail.objecterrors.errorrecord.ErrorDescription)}} | Export-csv c:\temp\validationerrors.csv
$errors | foreach-object {"`nService: "+ $_.ErrorDetail.Name.split("/")[0]; "Error Message: "+ $_.ErrorDetail.ObjectErrors.ErrorRecord.ErrorDescription} 
結果は以下のようになります。
サービス: MicrosoftCommunicationsOnline

”Error Message: The value of the msRTCSIP-LineURI field in your local Active Directory is not unique, or the WorkPhone filed for the user conflicts with other users. Correct the value in your local Active Directory or in the tenant admin UI. After you correct it, the value will be updated in your Microsoft Online Services directory during the next Active Directory synchronization.”
(エラー メッセージ: このユーザーのローカルの Active Directory にある msRTCSIP-LineURI の値が一意のものではありません。または、他のユーザーと WorkPhone が競合しています。ローカルの Active Directory またはテナント管理者の UI で値を修正してください。修正後、次回の Active Directory 同期の間に Microsoft Online Services ディレクトリの値は更新されます。)

解決方法


以下は、共通する確認エラーの一覧表です。

注: すべてのエラーは記載されていません。表にないエラーについては、エラー メッセージ内の情報を基に解決を試みます。
エラーメッセージ原因解決方法
Exchange: The name … is already being used. Please try another name.
(Exchange: <名前> は既に使用されています。別の名前を指定してください。)
不明次のコマンドレットを実行します。

Set-MsolUser –UserPrincipalName <UserPrincipalName of the User>
Exchange: Couldn't find object "<ObjectID>". Please make sure that it was spelled correctly or specify a different object.
(Exchange: オブジェクト <オブジェクト ID> が見つかりませんでした。オブジェクト名が正しく入力されていることを確認するか、別のオブジェクトを指定してください。)
指定のオブジェクトに関連する別のオブジェクト (例: アクセス権限) があり、指定のオブジェクトが見つからない場合。アクセス権限 (フル アクセス、Send As、Send On Behalf など) を確認し、ユーザーが存在することを確認するか、該当のアクセス権限を外します。
Exchange: Group "namprd03.prod.outlook.com/Microsoft Exchange Hosted Organizations/contoso.onmicrosoft.com/Puget Sound/BLDG 1" can't be converted to a room list. Room lists can only have room mailboxes or room lists as members. "namprd03.prod.outlook.com/Microsoft Exchange Hosted Organizations/contoso.onmicrosoft.com/BLDG 1\/Room100" is not a room mailbox or a room list.
(Exchange: グループ "namprd03.prod.outlook.com/Microsoft Exchange Hosted Organizations/contoso.onmicrosoft.com/Puget Sound/BLDG 1" を会議室リストに変換できません。会議室リストにメンバーとして含めることができるのは、会議室メールボックスと会議室リストのみです。"namprd03.prod.outlook.com/Microsoft Exchange Hosted Organizations/contoso.onmicrosoft.com/BLDG 1\/Room100" は、会議室メールボックスまたは会議室リストではありません。)
会議室メールボックスまたは会議室リストのメンバーではない会議室のリストです。 グループが会議室メールボックスまたは会議室リストのみを含んでいることを確認します。詳細は、次の Microsoft TechNet Web サイトを参照してください。
Exchange: No mailbox plan with SKU 'BPOS_L_Standard' was found. User has no access to email.
(Exchange: SKU 機能 'BPOS_L_Standard' を持つメールボックスは見つかりませんでした。ユーザーには電子メールへのアクセス権がありません。)
会社が以前に Office 365 for professionals or small businesses プランまたはOffice 365 Small Business Premium プランを利用していた場合。解決方法はありません。ユーザーは電子メールにアクセス権があります。
Lync: The value of the msRTCSIP-LineURI field in your local Active Directory is not unique, or the WorkPhone filed for the user conflicts with other users. Correct the value in your local Active Directory or in the tenant admin UI. After you correct it, the value will be updated in your Microsoft Online Services directory during the next Active Directory synchronization.
(Lync: このユーザーのローカルの Active Directory の msRTCSIP-LineURI の値が一意のものではありません。または、他のユーザーと WorkPhone が競合しています。ローカルの Active Directory またはテナント管理者の UI で値を修正してください。修正後、次回の Active Directory 同期の間に Microsoft Online Services ディレクトリの値は更新されます。)
More than one user in Office 365 has msRTCSIP-LineUR一致する I または WorkPhone のプロパティです。複数の Office 365 会社で同じmsRTCSIP-LineURI または WorkPhone 値を持つユーザーが複数存在するシナリオが該当します。msRTCSIP-LineURI または WorkPhone のプロパティは Office365 で一意なものである必要があります。

追加情報


エラーのあるオブジェクトを表示するには、次の Windows PowerShell 用 Azure Active Directory モジュールのコマンドレットを実行します。
  • Get-MsolUser | Where {$_.Errors –ne $null} | Select ObjectID, DisplayName 
  • Get-MsolContact | Where {$_.Errors –ne $null} | Select ObjectID, DisplayName 
  • Get-MsolGroup | Where {$_.Errors –ne $null} | Select ObjectID, DisplayName 
 本資料に記載されている Windows PowerShell コマンドを使用するには、Windows PowerShell 用 Azure Active Directory モジュールが必要です。

Windows PowerShell 用Azure Active Directory モジュールの詳細は、以下の Microsoft web サイトを参照してください。

AzureADHelp

 

その他トピックは、Microsoft コミュニティ Web サイトを参照してください。

Steps to reproduce:
Product Bug Number: CI 12557, CI 16110, CI 17391, CI 19809, CI24025, CI 24504, CI 25274, CI 25727CI 15852, CI 64412,
Author ID (email alias): willfid
Writer ID (email alias): willfid, v-lanac
Tech Review ID (email alias): willfid
Edit Review ID (email alias): v-anwale
Contributor ID (email alias):