デバイスのカスタム プロパティ
Configuration Manager (現在のブランチ) に適用
多くのお客様は、Configuration Managerの外部にある他のデータを持っていますが、デプロイのターゲット設定、コレクションの構築、レポート作成に役立ちます。 このデータは通常、本質的に技術的ではなく、クライアントでは検出できず、単一の外部ソースから取得されます。 たとえば、次のデバイス属性の一部を持つ中央 IT インフラストラクチャ ライブラリ (ITIL) システムまたは資産データベースです。
- 物理的な場所
- 組織の優先順位
- カテゴリ
- コスト センター
- 部署
バージョン 2107 以降では、 管理サービスを使用 して、このデータをデバイスに設定できます。 サイトは、プロパティの名前とその値を Device Custom Properties クラスとしてサイト データベースに格納します。 その後、Configuration Managerのカスタム プロパティを使用してレポートを作成したり、コレクションを作成したりできます。
バージョン 2111 以降では、Configuration Manager コンソールでこれらのカスタム プロパティを作成および編集できます。 この新しいユーザー インターフェイスにより、これらのプロパティの表示と編集が容易になります。
注:
カスタム プロパティ 値には Unicode 文字を使用できますが、プロパティ 名には使用できません。 詳細については、Configuration Managerでの Unicode と ASCII のサポートに関するページを参照してください。
前提条件
API 呼び出しを行うアカウントには、ターゲット デバイスを含むコレクションに対する次のアクセス許可が必要です。
- プロパティを設定するには: リソースの変更
- プロパティを表示するには: リソースの読み取り
- プロパティを削除するには: リソースの削除
UI を使用してプロパティを設定する
バージョン 2111 以降に適用されます
Configuration Manager コンソールで、[資産とコンプライアンス] ワークスペースに移動し、[デバイス] ノードを選択します。
デバイスを選択し、リボンで [プロパティ] を選択します
[ カスタム プロパティ ] タブに切り替えます。
ゴールド スター アイコン を選択して、新しいカスタム プロパティを作成します。 プロパティの名前を指定し、このデバイスの値を設定します。 [ OK] を選択 してプロパティを保存します。
API を使用してプロパティを設定する
バージョン 2107 以降に適用されます
デバイスでプロパティを設定するには、 SetExtensionData API を使用します。 JSON 本文を使用して URI https://<SMSProviderFQDN>/AdminService/v1.0/Device(<DeviceResourceID>)/AdminService.SetExtensionData
への POST 呼び出しを行います。 リソース ID は整数値です (例: 16777345
)。
次の JSON の例では、デバイスの資産タグと場所に対して 2 つの名前と値のペアを設定します。
{
"ExtensionData": {
"AssetTag":"0580255",
"Location":"Dublin"
}
}
View プロパティ
GetExtensionData API を使用して、カスタム プロパティを表示します。
1 つのデバイスでプロパティを表示するには、URI https://<SMSProviderFQDN>/AdminService/v1.0/Device(<DeviceResourceID>)/AdminService.GetExtensionData
を GET 呼び出します。
すべてのデバイスのプロパティを表示するには、URI https://<SMSProviderFQDN>/AdminService/v1.0/Device/AdminService.GetExtensionData
を GET 呼び出します。 この呼び出しは、読み取りアクセス許可を持つデバイスからプロパティ値を返します。
プロパティを削除する
すべてのデバイスからプロパティ値を削除するには、デバイス ID なしで DeleteExtensionData API を使用します。 特定のデバイスからのプロパティのみを削除するデバイス リソース ID を含めます。 URI https://<SMSProviderFQDN>/AdminService/v1.0/Device/AdminService.DeleteExtensionData
への POST 呼び出しを行います。
コレクションを作成する
カスタム プロパティに基づいてクエリ ルールを使用してコレクションを作成するには、次の手順に従います。
Configuration Manager コンソールで、コレクションを作成します。
[メンバーシップルール] ページの [ ルールの追加 ] ボックスの一覧で、[ クエリ ルール] を選択します。
[クエリ ルール] プロパティ ウィンドウで、クエリの [名前] を指定します。 次に、[ クエリ ステートメントの編集] を選択します。
[クエリ ステートメント] プロパティ ウィンドウで、[条件] タブに切り替えます。次に、新しい条件を追加するゴールデン アスタリスク (
*
) を選択します。[条件] プロパティ ウィンドウで、次の値を選択します。
- 属性クラス: デバイス のカスタム プロパティ
- 属性: PropertyName
[演算子] を選択し、プロパティの名前を [値] として指定します。
この時点で、条件プロパティ ウィンドウは次の図のようになります。
[ OK] を選択 して条件を保存します。
手順を繰り返して、 PropertyValue 属性の条件を追加します。
この時点で、コレクション Query ステートメント プロパティ ウィンドウは次の図のようになります。
[ OK] を選択 して、すべてのプロパティ ウィンドウを閉じます。 次に、ウィザードを完了してコレクションを作成します。
WQL ステートメントの例
次のサンプル クエリを使用することもできます。 [クエリ ステートメントのプロパティ] ウィンドウで、[ クエリ言語の表示 ] を選択してクエリ ステートメントを貼り付けます。
select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client
from SMS_R_System inner join SMS_G_System_ExtensionData on SMS_G_System_ExtensionData.ResourceId = SMS_R_System.ResourceId
where SMS_G_System_ExtensionData.PropertyName = "AssetTag" and SMS_G_System_ExtensionData.PropertyValue = "0580255"
注:
コレクションの増分更新でカスタム プロパティ WQL ステートメントを使用するには、更新プログラムのロールアップ以降Configuration Managerバージョン 2107 を使用します。