SB C&Sの最新技術情報 発信サイト

C&S ENGINEER VOICE

Cisco Duo紹介:第2回 デバイス可視化/適応型アクセスポリシー/シングルサインオン

ネットワーク
2020.09.03

皆さま

こんにちは。

Cisco Duoの紹介ブログの2回目となります。
前回はDuoの概要と多要素認証の機能をご紹介させていただきました。
前回のブログをご覧になっていない方は、先に読んでいただくことをお勧めします。

Cisco Duo紹介:第1回 Duo概要とMFA

さて今回のブログではDuoの4つの機能のうち、残りの3つをご紹介させていただきます。

今回ご紹介するのは

②デバイス可視化
③適応型アクセスポリシー
④シングルサインオン

の3つとなります。

それでは早速ご紹介します。


Duoの機能②デバイス可視化

デバイスの可視化はデバイスの信頼性の検査を目的としています。
MFAではユーザの信頼性の検証を行いましたが、デバイス可視化ではそのユーザが使用しているデバイスの信頼性を検査します。

Duoにてデバイスの可視化を行う機能が「Device Insight」となります。

Device Insight

図1.jpg

Device Insightはクライアントにソフトウェアのインストールを行うことなく動作します。
Duoを介してアプリケーションにログインする際にデバイスを検査します。

Device Insightではあくまで情報の取得を行うのみで、取得した情報をもとに設定したポリシーを満たしたデバイスのみのアクセスを許可するといった制御は、次項の適応型アクセスポリシーを利用して行います。

検査する情報はデバイスがラップトップ/デスクトップPCか、モバイルデバイス(スマートフォン)かによって異なります。

Laptops & Desktops

deviceinsight-desktop.png

Laptops & Desktopsではラップトップ/デスクトップPCを対象に以下の情報を取得します。

◆Operating Systems
デバイスのOS(Windows/macOS/Chrome OS/Linux等)とOSのバージョンを取得します

◆Client Browsers
デバイスがアプリケーションにアクセスするのに利用しているブラウザ(Chrome/Safari/Internet Explorer/Edge/Firefox等)とバージョンを取得します

◆Browser Plugins
デバイスがアプリケーションにアクセスするのに利用しているブラウザのプラグイン(Java/Flash)とそのバージョンを取得します

Mobile Devices

deviceinsight-mobile.png

Mobile Devicesではスマートフォンを対象に以下の情報を取得します。

◆OS Version
デバイスのOS(iOS/Android/Windows Phone/Blackberry等)とOSのバージョンを取得します

◆Tampered Devices
改ざんされたデバイスの情報、iOSであればJailbreak、Androidであればroot取得の有無を取得します。

◆Screen Lock
画面ロックの設定の有効/無効の情報を取得します

◆Mobile Device Biometrics
指紋認証や顔認証などの生体認証の有効/無効の情報を取得します

◆Disk Encryption
Androidのみの機能となりますが、デバイスの暗号化の有効/無効の情報を取得します


Duoの機能③適応型アクセスポリシー

適応型アクセスポリシーはアクセス元のポリシーを作成し、アクセス先となるアプリケーション毎に制御を行うことが可能です。
アクセス元はユーザ/デバイス/ネットワーク/オーセンティケータの要素から可能です。

例えばWindowsからアクセスするユーザは特定のバージョン以降でないとアクセスさせないや、特定の国からのアクセスをブロックするといった制御が可能です。

またDuoではユーザをグルーピングして管理する機能も備えているため、作成したポリシーを特定のグループのみに割り当てるといった制御も可能です。

ポリシーを適用するアクセス先のアプリケーションに対しても、アプリケーション毎に個別にポリシーを適用することも、全てのアプリケーションに対して同一のポリシーで制限を行うことも可能です。

図3.jpg

ではポリシーに設定可能な項目の詳細をお話しします。

ユーザポリシー

Users.jpg

ユーザポリシーでは以下の3つの制御が可能となります。

◆新規ユーザポリシー
Duoへの登録が済んでいない新規のユーザに対して、自己登録の強制やアクセス許可/拒否の制御を行います。

◆認証ポリシー
Duoへ登録済みユーザに対して、多要素認証の強制、多要素認証なしでのアクセス許可/拒否の制御を行います。

◆ユーザのロケーション
アクセス元のIPアドレスからどの国からのアクセスであるかを確認し、場所を元にした制御を行います。
IPアドレスではなく国単位での設定となります。
ロケーションを元に何もしない、多要素認証なしでのアクセス許可/拒否の制御が可能です。

何もしないがデフォルトの動作となり、設定したポリシーの最後に全ての国に対しての制御が入ります。
例えば日本からのアクセスに対して、「1.何もしない」を設定した後に全ての国に対して、「3.アクセス拒否」を選択すると日本からのアクセス以外は拒否されます。

デバイスポリシー

Devices.jpg

デバイスポリシーでは②デバイス可視化の機能でご説明したデバイスの情報を基にした制御が可能となります。
制御可能な項目は以下の5つです。

◆Device Healthアプリケーション
DuoのWindows10/macOS10.13以降向けのエージェント型のソフトウェアである「Device Health」アプリケーションのインストールを要求するかを設定します。

◆記憶済みデバイス
この機能を有効にすることで、初回に多要素認証での認証を完了すると、設定した日数分(最大で365日)の多要素認証をスキップすることが可能です。

◆Operating Systems
②デバイス可視化でご説明したプラットフォームごとのOSやOSのバージョンで接続の制御を行います。
制御だけではなく、接続を許可する代わりに特定のバージョンを下回るデバイスに対して更新を促す通知を行うことも可能です。

◆Browsers
こちらも②デバイス可視化でご説明したブラウザとバージョンでの制御を行います。
OSと同様にブラウザの古いバージョンを利用しているデバイスに更新を促す通知も可能です。

◆Plugins
こちらも②デバイス可視化でご説明したブラウザのプラグインとバージョンでの制御を行います。
古いバージョンのプラグインを利用しているデバイスに更新を促す通知も同様に可能です。

ネットワークポリシー

Networks.jpg

ネットワークポリシーではアクセス元のグローバルIPアドレスを基にした制御が可能となります。
以下の2つのポリシーに分けられます。

◆承認済みネットワーク
多要素認証を要求するネットワーク、多要素認証をスキップするネットワークをグローバルIP単位で制御を行います。
また上記に合致しないIPアドレスからの接続をブロックすることも可能です。

◆匿名のネットワーク
プロキシやVPN等を介して匿名での通信を意図したIPアドレスからのアクセスに対しての制御を行います。
許可とブロック以外に多要素認証を要求することも可能です。

オーセンティケータポリシー

Authenticators.jpg

オーセンティケータポリシーでは認証を承認するMFAデバイス(主にDuo MobileをインストールしたiOS/Androidデバイス)に対しての制御を行います。
MFAデバイスがポリシーを満たさない場合にもアクセスをブロックすることが可能です。
以下の6つの項目での制御が可能です。

◆認証方法
前回のブログでご紹介したMFAの認証方式(Duo Push/SMS等)の中でどの方式を許可するかの制御を行います。

◆Duo Mobileアプリケーション
デバイスにインストールされているDuo Mobileアプリケーションのバージョンをチェックし接続の制御を行います。
Duo Mobileアプリケーションが最低限の安全なバージョンに満たない場合に認証をブロックすることも可能です。

◆改ざんされたデバイス
Jailbreak、root取得されたデバイスからの認証の制御を行います。

◆画面ロック
画面ロックを有効にしていないデバイスからの認証の制御を行います。

◆暗号化
デバイスの暗号化が行われていないデバイスからの認証の制御を行います。
Androidデバイスのみに有効な設定です。

◆生体認証
この設定を有効にすることで、Duo Pushによる認証リクエストの承認後に、登録された指紋/顔認証での認証を要求されるようになります。


Duoの機能④シングルサインオン

シングルサインオン(SSO)を利用することでユーザは1つのユーザ名/パスワードを覚えるだけで、複数のアプリケーションにログインすることが可能となります。

DuoではSAML(Security Assertion Markup Language)のバージョン2.0の規格を利用して、様々なクラウドアプリケーションにシングルサインオンを提供します。
シングルサインオンでのログイン時にはDuoのMFAを組み合わせることで、より強固なセキュリティを提供可能です。

簡単にSAMLを利用したSSOの仕組みを説明すると、ユーザはブラウザ等からクラウドアプリケーション(SP/Service Providerと呼ばれます)へアクセスします。
SPはユーザからの認証の要求をIdP(Identity Provider)と呼ばれる認証情報の提供者へリダイレクトし、ユーザはIdPとの間で認証を行います。
IdPで認証が完了すると、IdPはSPに対して認証情報をリダイレクトし、ユーザはクラウドアプリケーションへのアクセスが可能となります。

認証をアクセス先のクラウドアプリケーションではなく、IdP側で行う点がポイントです。

そしてDuoではこのIdPをDuoが担うことでシングルサインオンを提供します。

文字だけではわかりづらい部分もありますので、実際のシーケンスはこのあとに図でご説明します。

DuoのシングルサインオンではユーザのID情報の提供元として、

・Active Directory
・SAML IdP

の2つをサポートします。

ではこの2つの認証のシーケンスについてご説明します。

Active Directory

Active Directory(AD)をIDのソースとする場合には、オンプレミス上にDuo Authentication Proxyと呼ばれる認証のプロキシサーバを構築し、DuoクラウドとActive Directory間で認証情報を連携します。

Duo Authentication Proxyについては次回のブログでもご紹介します。

ではこの構成での認証シーケンスを見てみます。

SSO-図1.jpg

(1)ユーザは利用したいクラウドアプリケーションにブラウザからアクセスします。

(2)クラウドアプリケーションはユーザをDuoのシングルサインオンページにリダイレクトします。

(3)ユーザはプライマリ認証情報(ユーザ名/パスワード)を入力し送信します。

(4)認証情報を受け取ったDuo CloudはDuo Authentication Proxyに認証情報を送信します。
Duo Authentication ProxyはこれをActive Directoryに転送し、Active Directoryは認証可否をDuo Cloudへ送信します。

(5)Duo Cloudはセカンダリ認証としてMFAのDuo Push等でユーザのMFAデバイスに送信し、ユーザは認証を承諾します。

(6)Duo Cloudはユーザのブラウザをクラウドアプリケーションにリダイレクトします。

以上がActive DirectoryをIDのソースとした場合の認証シーケンスとなります。

SAML IdP

Duoとは別のSAML IdPをIDのソースとして指定することも可能です。

この構成での認証シーケンスは以下の通りとなります。

SSO-図2.jpg

(1)ユーザは利用したいクラウドアプリケーションにブラウザからアクセスします。

(2)クラウドアプリケーションはユーザをDuoのシングルサインオンにリダイレクトします。

(3)DuoシングルサインオンはユーザのブラウザをさらにSAML IdPにリダイレクトします。

(4)ユーザはプライマリ認証情報(ユーザ名/パスワード)を入力し送信します。

(5)SAML IdPは認証情報と共にユーザのブラウザをDuoのシングルサインオンページへリダイレクトします。

(6)Duo Cloudはセカンダリ認証としてMFAのDuo Push等でユーザのMFAデバイスに送信し、ユーザは認証を承諾します。

(7)Duo Cloudはユーザのブラウザをクラウドアプリケーションにリダイレクトします。

以上がSAML IdPをIDのソースとした場合の認証シーケンスとなります。


内容が盛りだくさんとなってしまいましたが、Duoの機能紹介については以上となります。

次回はDuoの導入方法(構成)についてお話する予定です。

それでは次回もお楽しみに。

他のおすすめ記事はこちら

著者紹介

SB C&S株式会社
技術統括部 第2技術部 1課
藤ノ木 俊