Office 2013 の VBA マクロのセキュリティ設定の計画

 

適用先:Office 365 ProPlus

トピックの最終更新日:2016-12-16

概要 VBA および VBA マクロ設定によって、Office 2013 での Visual Basic for Applications (VBA) および VBA マクロの動作を制御する方法について説明します。

対象ユーザー: IT 担当者

Visual Basic for Applications (VBA) および VBA マクロがどのように動作するかを制御するには、Access 2013、Excel 2013、PowerPoint 2013、Publisher 2013、Visio 2013、および Word 2013 の各アプリケーションで Office 2013 の VBA および VBA マクロの設定を変更します。

 

Office セキュリティに導くロードマップの矢印。

この記事は、Office 2013 のセキュリティのガイドに含まれています。このロードマップは、Office 2013のセキュリティの評価に役立つ記事、ダウンロード、ポスター、ビデオなどを参照する際の出発点として使用します。

個々の Office 2013 アプリケーションのセキュリティ情報をお探しの場合は、Office.com で "2013 セキュリティ" を検索してください。

この記事の内容

Office 2013 には、VBA および VBA マクロの動作を制御できる設定がいくつかあります。これらの設定を構成することで、次のことが行えます。

  • VBA マクロに関するセキュリティ警告の設定を変更する。これには、VBA マクロの無効化、すべての VBA マクロの有効化、および VBA マクロについてユーザーに通知する方法の変更が含まれます。

  • VBA を無効にする。

  • オートメーションを利用してプログラムによって起動されたアプリケーションでの VBA マクロの動作を変更します。

  • ウイルス対策ソフトウェアによる暗号化された VBA マクロのスキャン方法を変更します。

Office カスタマイズ ツール (OCT) と Office 2013 管理用テンプレートにおけるセキュリティ設定の構成方法についての詳細は、「OCT またはグループ ポリシーを使用した Office 2013 のセキュリティの構成」を参照してください。

既定では VBA が有効になっており、信頼できる VBA マクロは実行が許可されています。これには、信頼できる場所に保存されたドキュメント内の VBA マクロ、信頼済みドキュメント内の VBA マクロ、および次の基準を満たす VBA マクロが含まれます。

  • マクロが開発者によってデジタル署名で署名されている。

  • デジタル署名が有効である。

  • そのデジタル署名が最新である (有効期限切れになっていない)。

  • デジタル署名に関連付けられている証明書が、信頼できる証明機関 (CA) によって発行されたものである。

  • マクロに署名した開発者が信頼できる発行元である。

メモメモ:
マクロの既定のセキュリティ設定は、Outlook 2013 では異なります。詳細については、Outlook 2013 のセキュリティに関するドキュメントを参照してください。

信頼できない VBA マクロは、ユーザーがメッセージ バーをクリックして VBA マクロを有効にするまで、実行を許可されません。

Office 2013テレメトリ ダッシュボードにデータを表示すれば、組織の VBA マクロの利用状況を簡単に把握することができます。このテレメトリ ダッシュボードには、監視対象の各 Office ソリューションに関する固有のインスタンス データを収集して表示する "インベントリ" という組み込みレポートがあります。このレポートには、Office ドキュメントで VBA マクロが使用されているかどうかも含まれます。

メモメモ:
すべての Office 2013 スイート で、マウス、キーボード ショートカット、またはタッチを使用してタスクを実行できます。Office 製品およびサービスでキーボード ショートカットとタッチを使用する方法については、「キーボード ショートカット」と「Office タッチ ガイド」を参照してください。

次の手順を使用するには、Officeテレメトリ ダッシュボードが既に展開され、構成されている必要があります。Officeテレメトリ ダッシュボードの全般的な情報については、「Office テレメトリの概要」を参照してください。Office テレメトリの展開方法の詳細については、「テレメトリ ダッシュボードを展開する」を参照してください。

Office 2013 テレメトリ ダッシュボード レポートで VBA マクロの利用状況を表示するには
  1. テレメトリ ダッシュボードを開き、テレメトリ データベースに接続します。

  2. テレメトリ ダッシュボードのナビゲーション ウィンドウで、[カスタム レポート] を選択します。

  3. カスタム レポート ページが開いたら、[カスタム レポートの作成] を選択します。

  4. [ピボットテーブル フィールド] リストの [Inventory] セクションで、[VBA を含む] を選択します。VBA 関連の警告のレポートを確認します。さらに調査が必要な場合は、インベントリ テーブルの追加フィールドを選択します。

  5. 必要に応じてデータを保存し、テレメトリ ダッシュボードを閉じます。

Office 2013 には、VBA マクロのセキュリティ警告の設定や VBA マクロの動作を変更できる設定があります。信頼できない VBA マクロについてユーザーに通知する方法や VBA マクロの既定の動作を変更する場合は、次のガイドラインを使用して、この設定の構成方法を決定してください。

グループ ポリシー設定名: VBA マクロ通知設定

説明: この設定では、Visual Basic for Applications (VBA) マクロに関する警告をユーザーに通知する方法を指定します。この設定は、Access 2013、Excel 2013、PowerPoint 2013、Publisher 2013、Visio 2013、および Word 2013 のアプリケーション単位で構成します。この設定では、次の 4 つのオプションのいずれかを選択できます。

[通知してすべてを無効にする]   アプリケーションは、署名の有無にかかわらず、すべてのマクロについてセキュリティ バーを表示します。これは既定の設定です。

[デジタル署名付きのマクロを除くすべてのマクロを無効にする]   アプリケーションは、デジタル署名付きのマクロについてのみセキュリティ バーを表示します。ユーザーは、このセキュリティ バーを使用してマクロを有効にするか無効のままにするかを選択できます。署名のないマクロは無効になり、ユーザーが通知を受け取ることもマクロを有効にすることもできません。

[通知せずにすべてを無効にする]   アプリケーションは、署名の有無にかかわらず、すべてのマクロを無効にし、ユーザーへの通知も行いません。

[すべてのマクロを有効にする (推奨しません。危険なコードが実行される可能性があります)]  署名の有無にかかわらず、すべてのマクロが有効になります。このオプションでは、危険なコードの実行が検出されないので、セキュリティが大幅に低下する可能性があります。

影響:  この設定を有効にして [デジタル署名付きのマクロを除くすべてのマクロを無効にする] オプションを選択した場合、署名のないマクロを含むドキュメントやテンプレートではそれらのマクロが提供するすべての機能が失われます。このような機能の損失を避けるには、マクロを含むファイルを信頼できる場所に配置します。

重要重要:
[デジタル署名付きのマクロを除くすべてのマクロを無効にする] が選択されている場合、ユーザーは署名のない Access 2013 データベースを開くことができません。

[通知せずにすべてを無効にする] を選択した場合、署名のないマクロや署名付きのマクロを含むドキュメントやテンプレートではそれらのマクロが提供するすべての機能が失われます。これは、マクロが署名付きであって発行元が信頼された発行元の一覧に記載されている場合にも当てはまります。

ガイドライン: セキュリティ環境の制限が厳しい組織では、通常、この設定を有効にして [デジタル署名付きのマクロを除くすべてのマクロを無効にする] オプションを選択します。ユーザーによるマクロの実行を許可しない組織では、通常、この設定を有効にして [通知せずにすべてを無効にする] オプションを選択します。

Office 2013 には、VBA を無効にできるグループ ポリシー設定があります。既定では、VBA が有効になっています。VBA を無効にする場合は、次のガイドラインを使用して、この設定の構成方法を決定してください。

メモメモ:
VBA を無効にするには、グループ ポリシーを使用する必要があります。セキュリティ センターでは無効にできません。

グループ ポリシー設定名: Office アプリケーションの VBA を無効にする

説明: この設定によって Excel 2013、Outlook 2013、PowerPoint 2013、Publisher 2013、SharePoint Designer 2013、および Word 2013 で VBA が無効になり、これらのアプリケーションでは VBA コードが一切実行できなくなります。この設定はグローバルな設定であり、アプリケーション単位では構成できません。この設定を有効にしても、ユーザーのコンピューターにおける VBA 関連のコードのインストールや削除は発生しません。

影響: この設定を有効にすると、VBA コードは実行されなくなります。VBA コードを含むドキュメントの使用が業務上不可欠な組織では、この設定を有効にしないでください。

ガイドライン: セキュリティ環境の制限が厳しい組織では、通常、この設定を有効にします。

Office 2013 には、オートメーションを利用してプログラムによって起動されたアプリケーションにおける VBA マクロの動作を変更できる設定があります。既定では、別のプログラムを使用して Excel 2013、PowerPoint 2013、または Word 2013 を起動すると、プログラムによって起動されたそのアプリケーション内で任意のマクロを実行できます。次のような場合は、以下のガイドラインを使用して、この設定の構成方法を決定してください。

  • オートメーションを利用してプログラムによって起動されたアプリケーション内ではマクロを実行できないようにする。

  • オートメーションを利用してプログラムによって起動されたアプリケーション向けに構成された VBA マクロのセキュリティ設定に従って、VBA マクロの実行を許可する。

グループ ポリシー設定名: 自動セキュリティ

説明: この設定では、別のアプリケーションからプログラムによって開かれたアプリケーションでマクロを実行できるかどうかを指定します。この設定はグローバルな設定であり、Excel 2013、PowerPoint 2013、および Word 2013 に適用されます。アプリケーション単位では構成できません。この設定では、次の 3 つのオプションのいずれかを選択できます。

[マクロを既定で無効にする]   プログラムによって開かれたアプリケーションでは、すべてのマクロが無効になります。

[マクロを有効にする (既定)]   プログラムによって開かれたアプリケーション内でのマクロの実行が許可されます。このオプションは既定の構成を適用します。

[アプリケーションのマクロのセキュリティ レベルを適用する]   マクロの機能は、アプリケーションごとに [VBA マクロの警告設定] をどのように構成するかによって決定されます。

影響: この設定を有効にして [マクロを既定で無効にする] オプションを選択すると、プログラムによって起動されたアプリケーションではマクロが実行されません。これは、プログラムによって起動されたアプリケーションでマクロを含むドキュメントやテンプレートを開く場合に問題となる可能性があります。この場合、マクロによって提供される機能は利用できません。同様の状況は、[アプリケーションのマクロのセキュリティ レベルを適用する] オプションを選択し、[VBA マクロの警告設定] を使用してマクロを無効にした場合にも発生する可能性があります。

ガイドライン: 多くの組織では、この設定を有効にして、[アプリケーションのマクロのセキュリティ レベルを適用する] オプションを選択します。ただし、セキュリティ環境の制限が厳しい組織では、通常、この設定を有効にして [マクロを既定で無効にする] オプションを選択します。

Office 2013 には、Excel 2013、PowerPoint 2013、および Word 2013 において、暗号化された VBA マクロがウイルス対策ソフトウェアによってどのようにスキャンされるかを変更できる設定があります。既定では、暗号化されたドキュメント、プレゼンテーション、またはブックに含まれる VBA マクロは、クライアント コンピューターにウイルス対策プログラムがインストールされていない限り、無効になります。また、暗号化された VBA マクロを含むドキュメントをユーザーが開くと、そのようなマクロはクライアント コンピューターのウイルス対策プログラムによってスキャンされます。次のような場合は、以下のガイドラインを使用して、この設定の構成方法を決定してください。

  • ウイルス対策プログラムによるスキャンを行わずに、暗号化されたすべての VBA マクロの実行を許可する。

  • ウイルス対策プログラムがインストールされている場合は暗号化された VBA マクロをスキャンするが、インストールされていない場合は暗号化された VBA マクロを有効にする。

グループ ポリシー設定名: Excel Open XML ブック内の暗号化されたマクロをスキャンする、PowerPoint Open XML プレゼンテーション内の暗号化されたマクロをスキャンする、Word Open XML 文書内の暗号化されたマクロをスキャンする

説明: この設定では、暗号化された VBA マクロに対するウイルス スキャンの方法を指定します。これはアプリケーション単位の設定であり、Excel 2013、PowerPoint 2013、および Word 2013 のそれぞれについて構成できます。この設定では、次の 3 つのオプションのいずれかを選択できます。

[暗号化されたマクロをスキャンする (既定)]。暗号化されたすべての VBA マクロは、ウイルス対策プログラムによってスキャンされない限り、無効になります。このオプションは既定の構成を適用します。

[ウイルス対策ソフトウェアが利用できる場合はスキャンする]。ウイルス対策プログラムによってスキャンされない限り、暗号化された VBA マクロは無効になります。ただし、ウイルス対策プログラムがクライアント コンピューターにインストールされていない場合は、暗号化されたすべての VBA マクロが有効になります。

[スキャンせずにマクロを読み込む]。クライアント コンピューターにウイルス対策プログラムがインストールされているかどうかに関係なく、暗号化された VBA マクロは有効であり、スキャンされません。

影響: この設定を有効にして [スキャンせずにマクロを読み込む] オプションを選択した場合は、暗号化されたマクロのウイルス スキャンが行われないので、セキュリティが大幅に低下する可能性があります。これは、クライアント コンピューターにウイルス対策プログラムがインストールされていない状態でこの設定を有効にして [ウイルス対策ソフトウェアが利用できる場合はスキャンする] オプションを選択した場合にも当てはまります。

ガイドライン: 多くの組織では、この設定の既定の構成を使用し、設定を変更しません。

Office 2013 アプリケーションにおける VBA マクロの動作に影響する設定は、他に 2 つあります。特殊なセキュリティ環境に合わせるために VBA マクロの設定を変更する場合は、次の設定を検討してください。

グループ ポリシー設定名: Visual Basic プロジェクトへのアクセスを信頼する

説明: オートメーション クライアントが VBA プロジェクトにアクセスできるかどうかを決める設定です。これはアプリケーション単位の設定であり、Excel 2013、PowerPoint 2013、および Word 2013 のそれぞれについて設定できます。

グループ ポリシー設定名: セキュリティの問題に関するセキュリティ バーの通知をすべて無効にする

説明: この設定を有効にすると、安全でない VBA マクロに関する警告など、メッセージ バーの警告がユーザーに表示されなくなります。この設定は、グローバルな設定であり、Excel 2013、PowerPoint 2013、および Word 2013 に適用されます。アプリケーション単位では構成できません。

メモメモ:
ポリシー設定に関する最新情報については、Office 2013 の管理用テンプレート ファイルに含まれている Excel 2013 ブック Office2013GroupPolicyAndOCTSettings_Reference.xls を参照してください。詳細については、TechNet 記事の「Office 2013 のグループ ポリシー管理用テンプレート ファイル (ADMX、ADML) および Office カスタマイズ ツール (OCT) ファイル」を参照してください。

表示: