実践知識・認証と権限

社内システムの認可、 Google・Microsoftで どう組むか。

Google WorkspaceとEntra IDの組織で、 IdP(ID基盤)に任せる所とアプリ側で作る所を分ける。

本人確認と鍵の印が付いた2つの関所を見比べるエスパーくん

2026年10月1日時点 ・ 各社の公式ドキュメントとNIST・OWASPで確認

1 / 17
はじめに

ログインできても、何をしてよいかは別に決める。

認証:誰かを確かめる

パスワードやパスキー、MFAで本人だと確かめる

認可:何をしてよいかを決める

役割や部署から、操作ごとに許可か拒否かを決める

OWASP Top 10は2021年版に続き2025年版でも、アクセス制御(認可)の不備が1位。

OWASP Top 10:2025 A01。OWASPの試験データでは、すべてのアプリに何らかの不備

2 / 17
全体像

認可は、入口・判定・運用の3層で組む。

入口誰が、どの条件で入れるか 判定(アプリの中)どのデータに、どの操作をしてよいか 運用権限を付け、見直し、外す
  1. 入口:誰が、どの条件で入れるか
  2. 判定(アプリの中):どのデータに、どの操作をしてよいか
  3. 運用:権限を付け、見直し、外す

IdP(GoogleやMicrosoftのID基盤)の機能は入口と運用に多い。判定と足りない運用はアプリ側で用意する。

3層の分け方はこの資料の整理(NIST・OWASPを元にした)

3 / 17
判定の考え方

役割で粗く分け、属性と関係で絞る。

RBAC:役割で

経理担当なら、経費を承認できる

ABAC:属性で

経理担当でも、担当部署・30万円以下・会社の端末に限る

ReBAC:関係で

申請者の上長だけが、その人の経費を承認できる

条件を役割だけで表すと、役割が数千に増えることもある(ロール爆発)。

NIST SP 800-162・Kuhnら(2010)・Google Zanzibar(2019)

4 / 17
判定の考え方

判定は1か所に集め、どの適用点からも同じ判定を呼ぶ。

適用点:判定を呼び、その結果で通すか止めるかを決める所

適用点(PEP)画面・APIの処理、CSV・AI用の取得 判定(PDP)判定のルールを共通にして管理 判定の材料(PIP)IdPの所属・人事の属性・データ
  1. 適用点(PEP):画面・APIの処理、CSV・AI用の取得
  2. 判定(PDP):判定のルールを共通にして管理
  3. 判定の材料(PIP):IdPの所属・人事の属性・データ

判定を1か所に集めると、ルールをまとめてテストできる。

複数のアプリなら共通の判定サービス(OPA・Cerbos・OpenFGAなど)に。APIの標準はAuthZEN 1.0

5 / 17
判定の考え方

既定で拒否し、操作とデータ取得のたびに確かめる。

既定で拒否する

許可を書いたものだけ通し、書き漏れは拒否にする

APIでも同じ判定をする

ボタンを隠すだけでなく、APIの直接の呼び出しも止める

対象ごとに確かめる

URLのIDを変えられても、他人のデータは開けなくする

一覧と出力も絞り込む

件数の表示・CSV・AIの回答も、取得の段階で絞る

拒否はログに残し、他部署・自己承認・期限切れの権限が拒否されるかを試す。

OWASPの認可の指針とTop 10:2025 A01の対策から

6 / 17

両社の機能

Google・Microsoftに、どこまで任せられるか?

入口、所属と役割、入社から退職、 管理者の権限、棚卸し、AIエージェントの順に 両社の機能を並べる。Googleの例は Google Cloud上のアプリを想定する。

共通の入口にスマホの認証を重ねて点検するエスパーくん
7 / 17
入口

割り当てた人だけを、条件を確かめて通す。

Google:IAP+アクセスレベル

  • Cloud RunでIAPを有効にし、グループに許可する
  • アクセスレベルでIP・地域・端末を条件にする
  • IAPの署名付きヘッダーをアプリで検証する

Microsoft:条件付きアクセス

  • 「割り当てが必要」を「はい」にする
  • 条件付きアクセスで端末・場所・認証強度を求める
  • 重要な操作は認証コンテキストで確かめ直す

入口が決めるのは、入れるかと追加の認証まで。何をしてよいかはアプリが判定する。

条件付きアクセスにEntra ID P1、端末の条件にChrome Enterprise Premiumなどが必要

8 / 17
判定:所属と役割

Googleはアプリが所属を問い合わせ、Microsoftは役割をトークンで渡す。

Google:アプリが問い合わせる

IDトークンにもIAPのヘッダーにもグループは入らない。Groups APIで確かめる

Microsoft:役割がトークンに入る

グループをそのまま入れる(groups)より、アプリロール(roles)で受け取る

groupsクレームは200件(SAMLは150件)を超えると省かれるので、役割はアプリロールで渡す。

hdクレームで組織を判定。入れ子の所属の確認にはEnterpriseかCloud Identity Premiumが要る

9 / 17
判定:役割の設計

IdPのグループで粗く分け、細かい範囲はアプリで判定する。

グループ(IdP)経理部のメンバー 役割(アプリ側の定義)経費の承認者。Microsoftはアプリロール 範囲と条件(アプリ)東京営業部・30万円以下・自己承認不可
  1. グループ(IdP):経理部のメンバー
  2. 役割(アプリ側の定義):経費の承認者。Microsoftはアプリロール
  3. 範囲と条件(アプリ):東京営業部・30万円以下・自己承認不可

利用者の部署はIdPから受け取り、申請の部署・金額・関係はアプリのデータで判定する。

例は架空。Microsoftもアプリロールは変わりにくい区分に限るよう案内している

10 / 17
運用:入社から退職

人事の属性から、グループとアカウントを自動で作り、外す。

動的グループ:属性の条件でメンバーが自動で決まるグループ(Entra ID P1など)

  1. 人事が登録する

    部署・役職をIdPの属性に入れる

  2. グループが決まる

    属性の条件で、動的グループに入る

  3. アカウントが作られる

    SCIMなどの自動プロビジョニングでSaaSにも

  4. 異動・退職で外れる

    異動はグループから外れ、退職は停止

IdPでアカウントを止めても、アプリが発行したセッションは残る。失効させる経路を作る。

Googleの停止は自社アプリへ通知されない。Directory APIの変更通知か定期的な照会で検知

11 / 17
運用:管理者の権限

管理者の権限は、必要なときだけ期限付きで与える。

4つの手順はPIM(Entra ID P2かID Governance)とGoogle CloudのPAM

  1. 理由を書いて申請する

    作業と必要な時間を書く

  2. 承認者が承認する

    上長やセキュリティ担当が確かめる

  3. MFAで有効化する

    承認とは別に、本人の追加認証を求める

  4. 期限で自動的に外れる

    PAMの期限は30分〜7日で決める

期限なしで持たせてよいのは、普段のSSOを通らない緊急用アカウントだけ。2つ以上用意し、使われたら通知する。

Workspaceの管理者ロールは、管理者が期限を決めて付与する(2026年9月から)

12 / 17
運用:棚卸し

例外の権限には期限を付け、定期的に棚卸しする。

例外の権限:人事の属性では決まらない権限(案件への参加・代理の担当など)

Google:期限と提案で補う

  • グループ所属に有効期限を付ける
  • IAM Recommenderが不要なIAM権限を示す
  • アクセスレビューにあたる機能は見当たらない

Microsoft:申請とレビュー

  • アクセスパッケージで申請・承認・期限をまとめる
  • アクセスレビューで定期的に棚卸しする

Googleで棚卸しをするなら、一覧・確認・取り消しの手順を自社で用意する。

棚卸し:権限を持つ人を定期的に確かめ直し、要らない権限を外すこと

13 / 17
AIエージェント

AIエージェントの権限は、依頼した人の権限の中で必要な分に限る。

人の権限と重ねる

エージェントの操作は、依頼した人の権限と重ねて判定する

判定はAPI側で

許可をAIに決めさせず、呼ばれるAPIの認可で拒否する

取り消せない操作は人が承認

外部への送信や削除は、実行の前に人が確かめる

両社とも、エージェント用のIDと入口の条件を提供し始めた。

例:Entra Agent ID・Google Agent Identity。IAP for Agentsはプレビュー

14 / 17
対応表

入口から棚卸しまで、両社の機能を並べる。

Google

  • 入口:IAP+アクセスレベル
  • 所属と役割:Groups APIで問い合わせ
  • 入社から退職:動的グループ・自動プロビジョニング
  • 管理者の権限:PAM・期限付きの管理者ロール
  • 棚卸し:所属の期限・提案(手順は自作)
  • AIエージェント:Agent Identity・IAP for Agents

Microsoft

  • 入口:割り当て+条件付きアクセス
  • 所属と役割:アプリロール(rolesクレーム)
  • 入社から退職:動的グループ・SCIMの自動プロビジョニング
  • 管理者の権限:PIM
  • 棚卸し:アクセスパッケージ・アクセスレビュー
  • AIエージェント:Entra Agent ID・条件付きアクセス

Googleでは、所属の問い合わせはアプリで、棚卸しの手順は自社で用意する。

必要なライセンスは機能ごとに違い、変わることがある(2026年10月1日時点)

15 / 17
始め方

最初は、入口・権限表・判定・期限と棚卸しの順に固める。

  1. 入口をIdPに寄せる

    割り当てた人だけ通し、退職時はセッションも切る

  2. 権限表を作る

    グループ・役割・範囲・条件を表に

  3. 判定を1か所に集める

    全適用点で呼び、拒否を試す

  4. 期限と棚卸しを入れる

    管理者は期限付き、棚卸しは定期に

Googleなら、2で所属の問い合わせを、4で棚卸しの手順を自社で用意する。

順序はこの資料の提案。Google Cloudでの実装例は記事「社内アプリの認可設計」

16 / 17

おわりに

入口はIdPに任せ、判定と足りない運用はアプリ側で用意する。

役割で粗く分け、属性と関係で絞る。管理者と例外の権限は、期限と棚卸しで減らす。

両社の公式ドキュメント

考え方

お辞儀をするエスパーくん

ライセンスと提供状況は2026年10月1日時点。導入前に各社の公式ページで確認

17 / 17