システムエンジニアXの「プログラミング以外」の話 50代会社員SEのお仕事・副業・システム運用の経験談

【情シス必見】Edgeポリシーのレジストリ名からGPO日本語表示名を逆引きする方法

公開:

※本記事には広告を含みます。

はじめに

セキュリティ監査の指摘リストや海外の技術ブログ、あるいは現行環境のレジストリ調査で「AutofillMembershipsEnabled」や「IntensiveWakeUpThrottlingEnabled」といったMicrosoft Edgeの英語ポリシー名(レジストリ値名)を見つけたものの、グループポリシー管理エディター(GPMC)のどこに該当の日本語項目があるのか分からず、何百個もある項目を上から順番にスクロールして探した経験はないでしょうか。

私も過去に、社内のEdgeセキュリティベースラインをGPOへ実装する際、Microsoft特有の直訳調の日本語ポリシー名(例:「ローカル トラスト アンカーのオンライン失効チェックを要求する」など)が推測できず、1つの項目を探すだけで30分以上浪費した苦い経験があります。しかし、ADMX/ADML定義ファイルの構造を理解してからは、PowerShellを使ってわずか3秒で正確な日本語表示名と格納フォルダを逆引きできるようになりました。

この記事では、Edgeポリシーの英語レジストリ名からGPOの日本語表示名を瞬時に特定する3つの方法と、現場でそのまま使えるPowerShell逆引きスクリプトを解説します。

読み終えるころには、どんなマイナーなEdgeポリシーであっても迷わずGPMC上で見つけ出し、適用状態まで一気通貫で確認できるようになります。

この記事の要点

  • 英語のレジストリ名からGPO日本語表示名を引くには、msedge.admx と ja-JP\msedge.adml のXML構造を紐付けるのが最も確実
  • PowerShellスクリプトを使えば、PolicyDefinitionsフォルダから「レジストリ名・日本語表示名・カテゴリ階層」を一括抽出できる
  • 適用後のクライアント端末では edge://policy 画面または HKLM\SOFTWARE\Policies\Microsoft\Edge レジストリでリアルタイムに反映確認ができる
項目 動作確認・検証環境
検証年月 2026年9月
対象OS Windows Server 2022 / Windows 11 Pro 23H2・24H2
対象ブラウザ Microsoft Edge Stable 128 / 129以降(Enterpriseポリシーテンプレート)
必要権限 Domain Admins(セントラルストア参照時)またはローカル管理者権限

結論:レジストリ名からGPO日本語表示名を逆引きする3つの方法

結論からお伝えすると、英語のレジストリ値名(ポリシー内部名)からGPOの日本語表示名を特定するには、「Microsoft Learn公式リファレンス検索」「ADMX/ADMLファイルのテキスト検索」「PowerShellによる自動紐付け抽出」 の3つのアプローチがあります。

数個のポリシーを調べるだけなら公式ドキュメント検索で十分ですが、数十項目のベースライン設計やパラメータシート作成を行う現場では、セントラルストア上の msedge.admx と msedge.adml を直接解析する方法が圧倒的に正確かつ高速です。

現場でよく検索されるEdgeポリシー逆引き対照表(代表例)

情シスの現場で「日本語名が分かりにくい」と頻繁に調査対象になる代表的なEdgeポリシーの対照表を以下にまとめました。

レジストリ値名(内部ポリシー名) GPOの日本語表示名(GPMC上の表記) GPMCの格納フォルダ階層
AutofillMembershipsEnabled メンバーシップのオートフィルを有効にする パスワードとオートフィル
CopilotPageContext Microsoft 365 Copilot チャットが Edge の Web コンテンツにアクセスすることを制御する Microsoft Edge(ルート直下)
EdgeShoppingAssistantEnabled Microsoft Edge でショッピング アシスタントを有効にする Microsoft Edge(ルート直下)
IntensiveWakeUpThrottlingEnabled IntensiveWakeUpThrottling 機能を制御する パフォーマンス
RequireOnlineRevocationCheckForLocalAnchors ローカル トラスト アンカーのオンライン失効チェックを要求する 証明書管理
ShowPDFDefaultNotification 通知で Microsoft Edge を既定の PDF リーダーとして設定することを許可する PDF ドキュメント

上記の通り、英語名の一部がそのまま残っているもの(IntensiveWakeUpThrottling)もあれば、完全な日本語に翻訳されているものもあり、目視で探すのは非常に非効率です。


方法1:ADMXとADMLの仕組みを理解して手動で逆引きする手順

オフライン環境やクローズドネットワークで最も頼りになるのが、グループポリシーのテンプレートファイル(msedge.admx と msedge.adml)を直接テキスト検索する手順です。

グループポリシーの管理用テンプレートは、「レジストリとの紐付けを定義する .admx ファイル」 と 「言語ごとの表示名を定義する .adml ファイル」 の2つに分かれています。両方の中身は標準的なXMLファイルです。

ステップ1:msedge.admx から文字列ID(string ID)を特定する

まず、C:\Windows\PolicyDefinitions(またはSYSVOLのセントラルストア)にある msedge.admx をメモ帳やVS Codeで開き、調べたいレジストリ名(例:RequireOnlineRevocationCheckForLocalAnchors)を検索します。

<policy name="RequireOnlineRevocationCheckForLocalAnchors"
        class="Both"
        displayName="$(string.RequireOnlineRevocationCheckForLocalAnchors)"
        explainText="$(string.RequireOnlineRevocationCheckForLocalAnchors_Explain)"
        key="Software\Policies\Microsoft\Edge"
        valueName="RequireOnlineRevocationCheckForLocalAnchors">
  <parentCategory ref="CertificateManagement" />

ここで確認すべきポイントは2つです。
1. displayName="$(string.XXXX)" の XXXX 部分(ほとんどの場合、レジストリ値名と同じ文字列IDになっています)
2. parentCategory ref="CertificateManagement"(どのサブフォルダに入っているかを示します)

ステップ2:ja-JP\msedge.adml から日本語表示名を検索する

次に、同階層にある ja-JP\msedge.adml を開き、id="RequireOnlineRevocationCheckForLocalAnchors" で検索します。

<string id="CertificateManagement">証明書管理</string>
<string id="RequireOnlineRevocationCheckForLocalAnchors">ローカル トラスト アンカーのオンライン失効チェックを要求する</string>

これにより、「証明書管理」フォルダ配下の「ローカル トラスト アンカーのオンライン失効チェックを要求する」という項目であることが100%の精度で判明します。


方法2:PowerShellでレジストリ名から日本語GPO名を一発逆引きするスクリプト

毎回2つのXMLファイルを開いて検索するのは手間がかかるため、レジストリ名(部分一致可)を指定するだけで日本語表示名とGPMCのフォルダ階層を即座に出力するPowerShellスクリプトを作成しました。

以下のスクリプトをPowerShell(一般ユーザー権限で実行可能)に貼り付けて実行してください。

# 調査したいEdgeポリシーのレジストリ名(複数指定・部分一致キーワード可)
$TargetPolicies = @(
    "AutofillMembershipsEnabled",
    "CopilotPageContext",
    "EdgeShoppingAssistantEnabled",
    "IntensiveWakeUpThrottlingEnabled",
    "RequireOnlineRevocationCheckForLocalAnchors"
)

# ADMX / ADML のパス指定(セントラルストア環境の場合はSYSVOLのパスに変更可)
$AdmxPath = "C:\Windows\PolicyDefinitions\msedge.admx"
$AdmlPath = "C:\Windows\PolicyDefinitions\ja-JP\msedge.adml"

if (-not (Test-Path $AdmxPath) -or -not (Test-Path $AdmlPath)) {
    Write-Warning "msedge.admx または msedge.adml が見つかりません。パスを確認してください。"
    return
}

# XMLとして読み込み
[xml]$Admx = Get-Content -Path $AdmxPath -Encoding UTF8
[xml]$Adml = Get-Content -Path $AdmlPath -Encoding UTF8

# ADMLの文字列テーブルをハッシュテーブル化(高速検索用)
$StringTable = @{}
foreach ($str in $Adml.policyDefinitionResources.resources.stringTable.string) {
    $StringTable[$str.id] = $str.'#text'
}

# カテゴリの日本語名マップを作成
$CategoryMap = @{}
foreach ($cat in $Admx.policyDefinitions.categories.category) {
    $catStringId = $cat.displayName -replace '^\$\(string\.(.+)\)$', '$1'
    $CategoryMap[$cat.name] = $StringTable[$catStringId]
}

# 対象ポリシーを検索して結果を出力
$Results = foreach ($policy in $Admx.policyDefinitions.policies.policy) {
    foreach ($keyword in $TargetPolicies) {
        if ($policy.name -match $keyword -or $policy.valueName -match $keyword) {
            $dispId = $policy.displayName -replace '^\$\(string\.(.+)\)$', '$1'
            $catRef = $policy.parentCategory.ref
            [PSCustomObject]@{
                RegistryValueName = $policy.valueName
                GpoDisplayName    = $StringTable[$dispId]
                CategoryFolder    = $CategoryMap[$catRef]
                PolicyClass       = $policy.class # Machine / User / Both
                RegistryKey       = $policy.key
            }
        }
    }
}

$Results | Select-Object -Unique RegistryValueName, GpoDisplayName, CategoryFolder, PolicyClass | Format-Table -AutoSize

スクリプトの解説とメリット

  • $StringTable ハッシュテーブル化: 約2,000個あるEdgeポリシーの言語リソースをメモリ上に展開するため、検索が1秒未満で完了します。
  • CategoryFolder の自動解決: GPMC上で「Microsoft Edge」直下にあるのか、「パフォーマンス」や「パスワードとオートフィル」のサブフォルダにあるのかまで同時に特定できます。
  • 全ポリシー一覧をExcelの設計書にしたい場合は、末尾の Format-Table を Export-Csv -Path ".\EdgePolicyList.csv" -NoTypeInformation -Encoding UTF8 に書き換えるだけで、完全な日本語対照表CSVを生成できます。

現場でハマるADMX/GPO逆引きの3つの落とし穴

Edgeのポリシー調査やGPO設計において、情シス担当者が陥りやすい3つの罠と対処法を解説します。

落とし穴1:セントラルストアのADMXが古く、最新ポリシーが存在しない

「公式ドキュメントには載っているのに、GPMCやPowerShellで検索しても出てこない」という場合、9割以上の原因は Active Directoryのセントラルストア(SYSVOL)に配置されている msedge.admx が古い ことにあります。

例えば、CopilotPageContext や ScarewareBlockerProtectionEnabled などの比較的新しいポリシーは、古いバージョンのADMXには定義自体が含まれていません。Microsoft Edge Enterpriseの公式サイトから最新版のポリシーテンプレート(Cab/Zip)をダウンロードし、\\<ドメイン名>\SYSVOL\<ドメイン名>\Policies\PolicyDefinitions の .admx および ja-JP\.adml を上書き更新してください。

落とし穴2:「コンピューターの構成」と「ユーザーの構成」の取り違え

Edgeのほぼすべてのポリシーは、msedge.admx 上で class="Both"(コンピューターとユーザーの両方で設定可能)として定義されています。

設定箇所 書き込まれるレジストリパス 優先度
コンピューターの構成 HKLM\SOFTWARE\Policies\Microsoft\Edge 高(優先される)
ユーザーの構成 HKCU\SOFTWARE\Policies\Microsoft\Edge 低(HKLMと競合時は無視)

実運用では、端末単位でガバナンスを効かせるため「コンピューターの構成」側で統一するのが鉄則です。両方に別々の設定を入れると、常に HKLM(コンピューター側)が勝ち、HKCU 側の設定が効かないトラブルの原因になります。

落とし穴3:廃止(Deprecated)されたポリシー名を探している

Edgeはバージョンアップのサイクルが速く、過去に存在したポリシーが統合・廃止されるケースが多々あります。

たとえば、古い記事で紹介されている NewPDFReaderEnabled などの一時的な機能フラグ用ポリシーは、最新版のADMXからは削除されていることがあります。クライアント端末のアドレスバーに edge://policy と入力し、「ポリシーをさらに表示」にチェックを入れて検索すると、現在のEdgeバージョンがサポートしている有効な内部ポリシー名かどうかを即座に判別できます。


クライアント端末でのポリシー適用確認コマンド

GPOで設定を配布したあと、対象のWindows 11端末に正しくポリシーが当たっているかを確認するには、以下のPowerShellコマンドを実行します。

# コンピューター側(HKLM)のEdgeポリシー適用値を一覧表示
Get-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Edge" -ErrorAction SilentlyContinue |
    Select-Object -Property * -ExcludeProperty PSPath, PSParentPath, PSChildName, PSDrive, PSProvider

# ユーザー側(HKCU)のEdgeポリシー適用値を一覧表示
Get-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -ErrorAction SilentlyContinue |
    Select-Object -Property * -ExcludeProperty PSPath, PSParentPath, PSChildName, PSDrive, PSProvider

また、Edgeブラウザ上で edge://policy を開けば、適用されているポリシー名、設定値、「状態(OK / 競合)」をGUIでリアルタイムに確認でき、「ポリシーの再読み込み」ボタンから即時反映テストも行えます。


よくある質問(FAQ)

Q: GPMC上でポリシー名でフィルタリング(検索)することはできますか?

A: 標準のGPMCでも「操作」メニュー>「フィルターのオプション」からキーワード検索が可能ですが、検索対象が「日本語の表示名」に限られます。英語のレジストリ値名(AutofillMembershipsEnabled など)をGPMCのフィルターに入力してもヒットしないため、本記事で紹介したPowerShellスクリプトやADML検索を併用する必要があります。

Q: Intune(設定カタログ)を使う場合も日本語表示名は同じですか?

A: 基本的にはGPO(ADML)と同じ日本語表示名が使われていますが、Intuneの「設定カタログ(Settings Catalog)」では英語の内部名(AutofillMembershipsEnabled 等)で直接検索してもヒットする仕様になっています。そのため、Intune環境の方が逆引きの手間は少なく済みます。

Q: HKLM\SOFTWARE\Policies\Microsoft\Edge に直接レジストリを追加してもEdgeに認識されますか?

A: はい、認識されます。Edge自体はGPMCの画面を見ているわけではなく、HKLM\SOFTWARE\Policies\Microsoft\Edge のレジストリ値を読み取って動作を決定しています。そのため、ADMXテンプレートをまだ更新できない環境でも、GPP(グループポリシー基本設定)のレジストリ配布やスクリプトで直接値を書き込めばポリシーとして有効に機能します。


まとめ

Edgeポリシーの英語レジストリ名からGPOの日本語表示名を逆引きするポイントは以下の通りです。

  • GPMCの日本語表示名は msedge.admx と ja-JP\msedge.adml の文字列IDを介して紐付いている
  • PowerShellでADMX/ADMLをパースすれば、数千個のポリシーから数秒で日本語名と格納フォルダを特定できる
  • 目的のポリシーが見つからない場合は、セントラルストアのADMXテンプレートが古くないか確認する
  • 展開後の確認は、レジストリ(HKLM\SOFTWARE\Policies\Microsoft\Edge)と edge://policy の両方で行う

この逆引き手法を手元のツールボックスに入れておけば、今後のEdgeバージョンアップやセキュリティ監査対応でも、ポリシー探しで時間を奪われることはなくなります。

関連記事

免責規定

この記事で提供される情報は、一般的なガイダンスを目的としており、すべての環境やシステムでの動作を保証するものではありません。

OSのバージョンやリリースによっては、記載されている事が実行できない、または異なる結果をもたらす可能性があります。 また、会社所有のパソコン、スマホ、タブレットなどでは、ポリシーや権限によって実行できない場合があります。

この記事の情報を使用することによって生じる問題や結果について、筆者およびサイト管理者は責任を負いません。 すべての操作は自己責任で行ってください。

最後までお読みいただきありがとうございました。
またお会いしましょう!

著者のおすすめ教材 & note実践記事

公式教材 豪華4大特典付き

PowerShell実務スクリプト50選

AD・Windows運用・障害対応をコマンド一発で自動化する現役SEの実務スクリプト集。

最新note 毎日定時で帰る現場ハック

ググっても出ない実務テク20選

社内SE現場の地味で細かすぎる面倒作業を一撃で解消する実践テクニック集。