COLUMN誰でもわかる!お役立ちコラム

ゼロトラスト支援コラム

シングルサインオンを理解して正しい手順で導入するポイントは?

本コラムではクラウドサービスのパスワード管理を効率的にするシングルサインオンという機能について説明していきます。

シングルサインオンとは

シングルサインオンとは一度本人認証すれば、他の複数のサービスやシステムへ のサインインを自動で行ってくれる機能のことを指します。これにより利用者はサービスごとに ID・パスワードを 入力する必要がなくなります。

シングルサインオンの認証方式

シングルサインオンの認証方式としては主に4つあります。

AzureADでシングルサインオンを実現するスタイルズのID管理サービスはこちら→

SAML認証方式

SAML(Security Assertion Markup Language)とは、異なるインターネットドメイン間(IDaaSとクラウドサービス間)でユーザ認証を行うための標準規格です。
ID管理や認証を行うIDプロバイダ(IDaaSなど)がクラウドサービスのようなサービスプロバイダからの認証要求を受けて、IDプロバイダ側が持っている認証情報を提供します。通常はサービスごとに認証が必要になりますが、この方式であればIDプロバイダの認証が完了していればほかのサービスについては認証作業が不要になります。

また、認証情報を共有するので、サービスごとにパスワードなどを設定する必要もなくなります。
この認証方式を利用する場合は、IDプロバイダとサービスプロバイダの双方がSAML認証に対応しているか確認する必要があります。

代理認証方式

代理認証はサービスにサインインするためのユーザ情報(IDやパスワードなど)をクライアントPCにインストールしたエージェントに登録しておき、ユーザがサービスを利用する際に登録しておいた情報を代理で入力してくれる認証方式になります。この方式を利用する場合は、クライアントPCにエージェントをインストールする必要があります。

エージェント方式

Webサーバやアプリケーションサーバに認証代行をしてくれる「エージェントモジュール」というソフトウェアを導入して認証を行う方式です。この方式で認証を行う場合は事前にサーバなどにソフトウェアを導入する必要があります。

リバースプロキシ方式

リバースプロキシと呼ばれる認証サーバを設置して認証を行う方式です。この方式で認証を行う場合は事前に認証サーバを構築する必要があります。

この4つの方式のうち多くのIDaaSで利用されていて、かつ推奨されているのはSAML認証方式です。その理由としては、新たに機器やソフトウェアの構築や導入が必要なく、パスワードなども使用しない点でほかの認証方式より管理面やセキュリティ面でも優れているからです。

ただし、シングルサインオンを導入したいサービスによってはSAML認証に対応していないものもあるので確認は必要です。

SAML認証によるシングルサインオンのメリット

上で推奨したSAML認証によるシングルサインオンのメリットは、利用者・管理者双方にあります。
まず利用者はシングルサインオンを利用することでサービスごとに ID・パスワードを 入力する必要がなくなります。

これまでサービスを利用する際にはサービスごとに設定したパスワードを入力してサインインする必要がありました。そのため、ユーザとしてはサービスごとにパスワードを設定しなくてはならず、サービスが増えるごとにパスワードも増えて管理が大変でした。シングルサインオンを利用した場合、パスワードはメインのID管理システム用の1つだけ用意すればよく、管理も非常に楽になります。

管理側も、パスワードを忘れたり何度も間違えてロックアウトしたりするユーザに対する対応に追われ、それだけで時間がかかっていました。シングルサインオン機能を使うことで設定するパスワードも減り、それによってパスワード関連の問合せ対応が減ることにより負担を軽減することができます。

管理するパスワード1つだけで大丈夫?

管理するパスワードが1つだけであれば、そのパスワードが盗まれてしまったらすべてのサービスにアクセスできてしまうのでは?と心配するかもしれません。そのような事態を避けるためには、IDaaSの別機能である「多要素認証」や「アクセス認可」といった機能と連携させることによって認証機能を強化することができます。これにより万が一パスワードが流出した場合でも不正アクセスを防ぐことができます。

また、認証機能の強化に加えて、パスワードをメモや付箋などに書き留めることをやめるなどして管理を徹底することも大切です。
管理以外にも、パスワードの文字数を増やしたり大文字小文字の英字を組み合わせ記号も使用する、他人から推測されにくいパスワードにするなど、より強固なパスワードにすることも重要です。

悪意あるユーザが総当たり攻撃でパスワードの解読を試みた場合にかかる時間は、同じ10桁のパスワードでもアルファベット(大文字小文字を組み合わせたもの)のみだと解読に1ヵ月かかるのに対して、数字や記号も組み合わせることにより解読時間は5年もかかると言われています(逆に数字だけ、小文字のアルファベットだけの場合は1時間もかからずに解読されてしまいます)。IPAでもパスワード設定は「できる限り長く、複雑にし、絶対に使い回さない」ことを推奨しています。

IDaaSのようなクラウドサービスを使わずにシングルサインオンを利用する方法としてActive Directory Federation Service(ADFS)があります。ADFSは現在利用しているActiveDirectoryに認証機能を一元化してクラウドサービスのシングルサインオンを実現する機能を持つサービスです。ActiveDirectoryに登録されたIDでサインインすればほかのクラウドサービスのサインインは必要なくなるので、機能としてはIDaaSの持つシングルサインオン機能と変わりはありません。
しかし、ADFSを使用するにはADFS用のサーバやプロキシを構築・構成する必要があり、またシングルサインオン機能を常に利用できる環境にするために冗長化も必要になります。ほかにもOSのパッチ適用や証明書の更新など運用コストもかかるなどデメリットもあります。
IDaaSではOSのパッチ適用や冗長化などの運用・管理コストは考慮に入れなくてよいのでその分負担は減ります。

AzureADでシングルサインオンを実現するスタイルズのID管理サービスはこちら→

シングルサインオンを導入する前に確認するポイント

シングルサインオンを導入する前に確認しておくポイントは以下になります。また、これ以外にもIDaaSのホームページにシングルサインオンを導入するにあたって、考慮する必要がある項目を記載している場合もありますので、そちらも併せてご確認ください。

シングルサインオンを導入する予定のシステム(サービス)について

シングルサインオンを利用したいシステムやサービスが対応しているか確認は必要になります。対応していても、有料プランのみ利用できるサービスもありますので、現在利用しているプランがシングルサインオン機能に対応しているかご確認ください。

シングルサインオンを導入するユーザについて

シングルサインオンを利用予定のユーザがどれくらいいるのかを確認します。IDaaSのシングルサインオン機能を利用したい場合は、ユーザ数に応じて利用料金が変わってくることが多いので、確認は必要です。また、一部のユーザのみにシングルサインオン機能を付与したい場合は、導入を検討しているシステムやサービスが一部のユーザのみに機能を付与することが可能か確認が必要です。

シングルサインオンの認証方式について

導入を検討しているシステムやサービスがシングルサインオンに対応していた場合、上で挙げた認証方式のうちどの方式に対応しているか確認が必要になります。方式によって準備が必要な機器やソフトウェアも変わります。

ゼロトラストサービス一覧