Modül 6 · Modül 6 — Domain 6: GitHub Actions Automation & Policies · ⏱ 10-15 dakika

Actions Policy ve Allowlist

Actions Policy & Allowlist

Bu derste neler öğreneceksin

  • Enterprise ve organization düzeyinde Actions politikalarını yapılandırmayı anlamak
  • Action allowlist ile hangi actions'ların kullanılabileceğini kısıtlamayı bilmek
  • Actions güvenlik riski olan yapılandırmaları tespit etmek

GitHub Actions, CI/CD otomasyon platformudur. GH-100 Domain 6, Actions’ın kurumsal ortamda güvenli yönetimini ölçer — özellikle hangi actions’ların kullanılabileceğini kısıtlama konusunu.

Actions’ı Etkinleştirme / Devre Dışı Bırakma

Enterprise düzeyinde:

Enterprise → Policies → Actions
→ "Enable for all organizations"
→ "Disable for all organizations"
→ "Enable for specific organizations"

Org düzeyinde:

Organization → Settings → Actions → General
→ "Allow all actions" / "Allow specific actions" / "Disable Actions"

Action Allowlist

Belirli actions’ların kullanımına izin vermek için allowlist yapılandırılır:

Organization → Settings → Actions → General
→ "Allow select actions and reusable workflows"
→ Seçenekler:
  - Allow actions created by GitHub
  - Allow actions by Marketplace verified creators
  - Allow specific actions (pattern ile: owner/repo@*)

Örnek kısıtlayıcı allowlist:

actions/*,       # GitHub resmi actions
github/*,        # GitHub ekibi actions
company/internal-*  # Şirket içi actions

Default Workflow Permissions

Workflow’ların varsayılan GITHUB_TOKEN yetkileri:

Organization → Settings → Actions → General → Workflow permissions
→ "Read and write" (geniş — önerilmez)
→ "Read-only" (dar — önerilen)

Best practice: Varsayılanı read-only yap, her workflow için permissions: bloğuyla gerekli izinleri açıkça belirt.

Fork’tan PR’da Actions

Dış fork’tan gelen PR’larda Actions’ın otomatik çalışması güvenlik riski taşır:

Organization → Settings → Actions → General
→ "Fork pull request workflows from outside collaborators"
→ "Require approval for first-time contributors" (önerilen)
→ "Require approval for all outside collaborators" (en güvenli)

Actions Cache Yönetimi

Actions cache, GITHUB_TOKEN kapsamında çalışır ve repo bazlı izole edilir. Cache poisoning saldırısına karşı:

  • Pull request’lerde cache’i read-only yap
  • Push workflow’larıyla cache’i güncelle