---
generated_at: 2026-02-18 10:40:00
metrics:
  claims_total: 35
  claims_with_evidence: 33
  claims_without_evidence: 2
confidence_derived: 0.94
---

# 根拠レポート：283-CMオブジェクト取得

## 本レポートについて

### 目的
本レポートは、生成された設計書・ドキュメントの信頼性を検証し、人間レビュアーが効率的にレビューできるようにすることを目的としています。

### チェック方法
以下の観点でドキュメントの内容（Claim：主張）を検証しています：

1. **根拠の有無確認**：各主張に対して、ソースコード・既存設計書・要件定義書などの根拠（Evidence）が存在するか
2. **根拠との整合性**：主張の内容が根拠と矛盾していないか
3. **網羅性**：参照すべき情報源を適切にカバーしているか

### 信頼度スコアの算出
- **confidence_derived** = 根拠あり件数 / 総主張件数
- 状態「○」：根拠あり、「△」：根拠不足または要確認

### 本レポートの使い方
1. まず「サマリー」で全体の信頼度と優先レビュー項目を確認
2. 「Claims と根拠の対応」で △ の項目を重点的にレビュー
3. 「不足情報」で補完が必要な情報源を確認

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**0.94**
  - 根拠あり：33 / 35、根拠なし：2
- 優先レビュー（高）
  1. **Invoke-Command2関数の実装詳細**：内部関数の定義ファイルが特定されていない
  2. **ManagementConnectionクラスのメソッド詳細**：C#定義ファイルが特定されていない

## 2) 参照した情報（Evidence一覧）
> ここに「実在するもの」だけ列挙。抽出フェーズで付けたIDをそのまま出す。

- E-01: `public/Get-DbaCmObject.ps1` 1-442行目
- E-02: `public/Get-DbaCmObject.ps1` コメントブロック 2-85行目
- E-03: `public/Get-DbaCmObject.ps1` パラメータ定義 88-104行目
- E-04: `public/Get-DbaCmObject.ps1` Resolve-CimError関数 114-241行目
- E-05: `public/Get-DbaCmObject.ps1` process関数 246-441行目
- E-06: 画面機能マッピング.csv 696行目
- E-07: `public/Get-DbaCmObject.ps1` CimRM処理 292-320行目
- E-08: `public/Get-DbaCmObject.ps1` CimDCOM処理 323-351行目
- E-09: `public/Get-DbaCmObject.ps1` WMI処理 354-406行目
- E-10: `public/Get-DbaCmObject.ps1` PowerShellRemoting処理 409-437行目

## 3) Claims と根拠の対応（レビューの主戦場）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | -ClassNameはClassパラメータセットに属する | E-03 (89行目) | ○ |
| C-02 | -QueryはQueryパラメータセットに属する | E-03 (92-93行目) | ○ |
| C-03 | デフォルト名前空間はroot\cimv2 | E-03 (98行目) | ○ |
| C-04 | プロトコル優先順位はCimRM > CimDCOM > Wmi > PowerShellRemoting | E-05 (291行目switch順序) | ○ |
| C-05 | 出力型はManagementObjectまたはCimInstance | E-02 (61-62行目) | ○ |
| C-06 | CimRMはGetCimRMInstanceを呼び出す | E-07 (296行目) | ○ |
| C-07 | CimDCOMはGetCimDCOMInstanceを呼び出す | E-08 (327行目) | ○ |
| C-08 | WMIはGet-WmiObjectを使用 | E-09 (380行目) | ○ |
| C-09 | PowerShellRemotingはInvoke-Command2を使用 | E-10 (422行目) | ○ |
| C-10 | 成功時はReportSuccessを呼び出す | E-07 (300行目), E-08 (331行目), E-09 (383行目), E-10 (425行目) | ○ |
| C-11 | 成功時はAddGoodCredentialを呼び出す | E-07 (301行目), E-08 (332行目), E-09 (384行目), E-10 (426行目) | ○ |
| C-12 | 認証失敗時はAddBadCredentialを呼び出す | E-07 (309行目), E-08 (340行目), E-09 (393行目) | ○ |
| C-13 | 接続失敗時はReportFailureを呼び出す | E-07 (314行目), E-08 (345行目), E-09 (401行目), E-10 (432行目) | ○ |
| C-14 | Resolve-CimError関数はCIMエラーを解釈 | E-04 | ○ |
| C-15 | CIMエラーコード1-20のメッセージマップが定義されている | E-04 (165-186行目) | ○ |
| C-16 | 0x8007052eは認証失敗を示す | E-04 (197-199行目) | ○ |
| C-17 | 0x80070005も認証失敗を示す | E-04 (200-202行目) | ○ |
| C-18 | 0x8004100eは無効な名前空間を示す | E-04 (208-210行目) | ○ |
| C-19 | 0x80041010は無効なクラス名を示す | E-04 (212-214行目) | ○ |
| C-20 | キャッシュ無効化はdisable_cache変数で制御 | E-05 (108行目), E-07 (302行目) | ○ |
| C-21 | キャッシュはConnectionHost.Connectionsに保存 | E-07 (302行目), E-08 (333行目) | ○ |
| C-22 | コンピュータ名は小文字に正規化 | E-05 (252行目) | ○ |
| C-23 | -ForceでGetConnectionTypeに渡される | E-05 (285行目) | ○ |
| C-24 | -SilentlyContinueでStop-Functionに渡される | E-05 (288行目) | ○ |
| C-25 | -DoNotUseで除外プロトコルを指定 | E-05 (281-282行目) | ○ |
| C-26 | 画面No283はCMオブジェクト取得 | E-06 | ○ |
| C-27 | 機能No94はGet-DbaCmObject | E-06 | ○ |
| C-28 | Friedrich Weinmannが開発 | E-02 (51行目) | ○ |
| C-29 | ドキュメントURLはhttps://dbatools.io/Get-DbaCmObject | E-02 (58行目) | ○ |
| C-30 | Win32_OperatingSystemの出力プロパティ | E-02 (68-69行目の例) | ○ |
| C-31 | Win32_ComputerSystemの出力プロパティ | E-02 (69-70行目の例) | ○ |
| C-32 | Win32_Serviceの出力プロパティ | E-02 (70-71行目の例) | ○ |
| C-33 | PSAvoidUsingWMICmdlet警告を抑制 | E-01 (87行目) | ○ |
| C-34 | Invoke-Command2関数の詳細実装 | **根拠なし** | △ |
| C-35 | ManagementConnectionのメソッド定義 | **根拠なし** | △ |

## 4) 不足情報（Unknown / Missing）
- Invoke-Command2内部関数の定義ファイルが特定されていない
  - 候補：internal/functions/ または private/ フォルダ
- ManagementConnectionクラスのC#定義（GetCimRMInstance, QueryCimRMInstance等のメソッド）
  - 候補：bin/library内のDLL / C#プロジェクト

## 5) リスクフラグ（レビュー観点）
- 0: 低リスク - 主要ロジックはPowerShellソースコードで確認可能
- 1: 中リスク - 内部依存関数/クラスの詳細は追加調査が必要

## 6) レビュアーチェックリスト（最小）
- [ ] 4つのプロトコルの処理フローが正確に記載されているか確認
- [ ] Resolve-CimErrorのエラーコードマッピングが完全か確認
- [ ] 実機でWin32_OperatingSystem等のクエリを実行し出力プロパティを検証
- [ ] -DoNotUseパラメータの動作確認
- [ ] -ForceパラメータのGetConnectionType()への影響確認
- [ ] Invoke-Command2関数の定義場所を特定
- [ ] ManagementConnectionのGetCimRMInstance等メソッドの動作確認
