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

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

Visual Basic for Applications (VBA) マクロと VBA マクロの動作を制御する場合は、次のアプリケーションの Office 2016 VBA と VBA マクロの設定を変更できます。Access 2016、Excel 2016、PowerPoint 2016、Publisher 2016、Visio 2016、およびWord 2016。

VBA および VBA マクロのセキュリティ設定を計画する

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

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

  • インターネットからWord、Excel、PowerPoint、Access、Visio ファイルで VBA マクロが実行されないようにブロックします。

  • VBA を無効にする。

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

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

VBA は既定で有効になっており、信頼された VBA マクロを実行できます。 この構成では、特定のシナリオで VBA マクロの使用が許可されます。 これには、信頼できる場所に格納されているドキュメントや信頼できるドキュメントに格納されているドキュメントのマクロが含まれます。 また、マクロは次の条件を満たす必要があります。

  • マクロは、デジタル署名を使用する開発者から署名されます。

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

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

  • デジタル署名に関連付けられている証明書は、信頼できる証明機関 (CA) から発行されました。

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

注:

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

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

Office 2016 テレメトリ ダッシュボードを使用して VBA マクロの利用状況データを確認する

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

Office テレメトリ ダッシュボードが構成され、展開されている場合にのみ、次の手順を使用します。 Office テレメトリ ダッシュボードの詳細については、「Office での互換性とテレメトリ」を参照してください。

Office 2016 テレメトリ ダッシュボード レポートで VBA マクロの利用状況を表示するには

  1. テレメトリ ダッシュボードを開き、テレメトリ データベースに接続します。

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

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

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

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

VBA マクロの Office 2016 セキュリティ警告の設定を変更する

Office 2016 には、VBA マクロのセキュリティ警告の設定や VBA マクロの動作を変更できる設定があります。 信頼されていない VBA マクロについてユーザーに通知するための設定を構成するには、次のガイドラインに従います。 この方法は、VBA マクロの既定の動作を変更するのにも役立ちます。

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

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

    • 通知ですべてを無効にする アプリケーションでは、署名済みか署名されていないかに関係なく、すべてのマクロの信頼バーが表示されます。 この設定が既定です。

    • デジタル署名マクロを除くすべてを無効にする アプリケーションは、デジタル署名されたマクロの信頼バーを表示し、ユーザーがマクロをアクティブ化するか、無効のままにすることができます。 署名されていないマクロはすべて無効のままであり、ユーザーは通知を受け取らず、これらの署名されていないマクロを有効にすることもできません。

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

    • すべてのマクロを有効にする (推奨されていません。危険なコードが実行される可能性があります) 署名済みまたは符号なしのいずれであっても、すべてのマクロが有効になります。 このオプションは、危険なコードを検出されずに実行できるようにすることで、セキュリティを大幅に削減できます。

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

    重要

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

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

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

インターネットから取得した Word、Excel、および PowerPoint ファイルの VBA マクロの実行を Office 2016 でブロックする

Office は、インターネットから取得した、Word、Excel、および PowerPoint のファイルの VBA マクロの実行をブロックできる、グループ ポリシー設定を提供します。 既定では、Word、Excel および PowerPoint のファイル内のマクロは、マクロの警告設定に応じて有効にされています。 ファイルは、添付ファイル実行サービス (AES) によってファイルに追加されたゾーン情報に基づいた、インターネット経由のものとして識別されます。 AES は、Outlook、インターネット エクスプローラー、およびその他のアプリケーションでダウンロードされたファイルにゾーン情報を追加します。 インターネットから取得した、Word、Excel、および PowerPoint のファイルのマクロの実行をブロックする場合、この設定を構成する方法を決定するには、次のガイドラインを使用してください。

この設定は、グループ ポリシーを使用して構成します。 セキュリティ センターでは構成できません。

グループ ポリシーの設定名: インターネットから取得した Office ファイルで実行するマクロをブロックする

  • 説明: この設定により、インターネットから取得した Excel 2016、PowerPoint 2016、および Word 2016 のファイルで VBA マクロの実行がブロックされます。 この設定はアプリケーション単位で構成できます。

  • 影響: このポリシー設定を有効にすると、セキュリティ センターの [マクロの設定][すべてのマクロを有効にする] をオンにしていても、インターネットから取得したファイルでマクロの実行がブロックされます。 また、"コンテンツの有効化" を選択する代わりに、マクロの実行がブロックされていることを示す通知をユーザーが受け取ります。 ユーザーが Office ファイルを信頼できる場所に保存するか、以前に信頼していた場合、マクロの実行が許可されます。

  • ガイドライン: セキュリティ環境の制限は厳しいが、ドキュメントで VBA マクロを使用する必要がある組織では、通常、この設定を有効にします。 インターネットから取得したものと考えられる、VBA コードを含むドキュメントの使用が業務上不可欠な組織では、この設定を有効にしないでください。

Office 2016 で VBA を無効にする

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

注:

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

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

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

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

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

プログラムによって起動されたアプリケーションでの Office 2016 VBA マクロの動作を変更する

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

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

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

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

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

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

    • マクロが有効 (既定値) マクロは、プログラムで開かれたアプリケーションで実行できます。 このオプションは、既定の構成を適用します。

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

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

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

Office 2016 で暗号化された VBA マクロに対するウイルス スキャンの方法を変更する

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

  • スキャンしないようにウイルス対策ソフトウェアを構成し、暗号化されたすべての VBA マクロの実行を許可します。

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

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

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

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

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

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

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

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

Office 2016 アプリケーションにおける VBA マクロの動作に影響する設定は、他に 2 つあります。 特殊なセキュリティ環境があるために VBA マクロ設定を変更する場合は、次の設定を評価できます。

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

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

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

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