認証サーバーとは?定義、アーキテクチャ&運用
認証サーバーは、ネットワーク、アプリケーション、またはシステムへのアクセスを許可するプロセスを管理します。
サーバーに接続する前に、ユーザーは自身が本人であることを証明する必要があります。認証サーバーは、この緻密な作業を処理します。
認証サーバーは、スイッチ、専用コンピューター、またはネットワークサーバーに組み込むことができます。すぐに使えるソフトウェアを使用することも、自社/組織用に書かれたカスタムコードで実行することもできます。
どのようにセットアップし、デプロイするかにかかわらず、これらのサーバーは、重要な資産を安全に保護する上で重要な役割を担っています。
認証サーバーとは?
サーバーを訪問する人物は偽のユーザーでしょうか?それとも、知り合いで信頼できる人物なのでしょうか?その疑問に答えるのが認証です。
認証は通常、パスワードから始まります。私たちのほとんどが、70~80のパスワードを持っており、パスワードとは何か、それがどのように機能するかよく知っています。サイトを訪問する際には、パスワードとユーザー名のペアを利用してアクセスします。
認証サーバーは、このユーザー名とパスワードの組み合わせに対して、次の2つの方法のいずれかで対処します。
- 単一要素:ユーザーが両方のフィールドに正しいデータを入力すると、認証が完了します。この場合、パスワードはサーバーが検証する1つの要素です。
- 多要素: 正しいユーザー名とパスワードの組み合わせだけでは不十分です。サイトが認証を完了させるために、もう1つのステップを要求します。リンクされたデバイスに一時的なパスコードを送ったり、Yubikeyを使ったり、その他の方法を使うこともあります。
単一要素システムは、ユーザーにとってはシンプルに見えます。しかし、ユーザー名/パスワードの組み合わせをすべて覚えておくのは難しいかもしれません。専門家は、作業の負担を軽減するためにパスワードマネージャーを使うことを推奨しています。ただし、中にはウェブサイト間で同じデータを再利用するだけのユーザーもいます。正しい組み合わせにアクセスできるハッカーは、複数のサイトでログインできてしまうでしょう。
アクセスするには2つのハードルを越えなければならないため、多要素認証の方がより安全です。全企業の半数以上が、サイトの安全性を確保するためにこの方法を採用しており、このテクノロジーを採用する企業は年々増えています。
認証サーバーの仕組み
ファイルにアクセスするユーザーの権限を検証するプロセスは非常に迅速に行われるため、大半のユーザーはその遅延に気づきません。しかし、その舞台裏では多くのステップが行われています。
単一要素認証サイトにおけるプロセスは次のようになります。
- ユーザーはユーザー名とパスワードを入力します。サイトがそのデータを暗号化(またはスクランブル)し、サーバーに送信します。
- サーバーはデータを復号化し(またはスクランブルを解除し)、データベースに登録されている情報と比較します。
- 入力された項目が保存されている組み合わせと一致すれば、認証は完了です。
多要素認証プロセスには、さらに多くのステップがあります。
- ユーザーはユーザー名とパスワードを入力します。サイトはデータを暗号化し、サーバーに送信します。
- サーバーはデータを復号化し、データベースに保存されている情報と比較します。
- 情報が一致した場合、ワンタイムパスワードを作成し、ユーザーに送り返します。登録されている携帯電話に送られるテキストメッセージや、SMSなどで配布します。サーバーは、ワンタイムパスワードを受け付けるためのオープンウィンドウを作成します。
- ユーザーはそのワンタイムパスワードを受け取り、入力します。認証が完了します。
Kerberos、RADIUS、Microsoft NTLM など、多くの認証プロトコルが存在します。これらはすべて、わずかに異なるテクノロジーとコーディングタイプを使用していますが、それぞれ上記のステップでユーザーを遷移させます。
「認証」と「認可」の違いとは?
よく似ていて一緒に使われることも多いこの2つの用語は混同されがちです。しかし、「認証」と「認可」の違いを理解することは非常に重要です。
簡単に言えば、「認証」とは個人のアイデンティティを確認することです。「認可」とは、そのユーザーが何にアクセスすべきで、何にアクセスすべきでないかを確認することです。
認証サーバーは最初のステップを処理します。サーバーの作業が完了すると、ユーザーのアイデンティティが確認されますが、認証サーバーは続けて認可サーバーと連携しなければなりません。このツールはアクセストークンを解放し、適切なアクセス許可を開放します。
物理的な世界での例を挙げると、この関係をより明確に理解できるかもしれません。例えば、セキュリティの専門家が集まるカンファレンスに出席するとします。到着すると、自分の名前と電子メールアドレスを提供し、主催者はそのデータを登録ユーザーのリストと照らし合わせます。認証を通過します。
次に、チームはすでに登録済みのセッションと支払いに目を通します。それが完了すると、バッジと各種イベントのチケットが渡されます。これで認可が完了し、カンファレンスで必要なことができるようになります。
ほとんどのWebサイトは、認証と認可をペアにしています。例えば、大学ではこれらのシステムを利用して、学生にWebサイトのログインを許可する一方で、同級生のデータを閲覧できないようにブロックしています。
Oktaのセキュリティについて詳しく知る
単一要素認証を使うべきでしょうか?それとも、多要素認証ならではの安全性が必要でしょうか?貴社のアーキテクチャの中で、サーバーはどこに配置するべきでしょうか?
セキュリティチームは多くの疑問を抱えているものの、その答えを見つけるのは必ずしも容易ではありません。多要素認証やユーザー認証など、Oktaがお客様にどのようにお役に立てるかをご覧ください。
参考文献
New Research: Most People Have 70-80 Passwords(2020年2月、Newswire)
Study Reveals Average Person Has 100 Passwords(2020年10月、Tech.Co)
More Enterprises Use Multi-Factor Authentication to Secure Passwords(2019年10月、Security)
Understanding and Selecting Authentication Methods(2021年8月、TechRepublic)
Understanding Authentication, Authorization, and Encryption(Boston University)