Excel-macros-security
Excelマクロ-セキュリティ
Excelで作成するマクロは、プログラミング言語VBA(Visual Basic for Applications)で記述されます。 後の章でExcelマクロコードについて学習します。 ご存知のように、実行可能コードがある場合、ウイルスの脅威があります。 マクロもウイルスの影響を受けやすくなっています。
マクロウイルスとは
マクロが記述されているExcel VBAは、ほとんどのWindowsシステムコールにアクセスし、ブックを開くと自動的に実行されます。 したがって、マクロとして記述されたウイルスの存在の潜在的な脅威があり、ブックを開くときに実行されるExcel内に隠されています。 したがって、Excelマクロは多くの点でコンピューターにとって非常に危険です。 ただし、Microsoftはブックをマクロウイルスから保護するための適切な対策を講じています。
マイクロソフトは、マクロセキュリティを導入しました。これにより、信頼できるマクロとできないマクロを識別できます。
マクロ対応Excelワークブック
最も重要なExcelマクロセキュリティ機能は-ファイル拡張子です。
Excelブックは、デフォルトで.xlsxファイル拡張子で保存されます。 拡張子が.xlsxのワークブックは、マクロを保存できず、脅威を伴わないため、常に信頼できます。
マクロを含むExcelブックは、.xlsmファイル拡張子で保存されます。 これらは、マクロ対応Excelワークブックと呼ばれます。 このようなブックを開く前に、含まれるマクロが悪意のないことを確認する必要があります。 このため、このタイプのワークブックの起源を信頼できることを確認する必要があります。
マクロ対応ワークブックを信頼する方法
Excelは、マクロが有効なワークブックを信頼する3つの方法を提供します。
- マクロが有効なワークブックを信頼できるフォルダーに配置する
- マクロがデジタル署名されているかどうかを確認する
- マクロ対応ワークブックを開く前にセキュリティ警告メッセージを有効にする
マクロが有効なワークブックを信頼できるフォルダーに配置する
これは、マクロセキュリティを管理する最も簡単で最適な方法です。 Excelでは、フォルダーを信頼できる場所として指定できます。 すべてのマクロ対応ワークブックをその信頼できるフォルダーに配置します。 警告または制限なしで、この場所に保存されているマクロ対応ワークブックを開くことができます。
マクロがデジタル署名されているかどうかを確認する
デジタル署名により、著者の身元が確認されます。 警告または制限なしに、信頼できる人からデジタル署名されたマクロを実行するようにExcelを構成できます。 また、作成者が署名してから変更された場合、Excelは受信者に警告します。
マクロ対応ワークブックを開く前にセキュリティ警告メッセージを有効にする
ブックを開くと、Excelにはブックにマクロが含まれていることが警告され、マクロを有効にするかどうかを尋ねられます。 ブックのソースが信頼できる場合は、[コンテンツを有効にする]ボタンをクリックできます。
Excelオプションのセキュリティセンターで、これら3つのオプションのいずれかを設定できます。
組織で作業している場合、システム管理者がデフォルト設定を変更して、だれも設定を変更できないようにしている可能性があります。 マイクロソフトは、セキュリティセンターのセキュリティ設定を変更しないことをお勧めします。その結果、データが失われたり、データが盗まれたり、コンピューターまたはネットワークのセキュリティが侵害される可能性があるためです。
ただし、次のセクションでマクロのセキュリティ設定を学習し、変更する必要があるかどうかを確認できます。 コンテキストとファイルの生成元に関する知識に基づいて、これらのオプションのいずれかを決定するには、独自の直感を使用する必要があります。
セキュリティセンターのマクロセキュリティ設定
マクロの設定は、Excelオプションのセキュリティセンターにあります。 セキュリティセンターにアクセスするには、次のようにします-
- リボンの[ファイル]タブをクリックします。
- オプションをクリックします。 [Excelオプション]ダイアログボックスが表示されます。
- 左ペインの[ Trust Center ]をクリックします。
- Microsoft Excel Trust Centerの下にある Trust Center Settings ボタンをクリックします。
[ Trust Center ]ダイアログボックスが表示されます。
左ペインのExcel Trust Centerで利用可能なさまざまなオプションが表示されます。 次のセクションで、Excelマクロに関連するオプションについて学習します。
マクロ設定
マクロ設定は、セキュリティセンターにあります。
[マクロの設定]で、4つのオプションを使用できます。
- 通知なしですべてのマクロを無効にする-このオプションを選択すると、マクロおよびマクロに関するセキュリティ警告が無効になります。
- 通知付きのすべてのマクロを無効にする-マクロは無効になっていますが、マクロが存在する場合はセキュリティ警告が表示されます。 マクロは、ケースバイケースで有効にできます。
- デジタル署名されたマクロを除くすべてのマクロを無効にする-マクロは無効になっていますが、マクロが存在する場合はセキュリティ警告が表示されます。 ただし、マクロが信頼できる発行元によってデジタル署名されている場合、発行元を信頼するとマクロが実行されます。 発行元を信頼していない場合、署名されたマクロを有効にして発行元を信頼するように通知されます。
- すべてのマクロを有効にします(推奨されません、マクロウイルスの影響を受けやすい)-このオプションを選択すると、すべてのマクロが実行されます。 この設定により、コンピューターは潜在的に悪意のあるコードに対して脆弱になります。
[開発者マクロの設定]の下に、チェックボックス付きの追加のセキュリティオプションがあります。
- * VBAプロジェクトオブジェクトモデルへのアクセスを信頼します。*
- このオプションを使用すると、オートメーションクライアントからVisual Basic for Applications(VBA)オブジェクトモデルにプログラムでアクセスできます。
- このセキュリティオプションは、Officeプログラムを自動化し、VBA環境とオブジェクトモデルを操作するために記述されたコード用です。
- これはユーザーごとおよびアプリケーションごとの設定であり、既定ではアクセスを拒否し、不正なプログラムが有害な自己複製コードを作成するのを妨げます。
- 自動化クライアントがVBAオブジェクトモデルにアクセスするには、コードを実行しているユーザーがアクセスを許可する必要があります。 アクセスを有効にするには、チェックボックスを選択します。
信頼できる場所の定義
マクロが有効なワークブックが信頼できるソースからのものであると考えられる場合は、デフォルトのセキュリティセンター設定を安全性の低いマクロセキュリティ設定に変更するのではなく、Excelで識別される信頼できる場所にファイルを移動することをお勧めします。
信頼済みフォルダーの設定は、セキュリティセンターで見つけることができます。
[セキュリティセンター]ダイアログボックスで[信頼できる場所]をクリックします。 Microsoft Officeによって設定された信頼できる場所が右側に表示されます。
新しい場所を追加したり、既存の場所を削除したり、既存の場所を変更したりできます。 識別された信頼できる場所は、Microsoft Officeによってファイルを開くための信頼できる場所として扱われます。 ただし、場所を追加または変更する場合は、その場所が安全であることを確認してください。
また、インターネット上の場所など、オフィスが推奨しないオプションを見つけることもできます。
信頼できるソースからのデジタル署名されたマクロ
マイクロソフトは、デジタル署名されたマクロに対応するオプションを提供しています。 ただし、マクロがデジタル署名されている場合でも、信頼できる発行元からのものであることを確認する必要があります。
信頼できる発行元は、セキュリティセンターにあります。
- [セキュリティセンター]ダイアログボックスで[信頼できる発行元]をクリックします。 証明書のリストが右側に表示され、詳細(発行先、発行元、有効期限)が示されます。
- 証明書を選択して、「表示」をクリックします。
証明書情報が表示されます。
この章で前述したように、発行元を信頼している場合にのみデジタル署名されたマクロを実行するオプションを設定できます。 発行元を信頼しない場合、署名されたマクロを有効にして発行元を信頼するように通知されます。
警告メッセージの使用
開いているファイルにマクロがある場合、メッセージバーにセキュリティ警告が表示されます。 シールドアイコンのある黄色のメッセージバーは、マクロが無効になっていることを警告します。
マクロが信頼できるソースからのものであることがわかっている場合は、メッセージバーの[コンテンツを有効にする]ボタンをクリックしてマクロを有効にすることができます。
セキュリティ警告が必要ない場合は、メッセージバーオプションを無効にできます。 一方、メッセージバーオプションを有効にしてセキュリティを強化できます。
メッセージバーのセキュリティアラートの有効化/無効化
次のようにメッセージバーでセキュリティアラートを有効/無効にすることができます-
- リボンの[ファイル]タブをクリックします。
- オプションをクリックします。 [Excelオプション]ダイアログボックスが表示されます。
- [セキュリティセンター]をクリックします。
- [セキュリティセンターの設定]ボタンをクリックします。
- [メッセージバー]をクリックします。
すべてのOfficeアプリケーションのメッセージバー設定が表示されます。
-*メッセージバーの表示*の下に2つのオプションがあります。
- オプション1 *-マクロなどのアクティブコンテンツがブロックされている場合、すべてのアプリケーションでメッセージバーを表示します。
- これはデフォルトのオプションです。 安全でない可能性のあるコンテンツが無効になっている場合、メッセージバーが表示されます。
- [セキュリティセンターのマクロ設定で通知せずにすべてのマクロを無効にする]を選択した場合、このオプションは選択されず、メッセージバーは表示されません。
- オプション2 *-ブロックされたコンテンツに関する情報を表示しない。
このオプションを選択すると、セキュリティセンターのセキュリティ設定に関係なく、メッセージバーが無効になり、セキュリティの問題に関するアラートは表示されません。