none
Remove-ADComputer を実行すると「アクセスが拒否されました」と出て、PCが削除できない。

    質問

  • お世話になっております。
    表題の件、ADサーバに登録されているPCで有効でないものをPowerShellにて削除しようとしましたが、
    アクセスが拒否され、削除できません。
    削除できる方法をご教授いただけますか。
    以下に詳細を記載します。

    <環境>
    Windows Server 2008 R2 Standard
    ドメインコントローラサーバ
    UACは既定
    DomainAdmin、Administratorsの権限を持つユーザーでコンソールログイン

    <行ったこと>
    上の環境にて「Windows PowerShell 用の Active Directory モジュール」を起動し、
    「Get-ADComputer -filter { Enabled -eq "False" } | Remove-ADComputer -Confirm:$false」を実行

    <結果>
    Remove-ADComputer : アクセスが拒否されました。
    発生場所 行:1 文字:67
    + Get-ADComputer -filter { Enabled -eq "False" } | Remove-ADComputer
    <<<<  -Confirm:$false + CategoryInfo
    : PermissionDenied: ([コンピュータ名]) [Remove-ADComputer]、UnauthorizedAccessException
    + FullyQualifiedErrorId : アクセスが拒否されました。
    ,Microsoft.ActiveDirectory.Manageme nt.Commands.RemoveADComputer

    お手数おかけしますが、よろしくお願いいたします。

    2017年2月21日 4:00

回答

  • こんにちは。

    AD の ユーザーとコンピューターに登録されている コンピューターアカウントのオブジェクトで、「誤って削除されないようにオブジェクトを保護する」が有効になっているのではないでしょうか?

    念のため、こちらの設定を確認して、オブジェクトを保護する設定が無効になっていることを確認してから実施されてはいかがでしょうか。

    2017年2月21日 4:48
  • チャブーンです。

    UACが既定、ということですから、PowerShellやツールを実行する際「管理者として実行」モードで起動する必要があります。ただのダブルクリックでは(管理者権限があっても)既定では管理者権限が完全に与えられないためです。「管理者として実行」モードは、右クリックで明示指定する必要があります。


    フォーラムは有償サポートとは異なる「コミュニティ」です。フォーラムでご質問頂くにあたっての注意点 をご一読のうえ、お楽しみください。

    2017年2月21日 4:52
  • 対象のComputerオブジェクトの配下に、他のオブジェクトがぶら下がってるということはないですか?

    Get-ADObject -LDAPFilter "(objectClass=*)" -SearchBase "対象ComputerのDistinguishedName" -SearchScope "OneLevel" のようにして検索できます。

    例えばHyper-Vの仮想マシンのComputerオブジェクトには、"Windows Virtual Machine"という名前のserviceConnectionPointオブジェクトがぶら下がっているので、先にこれを消さないとComputerオブジェクトが消せません。

    (というようなことは、Windows Server 2012以降のActive Directory管理センターで、手動で仮想マシンのComputerオブジェクトを消したときのPowerShell履歴を見たら分かりました…。Removeしてみて失敗したら子オブジェクトを検索して、子オブジェクトをRemoveしてから再度親のRemoveを試みるようになっていました。)

    2017年2月21日 6:06
    モデレータ

すべての返信

  • 追記です。

    「Windows PowerShell 用の Active Directory モジュール」を管理者権限で実行しても結果は同じでした。

    2017年2月21日 4:13
  • こんにちは。

    AD の ユーザーとコンピューターに登録されている コンピューターアカウントのオブジェクトで、「誤って削除されないようにオブジェクトを保護する」が有効になっているのではないでしょうか?

    念のため、こちらの設定を確認して、オブジェクトを保護する設定が無効になっていることを確認してから実施されてはいかがでしょうか。

    2017年2月21日 4:48
  • チャブーンです。

    UACが既定、ということですから、PowerShellやツールを実行する際「管理者として実行」モードで起動する必要があります。ただのダブルクリックでは(管理者権限があっても)既定では管理者権限が完全に与えられないためです。「管理者として実行」モードは、右クリックで明示指定する必要があります。


    フォーラムは有償サポートとは異なる「コミュニティ」です。フォーラムでご質問頂くにあたっての注意点 をご一読のうえ、お楽しみください。

    2017年2月21日 4:52
  • mattsu0119 さま

    ご返信ありがとうございます。

    「Active Directory ユーザーとコンピューター」の画面上で削除対象のPCを右クリック - プロパティ
    のオブジェクトタブのところのチェックは入っていません。

    2017年2月21日 4:53
  • チャブーン さま

    ご返信ありがとうございます。

    追記の書き方が不明瞭で申し訳ありません。
    「Windows PowerShell 用の Active Directory モジュール」を右クリック - 「管理者として実行」ののち
    該当のコマンドを入力しても「アクセスが拒否されました」のメッセージが出ます。

    2017年2月21日 4:58
  • 対象のComputerオブジェクトの配下に、他のオブジェクトがぶら下がってるということはないですか?

    Get-ADObject -LDAPFilter "(objectClass=*)" -SearchBase "対象ComputerのDistinguishedName" -SearchScope "OneLevel" のようにして検索できます。

    例えばHyper-Vの仮想マシンのComputerオブジェクトには、"Windows Virtual Machine"という名前のserviceConnectionPointオブジェクトがぶら下がっているので、先にこれを消さないとComputerオブジェクトが消せません。

    (というようなことは、Windows Server 2012以降のActive Directory管理センターで、手動で仮想マシンのComputerオブジェクトを消したときのPowerShell履歴を見たら分かりました…。Removeしてみて失敗したら子オブジェクトを検索して、子オブジェクトをRemoveしてから再度親のRemoveを試みるようになっていました。)

    2017年2月21日 6:06
    モデレータ
  • 牟田口 さま

    ご返信ありがとうございます。
    教えていただいたコマンドを入力し子オブジェクトの有無を確認しましたが、ありませんでした。

    そして、大変恐縮かつパソコンの素人のような発言ですが、
    何度が「Remove-ADComputer」コマンドを試しているうちに(設定を何も変えていないのに)削除に成功してしまいました。
    何がトリガーとなって削除に成功したのか不明です。
    一度削除に成功すると「New-ADComputer」で「Enabled が "False"」のPCを追加しても削除できるようになっています。

    2017年2月21日 6:24
  • この件はいまだ解決していませんが、削除できたり、できなかったりを繰り返しています。
    まったく削除できないわけではないのでいったんクローズします。

    2017年2月27日 6:19