Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
会計事務所と顧問先の契約関係をOIDC・OAuthで表現する
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
てらら
August 25, 2026
Technology
310
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
会計事務所と顧問先の契約関係をOIDC・OAuthで表現する
OAuth/OIDC Numa (Immersion) Workshop 2026 で発表した登壇資料です。
てらら
August 25, 2026
More Decks by てらら
See All by てらら
freee-mcpを Local→Remote で出してわかった MCP認可実装のリアル
terara
3
1.2k
Webの「ID連携」から、自律型AIの「権限管理」へ —— OIDF-J活動紹介とIdentity Management for Agentic AI
terara
1
200
freeeにおけるOAuth_OIDCの活用とAuthleteへの移行
terara
2
820
「単なる OAuth 2.0 を認証に使うと、車が通れるほどのどでかいセキュリティー・ホールができる」のか検証してみた
terara
0
650
ID連携基盤のマイクロサービス移行プラクティス(freee技術の日)
terara
0
12k
Other Decks in Technology
See All in Technology
Kiro入門|仕様駆動開発で変わるAI時代の開発スタイル
cmkudo
0
380
1.5時間を無駄にして学んだwsl2におけるaptとsnapの選択と仕組み
yosaka0123
0
440
MCPを待つな、パスキーを拡げよう(OAuth/OIDC Numa (Immersion) Workshop 2026)
oidfj
PRO
0
260
現場回帰したデータエンジニアが考える AI 時代のキャリア開発 / Career Development in the Age of AI Perspectives from a Hands-on Data Engineer
medley
0
340
三人寄ればチューリング完全
puhitaku
6
3.2k
2027年のMetricKit
kantacky
0
170
AI時代の「OAuth認証」にどう物申すか?(OAuth/OIDC Numa (Immersion) Workshop 2026)
oidfj
PRO
0
250
コミュニティから始まった農業IoTとの7年間 ——人との関わりが教えてくれたこと
peacemaker07
0
110
国家プロジェクトを支える「さくらONE」 大規模LLM開発におけるGPU障害を乗り越えるクラスター運用戦略
gpuunite_official
0
280
Rust×eBPFでEDRっぽいものをつくる
sunlife3
2
970
AI駆動開発を組織で促すために
lycorptech_jp
PRO
0
220
DDDのエッセンスを取り入れたAIでの開発
ak2ie
1
230
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
4 Signs Your Business is Dying
shpigford
187
23k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Mobile First: as difficult as doing things right
swwweet
225
10k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
310
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Into the Great Unknown - MozCon
thekraken
41
2.7k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2.1k
Leo the Paperboy
mayatellez
8
2.2k
Optimizing for Happiness
mojombo
378
71k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
670
Transcript
会計事務所と顧問先の契約関係を OIDC / OAuthで表現する OAuth/OIDC Numa (Immersion) Workshop 2026 2026.08.25
SIerやSESにて、主に金融業界のプロダクト開 発に従事。電子決済戦国時代、銀行のAPI化の 流れでOAuthに出会う。 2021年にフリー株式会社入社し、IDerとしての キャリアを本格的に開始。 趣味はホラー映画と猫と兎田ぺこら 寺原 歩 / てらら
IdF PdL terara 他の子のベッドを横取りしてます 2
お話ししたいこと 組織間契約から派生した委任業務操作をどのように監査していくか 権限の根拠を、操作から契約まで遡れるか 3
会計事務所について 4
会計事務所が業務を開始するまでの概観 01 02 03 顧問契約の締結 スタッフの割り当て 委任業務の実施 会計事務所と顧問先事業者が顧問契 約を交わす。 会計事務所スタッフを顧問先に割り
当てる。 会計事務所へ委任された業務として 顧問先事業者の業務を会計事務所ス タッフが実施する。 【業務遂⾏の前提】 会計事務所スタッフの業務は、「顧問契約」 / 「会計事務所の所属関係」 / 「顧問先事業者での担当関係」 に基づいて⾏われる ※ 代⾏業務として特別な資格が不要な業務も存在しますが、本スライドの定義上では取り扱いません。 5
余談: マルチテナントSaaS 特有の事情 freeeでは、事業者・会計事務所問わず全てのユーザーが同一サービス内のテナントに存在し、ユーザーはシームレスに操作対象 を切り替えることが可能。 さらに、同一ユーザーが複数の事務所に所属し、同一顧問先の業務を行う可能性もある。 所属: 会計事務所 A1 契約関係:
Relationship A1-C ユーザー 操作対象 Alice 顧問先 C 所属: 社労⼠事務所 A2 契約関係: Relationship A2-C Aliceが顧問先Cを操作する時にはどの契約‧所属関係に基づいて操作しているのかを監査する必要がある。 ⇒ ユーザー と 操作先ターゲット だけの情報では表現できない 6
契約〜業務の流れを2つに分解する 会計事務所と顧問先事業者が顧問契約を交わす。 会計事務所スタッフを顧問先に割り当てる。 => 顧問契約および担当者の割り当てプロセス 会計事務所へ委任された業務として顧問先事業者の業務を会計事務所スタッフが実施する。 => 委任された業務を実施するプロセス 7
顧問契約と委任業務のプロセス整理 8
顧問契約の状態遷移 未契約 顧問契約承認依頼 却下 / 取消 / 依頼期限切れ 仮契約 契約終了
契約承認 アクティブ 再契約依頼 契約満了 一時無効化 9
担当者割り当ての状態遷移 前提: 顧問契約がアクティブであること 未割り当て 担当者登録 アクティブ 再開 担当解除 / 契約終了
担当者が委任権限を行使 できる状態。 ・顧問契約が有効 ・会計事務所に所属 ・顧問先の担当者割当て 一時停止 一時無効化 10
委任された業務を実施するプロセス 以下は 1回の操作に対する認可シーケンスを表現したもの 1. ユーザーを認証する 2. 操作元となる会計事務所をユーザーが選択する 3. 操作先となる顧問先をユーザーが選択する 4.
該当する顧問契約を特定する 5. 顧問先の担当者割り当てを確認する 6. 実施する業務が委任された範囲内であるかを確認する 7. 委任内容に基づいて追加の認証が必要であれば実施する 8. 顧問先のリソースにアクセスする 9. 操作結果を監査記録へ残す 11
監査記録に必要な情報一覧 要素 意味 subject, actor 実際に操作したユーザー origin 今回選択している会計事務所 target 操作対象の顧問先
relationship_id 権限の根拠となる顧問契約 relationship_version どの時点の契約条件を評価したか assignment_id 担当者としての割り当て actions 許可された操作 assurance 認証強度・再認証状態 12
各要素をOAuth/OIDCの既存仕様へ分解 要素 意味 subject, actor sub / act claim origin
標準表現なし target aud claim または Resource Indicators for OAuth2.0 relationship_id 標準表現なし relationship_version 標準表現なし assignment_id 標準表現なし actions scope または RAR assurance auth_time、acr、amr 委任コンテキストをRARに渡せば行けるか… 13
RAR上で委任コンテキストを表現する { "type": "delegated_accounting_access", "origin": "accounting-office-a1", "target": "client-c", "relationship_id": "contract-a1-c",
"relationship_version": "3", "assignment_id": "assignment-u-a1-c", "actions": [ "read" ] } RARが提供する認可要求に委任コンテキストを含めておき、 AuthZENで判定を行う。 14
AuthZENの認可判定モデル { "subject": { "type": "user", "id": "user-u" }, "resource":
{ "type": "tenant", "id": "client-c" }, "action": { "name": "read" }, "context": { (右記参照) } "context": { "origin": { "type": "organization", "id": "accounting-office-a1" }, "relationship": { "type": "advisory_contract", "id": "contract-a1-c", "version": "3" }, "assignment": { "id": "assignment-u-a1-c" } } } AuthZENで契約状態に基づき判定を行う。契約状態の変化を SSFで通知する 15
SSFの契約終了イベント送信 { "iss": "https://contracts.example.com", "iat": 1787540400, "jti": "event-123", "aud": "https://authorization.example.com",
"events": { "https://example.com/events/relationship-status-changed": { "relationship_id": "contract-a-c", "relationship_version": "4", "previous_status": "active", "current_status": "terminated", "effective_at": "2026-08-24T15:00:00Z" } } } ※ relationship-status-changed は独自イベント型の例 16
OAuth・OIDC・AuthZEN・SSFの役割分担 OIDC 誰であるかを確かめる AuthZEN 今、この関係で操作してよいかを決める OAuth 決められた権限を運ぶ SSF 関係が変わったことを伝える Audit
判断・操作・変化を後から説明できるようにする 17
顧問契約と委任業務の処理シーケンス 18
顧問契約のシーケンス (※主要な呼び出し経路のみを抜粋) 会計事務所 / 顧問先権限者 依頼状態を司る サー ビス 契約レジストリ SSF
Transmitter PDP / STS 顧問契約承認依頼 仮契約状態を保存 承認 アクティブ状態を保存 契約アクティブイベント送 信 発行可能状態 契約終了 無効状態を保存 契約無効イベント送信 発行停止・再評価・失効 19
委任業務のシーケンス (※主要な呼び出し経路のみを抜粋) User Client / PEP 業務開始 Origin / Target
/ Action PDP / AuthZEN AS Registry STS Resource Server 認可 Request + RAR AuthZEN evaluation Relationship + Assignment 契約状態 (subject token発行割愛) decision 必要に応じてToken Exchange。委任コンテキストに限定したtoken発行 AuthZEN evaluation Access Token Resource Access (割愛)SSF: 契約終了イベント起点で→ 発行停止 / 再評価 / 失効 20
組織間契約から派生した委任業務を表現するために OIDC、AuthZEN、OAuth、RAR、SSFを、組織間委任として組み合わせる共通プロファイル。 認可コンテキスト origin target relationship_id relationship_type relationship_version assignment_id ※
他のユースケースへの展開 : 業務代行BPO、運用代行、法人業務を実施する AIエージェント 21
組織間契約から派生した委任業務操作を監査する 契約・担当者割り当て ↓ AuthZENが関係を評価 ↓ OAuthが権限を運ぶ ↓ SSFが関係の変化を伝える ↓ 監査記録から権限の根拠へ遡る
操作の記録から、その関係の状態まで遡れるようにしなければならない。 22
スモールビジネスを、世界の主役に。