きよくらの備忘録

「三日坊主と呼ばせない!日記」改め。主にソフトウェア開発関連の話題。

SharePoint Online を社内LANからのみ利用可能にする

Office 365 の SharePoint Online (及び OneDrive for Business )を、社内LANからのみ利用可能とするために必要な構成や設定のメモです。

実現したいこと

  • Office 365 の SharePoint Online を契約して社内のメンバーに利用させたい
  • 社内LAN からのみ、アクセスできるようにしたい

f:id:kiyokura:20150104015335p:plain

別の言い方をすれば、インターネット環境からの SharePoint Online へのアクセスを禁止したいというお話しです*1*2

 

SharePoint Online(Office 365) 単体ではこのような制御を行うことはできない模様。それを可能にするため、Active Directory(以下AD) や Active Directory フェデレーションサービス(以下、ADFS)を利用した構成を行う。

 

今回やってみた構成の概要

  • オンプレのADをO365のAzure ADと同期してAD内のユーザー情報でO365を利用できるようにする
  • オンプレのADドメイン内でADFSを構成、 O365と連携させる
  • ADFSに外部から接続できないようにする*3

 

必要なもの(Office 365の契約の他に)

  • 社内にオンプレのADがある
    • または これから立てることが可能
    • ローカルドメイン名でも可
  • 社内にADDSの他に最低もう一台、ADのメンバサーバのインスタンスを立てることが可能
    • ADFSやDirSyncを仕込むために利用(詳細は後述)
  • DNSを自分で設定可能なインターネットドメイン
    • 任意のTXTレコードが追加可能なこと
  • SSL証明書
    • ADFSで使用
    • 今回の内容の範囲であればオレオレ認証局でも可能

 

構成手順

基本的には以下の自習書の手順にしたがって構成。

Microsoft Office 365 自習書 AD FS によるシングル サインオン環境構築ステップ バイ ステップ ガイド

その上で、外部からADFSにアクセスさせない(アクセスできるように構成しない)ことで、要件を実現する。

 

最小構成(?)として以下で検証。

  • オンプレミスでのサーバのインスタンスは下記の2つとする
    • ADのドメインコントローラのサーバ
      • ADDSやDNSサービスが稼働
      • AD認証局(ADCA)も稼働
    • ADFSとディレクトリ同期を実行するーバ
      • ADFSとDirSyncを稼働
        • DirSyncはADDSと同居しないほうが良いそうなのでADFSと同居
  • ADFSで利用するSSL証明書はADのエンタープライズCAで作成
    • SharePoint Online を利用するだけであれば、独自の認証局でも問題ない
      • O365で利用したい機能によってはMicrosoftが信頼する公的機関で発行された証明書を利用する必要がある
  • ADFSは外部からアクセスさせない
    • そのためADFS Proxyも構成しない
      • ADFSの機能により外部からのアクセスを制御するのではない
        • MS推奨の構成ではないようだが今回の要件を満たすだけであれば問題なさそう*4

 

構成の概要図

f:id:kiyokura:20150104022537p:plain

f:id:kiyokura:20150104022538p:plain

 

まとめ

以上で、当初検討した要件である、

  • SharPoint Online と OneDrive for Business を 社内LANからのみ利用可能にする

を満たす構成が実現できることを確認しました。

 

参考

以下のサイト・コンテンツを参考にさせていただきました

またSNSにて、ソフィアネットワークの国井さん、金麦の人ことムッシュにアドバイスをいただきました。ありがとうございました。

*1:クラウドサービスなのに…という向きはありますが、コンプライアンスとかなんちゃらマークとか色々あったりするのが世の中だったりするわけで

*2:社内からしか使わないとしても、オンプレでなくSaaSを使うのはメリットが勝つ場合は多々あるわけで

*3:ADFSの機能を発揮させるのであればADFSの機能でアクセス制御することが可能だが、今回は最低限の要件を最低限の労力で実現するためにスボラを行う感じ

*4:http://support.microsoft.com/kb/2510193