Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
管理者向けGitHub Enterpriseの運用Tips紹介: 人にもAIにも優しいプラット...
Search
yuriemori
March 02, 2026
Technology
550
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
管理者向けGitHub Enterpriseの運用Tips紹介: 人にもAIにも優しいプラットフォームづくり
.NETラボ 勉強会 2026年2月でお話しした内容です
yuriemori
March 02, 2026
More Decks by yuriemori
See All by yuriemori
GitHub CopilotのFinOps- AI CreditのObservabilityと価値を生むためのエージェント設計
yuriemori
0
500
DevOps, SRE & Platform Engineering- A Journey Toward the Ideal Development Environment
yuriemori
0
160
GitHub Copilot のこれまでとこれから: From Copilot to Collaborative Agents
yuriemori
1
640
プロンプトエンジニアリングを超えて:自由と統制のあいだでつくる Platform × Context Engineering
yuriemori
0
600
GitHub Advanced Security × Defender for Cloudで開発とSecOpsのサイロを超える: コードとクラウドをつなぐ、開発プラットフォームのセキュリティ
yuriemori
1
330
Agentic AI 時代の DevOps セキュリティ 2.0- GitHub Advanced Security × Defender for Cloud による Platform Protection
yuriemori
1
290
プロンプトエンジニアリングを超えて:自由と統制のあいだでつくる Platform × Context Engineering
yuriemori
1
1.2k
生成AI時代のセキュアコーディングとDevSecOps
yuriemori
0
530
JuniorからSeniorまで: DevOpsエンジニアの成長ロードマップ
yuriemori
2
970
Other Decks in Technology
See All in Technology
企画からFlutter実装まで、1つの機能を一貫して開発したプロセスと成果物
khiroyuki1003
1
150
Copilot Coworkで「みのるん式」やってみた
minorun365
PRO
2
1.5k
推論基盤と Scale-Up Interconnect の現状と制約から俯瞰する技術動向
markunet
2
810
新卒エンジニア、 介護士になる
ryu1013
1
690
基本から分かる!AWSセキュリティ運用の考え方と任せ方
cmusudakeisuke
1
410
あなたのDartコードは丸見えかもしれない ~reFlutterで暴くFlutterアプリの中身と多層防御~
zozotech
PRO
0
770
詳解 never 型 - ボトム型の性質を深掘り
nealle
0
150
AWSを利用する上で知っておきたい名前解決の話 2026
nagisa53
4
2.4k
Kiro Crew 入門 (手を離しても進む仕事) | 目指せ Kiro マスター 11
inariku
PRO
1
310
公共分野での生成AI活用
toru_kubota
1
190
cdkd (CDK Direct)
gotok365
3
230
AIエージェント統制はAPIから——押さえるべき5つの要素
nagix
0
120
Featured
See All Featured
How to Ace a Technical Interview
jacobian
280
24k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
480
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8.2k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
3k
Marketing to machines
jonoalderson
1
6k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.2k
We Have a Design System, Now What?
morganepeng
55
8.4k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
740
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
610
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
The Language of Interfaces
destraynor
162
27k
Unsuck your backbone
ammeep
672
58k
Transcript
管理者向けGitHub Enterpriseの運用Tips紹介: 人に もAIにも優しいプラットフォームづくり yuriemori .NET lab 1 / 20
お品書き GitHub Well Architected Frameworkに学ぶガバナンスのプラクティス GitHub EnterpriseのあるあるQ&A GitHub EnterpriseでのAgent/AIの管理 .NET
lab 2 / 20
Yurie Mori(森 友梨映) Job: Software Solution Engineer@Microsoft Japan Skills/Interests: GitHub/Azure DevOps/Defender
for Cloud/Azure PaaS DevOps/DevSecOps/IaC/Platform Engineering .NET lab 3 / 20
Please follow me X(旧Twitter)とLinkedInで発信しています。ぜひフォローしてください! .NET lab 4 / 20
GitHub Well Architectedに学ぶガバナンスのプラク ティス .NET lab 5 / 20
アンチパターン(抜粋) 不必要なOrganizationの分割 → 管理の煩雑化、ガバナンスの不整合、ナレッジのサイロ化に繋がる ブランチ戦略を定義しない 承認なしで変更がマージされる .NET lab 6 /
20
ベストプラクティス(抜粋) ガバナンスの違いごとにOrganizationを分ける rulesetを活用してブランチ,リポジトリに対してルールを適用する ガバナンスに関する方針やポリシーはバージョン管理できる形でドキュメント化 する レイヤごとに適切な権限を設定する .NET lab 7 /
20
GitHub EnterpriseのあるあるQ&A .NET lab 8 / 20
Organizationは単一?複数?どちらにすべき?(1/2) Organizationを分けた方がいいかどうかは組織内でリポジトリ/ユーザーに対して 適用したいガバナンスを特定のグループで分ける必要があるかどうかに依存す る。 Organizationでのレイヤーでは配下のリポジトリ、ユーザーに対する権限を制御 することができるので、ユーザーのグループやリポジトリ群に対して同じガバナ ンスを適用するのであれば、Organizationを分けてるメリットはあまりない。 (ま ったく同じ設定のOrganizationが複数存在することになるため) .NET
lab 9 / 20
Organizationは単一?複数?どちらにすべき?(2/2) Organizationを分けるメリットは、例えば部署ごとにOrganizationを分けること で、部署ごとに異なるガバナンスを適用できることや、部署ごとに管理者を設定 できることなどがある。 なので、適用させたいガバナンスの違いごとにOrganizationを分けるのが望まし い。 部署ごとなど、単純にユーザーを論理的にグルーピングするのであれば、 Organizationを分けるのではなくTeamを活用するのが望ましい。 昔はOrganizationは複数作らないほうがいいというプラクティスも紹介されてい たけども、現在ではその記述はなくなっている。
参考:組織のベストプラクティス .NET lab 10 / 20
Organizationで特定のユーザーグループごとに権限 を制御したい Teamを活用することで特定のユーザーを論理的にグルーピングして、特定のリポ ジトリに対する権限を定義したり、Team単位でCopilotのライセンス付与や権限 の制御ができる。 入れ子にすることもできる(が、階層が深くなると管理が大変になるので注意) 。 Team A userA-1
userA-2 user... Repository A-1 write Repository A-2 write Repository A-3 write Team B userB-1 userB-2 user... Repository B-1 write Repository B-2 write Repository B-3 write .NET lab 11 / 20
GitHub Enterprise - IdP連携を解除するとどうなる? Setpユーザー以外はユーザーは休眠ユーザーとして残る(PeopleのSuspendedで確認できる) 。 休眠中のユーザーはGitHub Enterpriseにログインできない。 IdP連携を再度有効化すれば、休眠ユーザーは復活する。 .NET
lab 12 / 20
EMUの環境を使っている。連携しているIdPの変更は できる? 最初はEntra IDで連携していたけど、途中でOktaなどの他のIdPに変更することはできるのか? Yes。 → 参考:新しい ID プロバイダーまたはテナントへの Enterprise
の移行 移行の際に既存のIdPの連携を切るときは、IdPの連携を停止するとSetupユーザー以外のすべてのユーザーが休眠ユーザーとな りアクセスできなくなるので、連携IdPを切る前にSetupユーザーが作業ができるように(=IdPに依存する認証なしでGitHub Enterpriseにアクセスできるように)しておく。 再びIdPと連携する際、usernameは移行元・移行先で一致するようにする必要がある。 最も安全なのはusernameに全く同じ値を設定していることだけど、正規化されてもこの値が移行先/移行元で完全に変わる場合 (
[email protected]
→
[email protected]
,
[email protected]
→
[email protected]
のように)は新しい Enterpriseアカウントのプロビジョニングが必要となる。 .NET lab 13 / 20
複数のEnterpriseを運用する際の注意点 .NET lab 14 / 20
Enterpriseはいくつまで作れる? 4つまで。同じGitHubアカウントでEnterprise ownerになっている環境が4つある 状態でEnterpriseを作成しようとすると、上限に達しているというメッセージが出 てくる この「4つ」はNon-EMUの環境もEMUの環境も両方含めた数。 .NET lab 15 /
20
EMUとNon-EMU, データレジデンシー版の併存はで きる? 現在提供されているのは、個人GitHubアカウントで利用を開始するGitHub Enteprise Cloudと、Entra IDなどのIdPでユーザーアカウントをプロビジョニング するEnterprise Managed Users(EMU)版、さらにEMUの場合、日本国内にデ
ータをホスティングするデータレジデンシー版の3つのオプションがある。 これらの環境の併存はできる。だが、IdPの連携において、同一Entraのテナント 内で、OIDC認証によるSSOの設定は1つのGitHub Enteprise環境でのみ可能。 .NET lab 16 / 20
GitHub Enterprise CloudとIdP連携 GitHub Enterprise Cloud - Microsoft Entra IDの連携:
Non-EMU(個人アカウント許容): SAML認証のみ対応 EMU(企業用アカウントで運用) :OIDC, SAML認証に対応 Enable OIDCのボタンを押してEntraに認証することでEntra IDにOIDC連携用のエ ンタープライズアプリケーションが登録される。 .NET lab 17 / 20
OIDC連携ができるのは1つのEnterprise環境のみ OIDC連携設定時に登録されるエンタープライズアプリケーションは、同一Entra テナント内の1つのみ。 そのため、すでにOIDC連携が完了しているGitHub Enterpriseがある状態で、2つ 目のEMUの環境を作ってOIDCの連携をしようとすると、すでにエンタープライズ アプリケーションがあるのでエラーになってしまう。 .NET lab 18
/ 20
SAML認証は複数の設定が可能 SAML認証の場合は、SAML連携用のエンタープライズアプリケーションを複数同 一テナント内に作ることができるため、併存させることは可能。 OIDC連携をしているGitHub Enterprise + SAML連携をしているGitHub Enterprise→ SAML連携をしているGitHub Enterprise
+ SAML連携をしているGitHub Enterprise→ OIDC連携をしているGitHub Enterprise + OIDC連携をしているGitHub Enterprise→ .NET lab 19 / 20
SAML認証で併存させる場合の注意点 SAML連携用のエンタープライズアプリケーションはそれぞれ別なので、どの GitHub Enterpriseはどのエンタープライズアプリケーションと連携しているのか を管理する必要がある。 .NET lab 20 / 20