Skip to main content
Excelファイルをパスワードで保護する方法

Excelファイルをパスワードで保護する方法|安全に保護するには?

Excelファイルにパスワードを設定するだけなら、わずか30秒ほどでできます。でも、そのパスワードで何が守られているのかまで理解している人は、意外と少ないものです。 設定方法は簡単でも、本当に安全に保護するには知っておきたいポイントがあります。

Excelファイルにパスワードを設定する方法

Windows(Microsoft 365、2024、2021、2019、2016)

  1. 保護したいブックを開きます。
  2. ファイル>情報」の順に進みます。
  3. ブックの保護」を選択し、「パスワードを使用して暗号化」を選びます。
  4. パスワード入力欄にパスワードを入力し、「OK」を選択します。
  5. パスワード再入力欄に同じパスワードをもう一度入力し、「OK」を選択します。
  6. ファイルを保存します。次回、誰かがこのファイルを開こうとすると、Excelからパスワードの入力を求められます。

ダイアログを閉じる前に、2つ覚えておきたいことがあります。パスワードは大文字と小文字が区別されます。また、忘れてしまったパスワードをMicrosoftが復元することはできません。 パスワードをリセットするリンクも、それを復旧してもらえるサポートへの問い合わせ方法もありません。なくさないパスワードを設定しましょう。(Microsoft

Mac(Microsoft 365 for Macおよび最近のバージョン)

  1. ブックを開きます。
  2. 校閲」タブを開き、「ブックの保護」を選択します。
  3. このブックを開くためのパスワードを設定」の項目にパスワードを入力します。これがファイルを暗号化するためのパスワードです。
  4. パスワードを確認し、ファイルを保存します。

Macでは、同じダイアログ内で、ファイルを変更するためのパスワードや、ブックの構造を保護するための設定も利用できます。どの項目にパスワードを入力しているのか、しっかり確認してください。それぞれ役割が大きく異なります。この点については、次で詳しく説明します。

Excel for the web

ブラウザ版Excelに「パスワードを使用して暗号化」という項目がないのには、ちゃんと理由があります。Excel for the webでは、パスワード保護を追加したり削除したりすることができません。 ファイルを暗号化するには、デスクトップ版のExcelで開く必要があります。

ただし、ブラウザ版Excelが何もできないわけではありません。すでに暗号化されているブックであれば、パスワードを知っている限り、Excel for the webで開いたり編集したりできます。 例外となるのが保護されたワークシートで、こちらはExcel for the webでは編集できず、閲覧のみ可能です。(Microsoft)

つまり、ファイルにパスワードを設定して保護したい場合は、最初にデスクトップ版Excelで設定しましょう。 一度設定すれば、その保護はファイル自体に適用されるため、その後ほかの環境で使用しても保護された状態が維持されます。

Excelに用意されている3つの「保護」機能と、本当にファイルを安全にするもの

ここで、多くの解説記事は説明を終えてしまい、混乱が始まります。Excelには、いかにも安心できそうな名前の保護機能がいくつも用意されています。それぞれ同じような機能に聞こえますが、実際にはまったく違います。 それぞれが何をするのか、正しく理解しておきましょう。

パスワードを使用して暗号化」は、先ほどの手順で設定したファイル全体を保護する機能です。ファイル全体を暗号化し、開くためだけでもパスワードが必要になります。この一覧の中で、実際に第三者からデータを読まれないようにできる唯一の機能です。

ブックの構造を保護」は、「校閲」>「ブックの保護」から設定でき、シートの追加、移動、削除、非表示、名前の変更などをできないようにします。ただし、シートの内容を隠す機能ではありません。 ファイルを開ける人なら、すべてのセルの内容を読むことができます。(Microsoft

つまり、保護しているのはブックの構造であって、その中にある機密情報ではありません。

シートの保護」は、「校閲」>「シートの保護」から設定でき、特定のセルを編集できないようにロックします。同僚が誤って数式を変更してしまうのを防ぐ、といった用途には便利です。しかし、これはセキュリティ機能ではありません。 Microsoftも明確に説明しています。

「ワークシートレベルの保護は、セキュリティ機能として意図されたものではありません。単に、ユーザーがワークシート内のロックされたセルを変更するのを防ぐものです。」

さらに、「変更用パスワード」という4つ目の機能もあります。これは誰でもファイルを開けるようにしつつ、変更内容を保存するときだけパスワードを求める機能です。あくまで簡易的なロックであり、ファイルを開いている間はデータをすべて見ることができます。

ここで重要なポイントです。「シートの保護」と「ブックの構造を保護」は、約1分ほどで解除できてしまいます。これらは暗号化ではありません。ファイル内部の構造に単純なフラグとして保存されているため、広く利用できる無料ツールを使って削除できます。このことはすでによく知られている事実なので、ここでは具体的な解除方法までは説明しません。重要なのは、「誰かにデータを見られないようにしたい」という目的なら、「パスワードを使用して暗号化」だけが有効だということです。それ以外の機能はすべて、「触らないでください」というお願いであって、本当のロックではありません。 (Microsoftで詳細を確認)

Excelの暗号化は実際どれくらい強いのか?

結論から言えば、かなり強力です。ここでいう最新のExcel、つまり2016以降のバージョンでは、256ビット鍵のAESを使ってファイルを暗号化しています。これは、銀行の情報や機密データの保護にも利用されているものと同じクラスの暗号化方式です。さらに、パスワードをSHA-512でハッシュ化し、10万回の処理を行ってから暗号化キーを生成します。 これは、総当たり攻撃でパスワードを推測しようとする攻撃者の処理速度を意図的に遅くするための仕組みです。(Microsoft)

AES-256そのものを破ることを心配する必要はありません。数学的な仕組みが弱点になるわけではないからです。

ほとんどの場合、弱点になるのはパスワードそのものです。「Spring2024」のようなパスワードでスプレッドシートを保護しても、実質的には十分な保護とは言えません。パスワード解析ツールは、よく使われるパスワードや予測しやすいパスワードを短時間で大量に試すことができるからです。256ビットの強力な暗号化も、それを守るパスワードと同じ強さしかありません。長く、ランダムで、他では使っていないパスワードを設定することで、AES-256という強力な暗号化を本当のセキュリティにつなげることができます。反対に、覚えやすいけれど簡単に推測できるパスワードでは、せっかくの強力な暗号化も見せかけのようなものになってしまいます。(この点についてさらに詳しく知りたい場合は、パスワードの暗号化とは何か、どの程度の暗号化が必要なのかもご覧ください。)

最後に、1つ注意点があります。この強力な暗号化が適用されるのは、最新の.xlsx形式です。古い形式、例えばExcel 97~2003で使われていた .xls形式で保存すると、古い方式による保護になり、はるかに簡単に突破される可能性があります。現在の.xlsx形式を使用すれば、強力な暗号化を利用できます。

パスワードを削除・変更する方法とパスワードを忘れた場合の現実

覚えているパスワードを変更したり削除したりするのは簡単です。現在のパスワードを使ってファイルを開き、「ファイル」>「情報」>「ブックの保護」>「パスワードを使用して暗号化」に戻ります。入力欄の文字を削除して「OK」を選択し、ファイルを保存します。Macの場合は、「校閲」>「ブックの保護」のダイアログをもう一度開き、パスワード欄を空にします。ブラウザで変更したい場合はどうでしょうか?できません。 まずデスクトップ版Excelでファイルを開く必要があります。

パスワードを忘れてしまった場合は、話がまったく違います。パスワードを復元する方法はありません。Microsoftでも、忘れたパスワードを取得したりリセットしたりすることはできません。(Microsoft)

第三者が提供する「Excelパスワード復元」ツールも存在しますが、利用する前に、どのような仕組みで動いているのかを理解しておきましょう。こうしたツールはパスワードを推測することで復元を試みます。 そのため、弱いパスワードなら突破できますが、強力なパスワードには通用しません。これはツールの欠陥ではありません。強力なパスワードが持つ本来の目的そのものです。そして、この仕組みには両面があります。あなたのファイルを取り戻すために使える可能性があるツールは、まさに攻撃者がそのファイルに対して使う可能性のあるものでもあります。

ここで、個人よりも企業にとって重要な問題が出てきます。個人の場合、「パスワードを復元できない」というのは単なる個人的な悩みかもしれません。しかし、チームにとっては業務上のリスクになります。では、そのパスワードを知っている唯一の担当者が会社を辞めたら、どうなるでしょうか?

パスワードで保護したスプレッドシートがチームではうまく機能しない理由

1人が1つのファイルを管理するのであれば、パスワードでロックする方法は問題なく機能することがあります。しかし、同じ方法をチームで使うと、すぐに問題が見えてきます。

ファイルのパスワードは、必要な人が知っていて初めて役に立ちます。そのため、相手にパスワードを送ることになります。そして、そのパスワードはあなたがメッセージを送る場所なら、どこにでも残ってしまいます。Slack、メール、テキストメッセージ、あるいはモニターに貼った付箋。こうして、本来の鍵とは別に、保護されていない鍵のコピーを作り、自分で管理できない複数の場所にばらまいてしまうことになります。

次に問題になるのが、アクセスを取り消せないことです。一度誰かがパスワードを知ってしまえば、その人はいつまでも知っていることになります。一度教えてしまった秘密を、後から「知らなかったこと」にすることはできません。その人が会社を辞めたり、別のチームへ異動したりした場合、現実的な選択肢は、ファイルを新しいパスワードで再度暗号化し、まだアクセスする必要がある全員に新しいファイルを配布することです。そして、最初の問題だった「パスワードを共有する」という、情報漏えいにつながりやすい作業をもう一度繰り返すことになります。

さらに、監査の記録もありません。1つの共有パスワードだけでは、誰がファイルを開いたのか、いつ開いたのか、どこからアクセスしたのかを確認できません。ファイルから見れば、ユーザーは1人しかいないからです。パスワードを持っている人全員が、同じ1つの名札を付けているようなものです。

最後に、ファイルのバージョンが増えすぎる問題があります。チーム内でExcelファイルをメールでやり取りしていると、すぐに6つものコピーが受信トレイなどに存在するようになります。その中には暗号化されているものもあれば、されていないものもあります。前四半期の古いパスワードが設定されたままのファイルが残っていることもあるでしょう。こうして、保護されたファイルと、実際にチームが使っているファイルの内容が少しずつ食い違っていきます。 最終的には、どのファイルが本物なのか、誰にも分からなくなってしまいます。(鍵をあちこちにばらまかずにアクセスを共有する安全な方法は、パスワードを設定したファイルをメールで送る方法とはまったく異なります。)

より大きな危険信号と解決策

ここで一度立ち止まって、パスワードによって見えにくくなっている問題について考えてみましょう。

「そもそも、そのスプレッドシートには何が入っているのか?」

大まかな予算案などであれば、暗号化したファイルを使うのはまったく問題ありません。しかし、機密性の高い情報を扱う場合、パスワードによるロックが「安全だ」という誤った安心感につながる可能性があります。ファイル自体は保護できても、そのファイルがコピーされたり、共有されたり、どこかに放置されたりすることまでは防げないからです。

そして、特に注意すべきケースがあります。もしそのスプレッドシートにパスワードやログイン情報を保存しているのであれば、それは本当の意味で危険信号です。多くのチームが使っている、いわゆる「IT credentials.xlsx」のような共有ファイルがその典型です。このファイルにパスワードを設定するということは、大量の機密情報を、さらに1つの秘密情報で守ることを意味します。しかも、そのパスワードは全員で共有され、アクセスを取り消すこともできず、誰が使用したのかを確認する記録も残りません。前のセクションで説明した問題が、最も重要な情報に対して一度にすべて当てはまってしまうのです。スプレッドシートは、パスワードを保存する場所として最も一般的で、最も危険な場所の1つです。ファイルにパスワードを設定したからといって、この問題が解決するわけではありません。

解決策は、より強力なスプレッドシートのパスワードを作ることではありません。必要なのは、その目的のために作られたツールを使うことです。専用のパスワードマネージャーなら、これまで説明した4つの問題をそれぞれ直接解決できます。1つの共有パスワードを使うのではなく、ユーザーごとに個別のアクセス権を設定できます。誰かが退職したときにファイルを再度暗号化して送り直すのではなく、ワンクリックでその人のアクセス権を取り消せます。誰が何を開いたのか分からない状態ではなく、実際のアクセス履歴を確認できます。6人の受信トレイに6つのファイルが存在する状態ではなく、1つの正しい情報源(Single Source of Truth)に情報を集約できます。これこそが、TeamPasswordが提供する仕組みです。特に、共有ログイン情報を管理する必要がある小規模チームやIT担当者に適しています。

チームでのコラボレーションを想定した充実した機能により、完全な管理と安心感を実現できます。

  • 統合TOTP認証機能:TeamPassword内で時間ベースのワンタイムパスコードを直接生成できます。スマートフォンに別の認証アプリをインストールする必要がありません。
  • 強制可能な2FA:組織内のすべてのユーザーに2要素認証を必須にし、全員が一定の高いセキュリティ基準を維持できるようにします。
  • 詳細なアクティビティログ:誰が、いつ、どの情報にアクセスしたのかを完全な監査履歴として記録できます。セキュリティ監査やアクセス管理にも役立ちます。
  • 無制限のレコードとグループ:ログイン情報を無制限に保存し、チーム、プロジェクト、顧客などに応じてグループ分けして、簡単に管理・アクセスできます。
  • 複数のユーザーロール:ユーザーごとに細かな権限を設定し、誰が認証情報を閲覧、編集、作成できるのかを正確に管理できます。必要な人にだけアクセス権を付与できます。
  • 無料のGoogleサインイン:チームで使用しているGoogleアカウントを使って、ワンクリックで安全にログインできます。初期設定や日常的なアクセスも簡単になります。
  • ワンタイム共有:外部の業者やパートナーに1つのパスワードを一定期間だけ安全に共有できます。レコードへの永続的なアクセス権を与える必要はありません。

月額ユーザー1人あたりわずか400円から利用できるTeamPasswordは、ビジネスの情報を保護するための、効果的かつ手頃な方法です。

スプレッドシートを暗号化するのは、「このファイルをどうやってロックすればいい?」という質問に対する適切な答えです。しかし、「チームで機密情報を安全に共有するにはどうすればいい?」という質問への答えとしては適切ではありません。もしパスワードで保護したスプレッドシートが、実はパスワード一覧を偽装しただけのファイルなのであれば、本当にロックする必要があったのはファイルではありません。守るべきは、その中に保存されている認証情報なのです。

最新情報をお見逃しなく!

このような投稿をもっと読みたい方は、ブログを購読してください。

The Password Manager for Teams

TeamPassword is the fastest, easiest and most secure way to store and share team logins and passwords.

Get Started!