動的トークン

最終公開日 : Nov 13, 2026
Workspace Environment Management の アクション で動的トークンを使用すると、より強力な機能を実現できます。
動的トークンは以下のフィールドで使用できます。
  • グループポリシー設定
    • アクションが削除に設定されている場合: 値
    • アクションが値の設定に設定され、タイプがREG_SZ: データに設定されている場合
    • アクションが値の設定に設定され、タイプがREG_EXPAND_SZ: データに設定されている場合
    • アクションが値の設定に設定され、タイプがREG_MULTI: データに設定されている場合
注:
グループポリシー設定には、マシン設定とユーザー設定の2種類があります。マシン設定では、一部の動的トークンはサポートされていません。グループポリシー設定の動的トークンサポート を参照してください。

グループポリシー設定の動的トークンサポート

グループポリシー設定 で動的トークンを使用すると、さまざまな環境でより適応性の高いポリシー構成が可能になり、手動構成が減り、ポリシー管理が簡素化されます。
グループポリシー設定には、次の2種類があります。
  • マシン設定。これらの設定は、誰がログオンしているかに関係なく、マシンにのみ適用されます。
  • ユーザー設定。これらの設定は、どのマシンにログオンしているかに関係なく、ユーザーにのみ適用されます。
すべての動的トークンがグループポリシー設定でサポートされています。ただし、以下のものはマシン設定ではサポートされていません。
  • ハッシュタグ
    • ##FullUserName##
    • ##UserInitials##
    • ##ClientName##
    • ##ClientIPAddress##
    • ##UserLDAPPath##
    • ##ClientRemoteOS##
  • AD属性
  • HKCU配下のレジストリ
  • アプリケーション
    • アプリケーションの種類がインストールアプリケーションの場合: コマンドライン、作業ディレクトリ、およびパラメータ
    • アプリケーションの種類がファイル/フォルダの場合: ターゲット
    • アプリケーションの種類がURLの場合: ショートカットURL
    • アイコンファイル
  • プリンター
    • ターゲットパス
  • ネットワークドライブ
    • ターゲットパス」と「表示名
  • 仮想ドライブ
    • ターゲットパス
  • レジストリ
    • ターゲットパス」、「ターゲット名」、および「ターゲット値
    注:
    「ターゲット値」フィールドは、環境変数の展開をサポートしていません。環境変数を使用すると、期待どおりに機能しません。
  • 環境変数
    • 変数値
  • ポート
    • ポートターゲット
  • Ini ファイル
    • ターゲットパス」、「ターゲットセクション」、「ターゲット値の名前」、および「ターゲット値
    注:
    「ターゲットセクション」、「ターゲット値の名前」、および「ターゲット値」フィールドは、環境変数の展開をサポートしていません。環境変数を使用すると、期待どおりに機能しません。
  • 外部タスク
    • パス」と「引数
  • ファイルシステム操作
    • ソースパスとターゲットパス
  • 特定のフィルター条件
    • 例: 条件タイプがActive Directory属性の一致の場合: テスト済みActive Directory属性と一致結果
    注:
    フィルター条件でサポートされているフィールドの完全なリストについては、「フィルター条件のサポートマトリックス」を参照してください。

文字列操作

スクリプト内で文字列を操作してドライブをマッピングしたり、アプリケーションを起動したりする必要がある場合があります。Workspace Environment Management™エージェントは、次の文字列操作を受け入れます。
モーダル 説明 例
#レフト(string,length)# 指定された数の文字を左から返します。 #Left(abcdef,2)#はabを返します
#ライト(string,length)# 指定された数の文字を右から返します。 #Right(abcdef,2)#はefを返します
#トランケート(string,length)# 文字列の長さが指定された長さ以下の場合、文字列全体を返します。文字列の長さが指定された長さより大きい場合、指定された数の文字を左から返します。 #Truncate(abcdef,3)# は abc を返します
&Trim(文字列)& 文字列の先頭と末尾にあるすべての空白文字を削除します。 &Trim( a b c )& は a b c を返します
&RemoveSpaces(文字列)& 文字列内のすべての空白文字を削除します。 &RemoveSpaces( a b c )& は abc を返します
&Expand(文字列)& 文字列に \% で囲まれた環境変数が含まれている場合、その変数を展開します。 &Expand(%userprofile%\destop)& は C:\Users\Jill\desktop を返します
\$Split(string,[splitter],index)\$ [] で囲まれた区切り文字に基づいて文字列を部分文字列に分割し、インデックス付きの部分文字列を返します。 $Split(abc-def-hij,[-],2)$ は hij を返します
#Mid(文字列,開始インデックス)# 文字列内の指定されたインデックスから開始し、それ以降のすべての文字を返します。 #Mid(abcdef,2)# は cdef を返します
!Mid(文字列,開始インデックス,長さ)! 文字列内の指定されたインデックスから開始し、指定された数の文字を返します。 !Mid(abcdef,1,2)! は bc を返します
!Substring(文字列,開始インデックス,長さ)! 文字列内の指定されたインデックスから開始し、指定された数の文字を返します。 !Substring(abcdef,1,2)! は bc を返します
#Mod(文字列,長さ)# 文字列を長さで除算し、余りを返します。文字列は整数に変換できる必要があります。 #Mod(7,3)# は 1 を返します
注:
  • 文字列操作は、ハッシュタグとActive Directory属性でもサポートされています。例: 現在のドメインユーザーの名前属性が Administrator の場合、#Left([ADAttribute:NAME],2)# は Ad を返し、$Split(##ClientIPAddress##,[\.],2)$ は 157 を返します。
  • !Mid(string,startindex,length)! と !Substring(string,startindex,length)! の操作は常に最後に実行されます。

ハッシュタグ

ハッシュタグは、Workspace Environment Managementアイテムの処理で広く使用されている置換機能です。次の例は、ハッシュタグの使用方法を示しています。
.iniファイルに書き込むには、.iniファイルのパスに**%UserName%を使用できます。Workspace Environment Managementはそれを処理し、最終ディレクトリを展開します。ただし、Workspace Environment Managementが.ini自体に書き込む値を評価することは、より複雑です。%UserName%**を文字通り書き込むか、展開された値を書き込むかを選択できます。
柔軟性を高めるために、**##UserName##はハッシュタグとして存在します。そのため、値に%UserName%を使用すると文字通り書き込まれ、##UserName##**は展開された値を書き込みます。
例については、次の表を参照してください。
項目 説明 例
##UserName## 展開された環境変数「%username%」を返します ジル
##UserProfile## 展開された環境変数「%userprofile%」を返します C:\Users\Jill
##FullUserName## Active Directory内のユーザーのフルネームを返します ジル・チョウ
##UserInitials## Active Directory内のユーザー名のイニシャルを返します JC
##UserAppData## 特殊フォルダー RoamingAppData の実際のパスを返します C:\Users\Jill\AppData\Roaming
##UserPersonal## 特殊フォルダー ドキュメント の実際のパスを返します C:\Users\Jill\Documents
##UserDocuments## 特殊フォルダー ドキュメント の実際のパスを返します C:\Users\Jill\Documents
##UserDesktop## 特殊フォルダー デスクトップ の実際のパスを返します C:\Users\Jill\Desktop
##UserFavorites## 特殊フォルダー お気に入り の実際のパスを返します C:\Users\Jill\Favorites
##UserTemplates## 特殊フォルダーの実際のパスを返します - Templates C:\Users\Jill\AppData\Roaming\Microsoft\Windows\Templates
##UserStartMenu## 特殊フォルダーの実際のパスを返します - StartMenu C:\ユーザー\Jill\AppData\ローミング\Microsoft\Windows\スタートメニュー
##UserStartMenuPrograms## 特殊フォルダーの実際のパスを返します - Programs C:\Users\Jill\AppData\Roaming\Microsoft\Windows\Start Menu\Programs
##UserLocalAppData## 特殊フォルダーの実際のパスを返します - LocalAppData C:\Users\Jill\AppData\Local
##UserMusic## 特殊フォルダーの実際のパスを返します - Music C:\Users\Jill\Music
##UserPictures## 特殊フォルダー - ピクチャ の実際のパスを返します C:\Users\Jill\Pictures
##UserVideos## 特殊フォルダー - ビデオ の実際のパスを返します C:\Users\Jill\Videos
##UserDownloads## 特殊フォルダー - ダウンロード の実際のパスを返します C:\Users\Jill\Downloads
##UserLinks## 特殊フォルダー - リンク の実際のパスを返します C:\Users\Jill\Links
##UserContacts## 特殊フォルダー - 連絡先 の実際のパスを返します C:\Users\Jill\Contacts
##UserSearches## 特殊フォルダーの実際のパスを返します - SavedSearches C:\Users\Jill\Searches
##共通プログラム## 特殊フォルダーの実際のパスを返します - CommonPrograms C:\ProgramData\Microsoft\Windows\Start Menu\Programs
##ComputerName## マシンの名前を返します WIN10EN-LR3B66L
##ClientName## クライアントマシンの名前を返します W2K16ST-5IS28JP
##ClientIPAddress## クライアントマシンのIPアドレスを返します 10.150.153.138
##IpAddress## マシンのIPアドレスを返します 10.150.153.213
##ADサイト## マシンがメンバーであるActive Directoryサイトを返します NKG
##DefaultRegValue## - 常にstring.Empty
##UserLDAPPath## 現在のユーザーの識別名を返します CN=Jill Chou,OU=ユーザーアカウント,OU=APAC,DC=citrite,DC=net
##VUEMAgentFolder## エージェントフォルダーを返します C:\Program Files (x86)\Citrix\Workspace Environment Management Agent
##RDSSessionID## リモートデスクトップセッションIDを返します 2
##RDSSessionName## リモートデスクトップセッション名を返します RDP-Tcp#72
##ClientRemoteOS## 仮想デスクトップへの接続に使用されるマシンのオペレーティングシステムを返します ウィンドウズ
##ClientOSInfos## マシンのOS情報を返します Windows 10 Enterprise 64ビット
ハッシュタグ ##UserScreenCaptureComment## は、製品の特定の箇所で使用するために実装されています。このタグは、Advanced Settings > UI Agent Personalization > Helpdesk Options の下のメールテンプレートに含めることができます。含めると、エージェントのスクリーンキャプチャユーティリティで、スクリーンキャプチャの下にコメントフィールドが表示されます。コメントは、メールテンプレートでタグを配置した場所にサポートメールに含まれます。

アクティブディレクトリ属性

Active Directory属性を操作するために、WEMは****の値を関連するActive Directory属性に置き換えます。 は、任意のActive Directory属性の動的トークンです。指定された属性の値をチェックする関連フィルターがあります。
ユーザー組織単位 (OU) 構造の場合、WEMは****の値を関連するActive Directory OU名に置き換えます。Active DirectoryパスはActive Directory内の完全なユーザーパス (LDAP) であり、はそのサブセットです。
たとえば、ユーザーが属するOUのネットワークドライブを構築したいとします。ネットワークドライブパスで動的トークン を使用して、ユーザーのOUを動的に解決できます。動的トークンを使用する方法は2つあります。
  • ネットワークドライブのパスで動的トークンを直接使用します。たとえば、次のパスを使用できます: \\Server\Share\[UserParentOU:0]\。
  • OUという環境変数を設定し、その値をに設定します。その後、\\Server\Share\%OU%\としてドライブをマップできます。
注:
  • OU構造で到達したいレベルに対応する数値で「0」を置き換えることができます。
  • パスに変数を追加できます。これを行うには、OUレイアウトと一致する正確なフォルダ構造があることを確認してください。
フィルタリング目的でActive Directory属性を使用することもできます。管理 \> フィルタ \> 条件 \> フィルタ条件リストタブで、追加をクリックすると、新規フィルタ条件ウィンドウを開くことができます。新規フィルタ条件ウィンドウには、Active Directory属性に関連付けられた次の4つのフィルタ条件タイプが表示されます。
  • Active Directory属性の一致
  • Active Directoryグループの一致
  • Active Directoryパスの一致
  • Active Directoryサイトの一致
Active Directory属性の一致の場合、動的トークンはです。 Active Directoryグループの一致には動的トークンはありません。この条件タイプはグループメンバーシップの確認に使用されるためです。 Active Directoryパスの一致の場合、完全なLDAPパスの動的トークンは##UserLDAPPath##です。 Active Directoryサイトの一致の場合、動的トークンは##ADSite##です。
例については、次の表を参照してください。
モーダル 説明 例
[ADAttribute:attrName] ドメインユーザーの指定された属性を返します [ADAttribute:name]はAdministratorを返します
[PrinterAttribute:printername|attrName] 指定されたドメインプリンターの指定された属性を返します [PrinterAttribute:printer1|name] は printer1 を返します
[UserParentOU: level] 現在のユーザーの親 OU の指定されたレベルを返します CN=Jill Chou,OU=User Accounts,OU=APAC,DC=citrite,DC=net の [UserParentOU:1] は APAC を返します

レジストリ

レジストリを操作するには、WEM は [RegistryValue:<Registry path>] の値を関連するレジストリ値に置き換えます。たとえば、次の値を指定できます。

XML ファイル

XML ファイルを操作するには、WEM は [GetXmlValue:<XML path>|<tag name>] の値を XML ファイル内の特定のタグ値に置き換えます。XML パスは、実際のパスまたはパスに解決される環境変数にすることができます。環境変数は % で囲む必要があります。たとえば、次の値を指定できます。
  • \[GetXmlValue:C:\citrix\test.xml\|summary\] または
  • \[GetXmlValue:%xmlpath%\|summary\]

INI ファイル

.ini ファイルを操作するには、WEM は [GetIniValue:<INI path>|<section name in the .ini file>|<key name in the .ini.file>] をキー値に置き換えます。INI パスは、実際のパスまたはパスに解決される環境変数にすることができます。環境変数は % で囲む必要があります。たとえば、次の値を指定できます。
  • \[GetIniValue:C:\citrix\test.ini\|PLD_POOL_LIC_NODE_0_0\|LicExpTime\] または
  • \[GetIniValue:%inipath%\|PLD_POOL_LIC_NODE_0_0\|LicExpTime\]

詳細情報

フィルター条件のサポートマトリックス

次の表に、テストされた値または一致する結果が動的トークンをサポートするすべての条件タイプを示します。
条件タイプ テスト値 一致結果
ComputerNameの一致 - はい
ClientNameの一致 - はい
環境変数の一致 いいえ はい
レジストリ値の一致 はい はい
WMIクエリ結果の一致 - はい
XenApp®ファーム名の一致 - はい
XenAppゾーン名の一致 - はい
XenDesktop®ファーム名の一致 - はい
XenDesktopデスクトップグループ名の一致 - はい
Active Directory属性の一致 はい はい
名前または値がリストにある はい はい
ComputerNameの不一致 - はい
クライアント名が一致しない - はい
環境変数が一致しない いいえ はい
レジストリ値が一致しない はい はい
WMIクエリ結果が一致しない - はい
XenAppファーム名が一致しない - はい
XenAppゾーン名が一致しない - はい
XenDesktopファーム名が一致しない - はい
XenDesktopデスクトップグループ名が一致しない - はい
Active Directory属性が一致しない はい はい
名前または値がリストにない はい はい
動的値が一致 はい はい
動的値が一致しない はい はい
ファイルバージョンが一致 はい はい
ファイルバージョンが一致しない はい はい
公開リソース名 - はい
名前がリストにある はい はい
名前がリストにない はい はい
ファイル/フォルダが存在する - はい
ファイル/フォルダが存在しない - はい