こんにちは!開発チームのベロシティを爆発的に高め、エンジニアが「書くこと・つくること」に狂おしいほど集中できる環境を作るのが僕の仕事です。
さて、今日お話しするのは、モダンな開発チームの圧倒的な支持を集める課題管理ツール「Linear」のエンタープライズ運用、その中でも「SSO(SAML)とSCIM(自動プロビジョニング)の極意」についてです。
「スタートアップなら手動でメンバーを追加すればいいけれど、組織が大きくなってきた途端にセキュリティ監査が入った……」
「退職したメンバーのアカウントが、社内チャットやリポジトリからは消えたのに、Linearには残っていて冷や汗をかいた……」
そんな経験はありませんか?これを放置すると、情報漏洩という致命的なリスク(技術負債ならぬセキュリティ負債)を抱えることになります。
今回は、OktaやGoogle WorkspaceなどのIDP(アイデンティティプロバイダ)とLinearを完璧に連携させ、「セキュアかつ自動化された認証・権限管理基盤」を構築する手順を、現場のリアルなノウハウを交えて優しく、徹底的に解説します。これをマスターすれば、セキュリティ担保と管理コスト削減の両立に感動すること間違いなしです。一緒に紐解いていきましょう!
—
1. なぜ「SSOとSCIM」がエンタープライズ開発の命綱なのか?
そもそも、なぜLinearの標準機能(メールアドレスとパスワード、あるいは個別招待)だけでは不十分なのでしょうか。
- シャドーITやパスワード使い回しの温床になる
- 「入退社」のタイミングで権限の剥奪漏れが必ず起きる
- アクセスログの追跡が困難になり、SOC2やISMSなどの監査を通過できない
ここで登場するのが、SSO(Single Sign-On / SAML認証)とSCIM(System for Cross-domain Identity Management)のコンビネーションです。
- SSOの役割: 「会社のIDP(OktaやGoogle Workspaceなど)でログインしているんだから、Linearへのアクセスも許可する」という「認証の門番」。
- SCIMの役割: 「IDP側でメンバーが追加・削除されたり部署異動したりしたら、Linear側のユーザーやグループも自動で同期する」という「人事・権限の自動同期システム」。
この2つが揃ってはじめて、開発組織は「安全かつ手間いらず」を手に入れることができます。
—
2. 基礎セットアップ:LinearにおけるSSO(SAML)の有効化
まずは、Linearの「玄関」をIDPで固めるSSO設定から始めましょう。
(※前提として、LinearのEnterpriseプラン以上が必要になります)
ステップ1: Linear側でのSAMLメタデータの取得
1. Linearのワークスペース設定(Settings > Workspace > Security & access)を開きます。
2. SAML SSO のセクションに進み、「Enable SAML」をクリックします。
3. 以下の情報(Linear側が要求する値)を控えておきます。
- ACS URL (Assertion Consumer Service URL)
- Entity ID (Audience URI)
ステップ2: IDP側(例: OktaやGoogle Workspace)でのアプリ登録
IDP側のコンソールで「Linear」のSAMLアプリを新規作成します(多くのIDPにはLinear用の事前統合アプリが用意されています)。
- Single Sign On URL (ACS URL) に、Linearから控えたACS URLを貼り付けます。
- Audience URI (Entity ID) に、LinearのEntity IDを貼り付けます。
- Name ID Format は `EmailAddress` を選択するのが一般的です。
ステップ3: メタデータのインポートとテスト
IDP側で設定を完了すると、「SAML Metadata XML」や「Metadata URL」が発行されます。それをLinear側の設定画面にインポートします。
> 💡 現場の知見(最重要):
> いきなり「強制SSO(Enforce SSO)」をオンにしてはいけません!設定ミスがあると、管理者も含めて全員がLinearから締め出されるという大惨事(自爆テロ)が起きます。
> 必ず「Optional(任意)」の状態で一部のメンバー(テストグループ)でログインテストを行い、無事にIDP経由でLinearに入れることを確認してから強制化しましょう。
—
3. 精度を極める:SCIMによる自動プロビジョニングの設定
SSOで「入れる人間」を絞ったら、次はSCIMを使って「誰をいつどの権限で住まわせるか」を自動化します。これによって、入社日に自動でLinearのアカウントができ、退社日には即座にアクセスが遮断される世界が完成します。
ステップ1: LinearでSCIMトークンを発行する
1. Linearの「Settings > Workspace > Security & access」を開きます。
2. SCIM provisioning のセクションで「Enable SCIM」をクリックします。
3. 発行される SCIM Bearer Token と SCIM Endpoint URL をコピーします。
(※このトークンは二度と表示されないため、一時メモ帳などに安全に保管してください)
ステップ2: IDP側でのSCIM連携設定
IDP(Oktaなどを想定)のLinearアプリ設定に戻り、「Provisioning(プロビジョニング)」タブを開きます。
1. 先ほどコピーした SCIM Endpoint URL と Bearer Token を入力して接続テスト(Test Connection)を行います。
2. 同期するアクション(Create Users, Update User Attributes, Deactivate Users)にチェックを入れます。
これで、IDP側でユーザーやグループの変更を行うと、数秒〜数分でLinear側に自動反映されるようになります。
—
4. 監査ログ(Audit Log)の活用:セキュリティの可視化とインシデント検知
エンタープライズ運用において、「何が起きたか」を後から追跡できることは絶対条件です。Linearのエンタープライズプランでは、詳細な監査ログを取得できます。
監査ログで監視すべき重要ポイント
1. マスタ権限の変更: 誰がWorkspace Adminに昇格したか?(不正昇格の検知)
2. ゲスト招待の有無: 外部ベンダーや社外の人間がどのプロジェクトに招待されたか?
3. データエクスポートの実行: 機密情報の持ち出し兆候がないか?
これらのログは、LinearのAPI(GraphQL API)経由で定期的に取得し、DatadogやAWS CloudWatchなどのSIEMツールに転送・集約するのがプロの技です。
—
5. HelloWorld的 動作確認:すべてが正しく連動しているかのテスト
設定が終わったら、本当に意図通りに動いているかを自分の手で(あるいはテスト用アカウントで)確認しましょう。これが一番ワクワクする瞬間です。
動作確認のチェックリスト
1. SCIMプロビジョニングのテスト(作成)
- IDP側で、テスト用ユーザー(例: `test-engineer@yourcompany.com`)をLinearアプリに割り当てます。
- 数分後、Linearの「Settings > Workspace > Members」に、そのユーザーが自動作成されていることを確認します。
2. SAML SSO認証のテスト
- シークレットウィンドウを開き、Linearのログイン画面で社内メールアドレスを入力します。
- パスワード入力画面に飛ばず、IDP(OktaやGoogle)のログイン画面にリダイレクトされることを確認します。
- 認証を通過し、無事にLinearのワークスペースにたどり着ければ成功です!
3. SCIMプロビジョニングのテスト(無効化・削除)
- IDP側で、先ほどのテスト用ユーザーの割り当てを解除(Deactivate)します。
- 数分後、Linear側でそのユーザーのステータスが「Deactivated(無効)」になり、二度とLinearにログインできなくなっていることを確認します。
—
おわりに:セキュリティと開発スピードは両立できる
お疲れ様でした!これで、あなたのLinear環境は「エンタープライズ基準の堅牢なセキュリティ」と「管理コストゼロの自動化」を手に入れました。
「セキュリティを厳しくすると、開発のフットワークが重くなる」という言い訳は、もう通用しません。IDPによる一元管理とSCIMによる自動化を整えることで、「セキュアだからこそ、誰もが安心して高速に開発に集中できる」という理想郷に一歩近づくことができます。
これをマスターすれば、毎日のメンバーの入退社対応やセキュリティチェックシートの記入で胃が痛くなることはもうありませんよ。さあ、今すぐあなたのチームの基盤をアップデートしに行きましょう!