SCIMとは?特徴や仕組み、SAMLとの役割の違いやメリットまで詳しく解説
HC

橋爪兼続
Jul 25, 2023
SCIMとは
最近、企業のITシステムにおいて、利用者アカウントやグループ管理に関するSCIMという言葉をよく耳にしますが、SCIMとは一体何なのでしょうか。 今回は、SCIMの特徴や仕組み、SAMLとの違い、そしてそのメリットを詳しく解説します。
SCIM(System for Cross-domain Identity Management)は、様々なドメイン間でユーザID情報のやりとりを自動化する際に使用される規格です。 インターネット技術の標準化機関であるIETF(Internet Engineering Task Force)によって標準化されたこの規格により、従来のIDデータ交換手法の問題を解決し、多くの利点を得られます。
SCIMが求められた背景
SCIMが規格化された背景には、クラウドベースのITシステムの普及、Active Directoryの限界、情報セキュリティの問題等が存在します。 例えば、ある企業がSalesforceやGoogle Workspaceなど複数のサービスを活用している場合、それぞれ異なるアカウントを使わざるを得ない状況が発生し、複数の利用者認証情報を管理する必要が生じていました。 そこで、SCIMという標準規格を導入することにより、利用者認証情報を一元的に管理でき、効率的かつセキュリティの高いアクセス管理が可能となりました。
シングルサインオンを実現するには
異なるドメイン間でのID・パスワード管理はセキュリティ対策が必須です。 しかし、前身のSAMLでのセキュリティ方式は複雑な処理と拡張性に難がありました。 そのため、SAMLで使われる同タイプの通信プロトコルを使いながら、SAMLでの問題点を解消した規格がSCIMです。
シングルサインオンの問題点
シングルサインオンでは、複数のシステムを一度の認証で利用できるようになりましたが、社内ネットワークで問題を抱えていました。 それは、一人の社員が複数のID管理を必要とし、使うシステムごとに違ったIDを認証しなければならないことです。 同じユーザーで、一つのIDですべてのシステムに認証できる規格が求められました。

SCIMの仕組み
次にSCIMの仕組みを見ていきましょう。
SCIMの通信形式
SCIMは、インターネットで広く使われるHTTPを通信形式として採用しており、多くの場合、企業のファイアウォール制限下でも問題なく動作します。 また、HTTPSを使用するため、ユーザID認証情報を、安全に受け渡すことができます。
JSON+HTTPで認証情報をやり取り
SCIMは、JSON形式の利用者認証情報をHTTPを使ってIdP(Identity Provider)やSP(Service Provider)間で共有することで、IDプロビジョニングの自動化を可能にします。 また、JSONはテキストデータのため、軽量で、多くのプログラミング言語で扱いやすい言語です。 その為、互換性が向上します。
ユーザーID情報の変更も自動的に同期 を使用して
SCIMを利用することで、IdPとSP間で利用者認証情報の作成、更新、削除が自動的に同期され、効率的なID管理ができます。 これにより、退職者や異動者のアカウントの更新忘れ等のセキュリティリスクの軽減が可能です。

SCIMの特徴
SCIMの特徴にはどういったものがあるのでしょうか。 ここでは、SCIMの特徴を紹介します。
標準化されたユーザー管理の仕組み
SCIMは、IETFによって標準化されたネットワーク技術と連携が容易な規格のため、広く知られています。 以下のRFCによって、SCIMの仕様が詳細に定義されています。
RFC7642: 定義、概要、概念、要件やユースケース
RFC7643: コアスキーマ
RFC7644: プロトコル
WebAPIとして使えるためのポイント
SCIMは、利用者情報における様々な操作(追加、削除など)をAPIとしてWebサーバーに実装する事が可能です。 SCIMではWebAPIとして活用できるように以下の3つの要素が使用されます。
ネットワーク上に公開されたサーバーのベースID(例:https://scim.auth.iij.jp/scim/v2/Users/12345)
リソースタイプ(User,Group,Selfなど)
アカウントIDに適した識別子
また、WebAPIを利用する際はOAuth2.0による認証が推奨されます。 その為、利用する際は前もってアクセストークンなどを手に入れておく必要があります。
スキーマを拡張できる
SCIMは標準規格としてスキーマ(データベース構造)が搭載されています。そのため、SCIMではWebAPを通じてスキーマを拡張することが可能です。 データベースの属性を決定したり、拡張したスキーマでの変更も同期されるのがSCIMの特徴です。

SCIMとSAMLの役割の違い
SCIMとSAMLは異なる役割を持つプロトコルです。
SCIMがIDプロビジョニング*に焦点を当てているのに対して、SAMLはフェデレーション(一度認証されれば許可されたすべてのサービスやシステムが使用可能)実現することを目的としています。
これらの違いを理解し、適切なプロトコルを用いることで、効率的な運用を実現することが可能です。 *システムやサービスの需要に応じて、サーバーやネットワークなどのITインフラ設備を調達・設定することを「プロビジョニング」と呼びます。

SCIMを利用するメリットとは
SCIMを利用することで得られるメリットは一体なんでしょうか。
ここでは、SCIM利用におけるメリットを紹介します。
認可を強化できる
SCIMを利用することで、アクセス権の一元的な管理と自動化されたIDプロビジョニングが実現され、「認可」が強化されます。 これは、現代のID管理において重要なメリットであり、企業や組織がセキュリティを向上させるために役立ちます。
管理者の負担を軽減できる
SCIMを利用することで、管理者はアカウント管理に関する負担を軽減できます。 これは、アカウント登録や退職者情報削除の効率化、内部監査への対応力向上によるもので、企業において実務的なメリットをもたらします。
そのためSCIMの導入は、管理者の業務効率向上に貢献し、組織全体のセキュリティと運用効率を高めるために有益です。

SCIMを利用できるクラウドサービスとは
SCIMはID管理の負担を減らす便利な規格であり、すでにいくつかの主要クラウドサービスで利用が可能です。
ただし、SAMLなどのフェデレーション規格に比べてまだ普及率は低いものの、今後さらなる普及が期待されます。
SCIMが利用できるクラウドサービスは以下の通りです。
GoogleWorkspace
Salesforce
Azure AD/Microsoft365
Slack
SAP

SCIMが利用できるID管理システムとは
クラウドサービスとのIDプロビジョニングがID管理システムの重要な機能であり、SCIMはこの目的のために広く採用されています。
そのため多くのID管理システムがSCIMを利用してクラウドサービスとのID連携を実現し、効率的なID管理を実現しています。
これにより、企業はセキュリティの向上や運用効率の向上が期待できるでしょう。

執筆者:
橋爪兼続
ライトハウスコンサルタント代表。2013年海上保安大学校本科第Ⅲ群(情報通信課程)卒業。巡視船主任通信士を歴任し、退職後、大手私鉄の鉄道運行の基幹システムの保守に従事。一般社団法人情報処理安全確保支援士会の前身団体である情報処理安全確保支援士会の発起人。情報処理安全確保支援士(第000049号)。
他の記事

