Sat Jun 27 2026 20:00:00 GMT-0400 (Eastern Daylight Time)

Amalan Terbaik Keselamatan Claude Code untuk Pasukan pada Tahun 2026

Panduan keselamatan praktikal untuk pasukan yang menjalankan Claude Code: mod kebenaran, allowlists, pengesahan MCP, pengendalian rahsia, dan larian CI dengan hak istimewa minimum.

Amalan Terbaik Keselamatan Claude Code untuk Pasukan pada Tahun 2026

Dikemas kini: June 28, 2026

Agen pengkodan AI yang boleh membaca repo anda, menjalankan arahan shell, dan memanggil perkhidmatan luaran adalah berguna kerana ia mempunyai jangkauan. Jangkauan itu juga merupakan risiko. Prompt yang salah dibaca, senarai benarkan (allowlist) yang longgar, atau satu pelayan MCP yang tidak dipercayai boleh membocorkan token atau menghapuskan cawangan (branch). Panduan ini untuk pembangun atau ketua platform yang mahu Claude Code dalam kerja harian dan dalam CI tanpa menyerahkan kunci kepada produksi.

Jawapan ringkas: bagaimana pasukan mengekalkan keamanan Claude Code?

Jalankan agen dengan hak istimewa paling minimum dan semak apa yang dilakukannya. Dalam praktiknya, ini bermaksud lima perkara:

  • Mulakan dalam mod kebenaran yang ketat dan berikan alat melalui senarai benarkan (allowlist) yang sempit, bukan "sentiasa benarkan" secara menyeluruh.
  • Kekalkan rahsia di luar konteks model: tiada kunci yang ditampal (pasted), dan peraturan deny pada .env dan laluan rahsia.
  • Siasat setiap pelayan MCP sebelum menyambungkannya, kerana pelayan yang tidak dipercayai boleh membaca data dan bertindak bagi pihak anda.
  • Anggap kandungan web yang diambil sebagai input yang tidak dipercayai yang mungkin membawa arahan prompt-injection.
  • Dalam CI, berikan agen token yang jangka hayatnya pendek dan skop bacaan (read-scoped) serta jangan pernah mendedahkan kelayakan pengeluaran (production credentials).

Baki artikel ini mengubah setiap perkara itu menjadi tetapan konkrit, dengan jadual risiko, rujukan kebenaran, dan senario CI yang boleh anda salin.

Bagaimana mod kebenaran dan senarai benarkan berfungsi sebenarnya?

Claude Code bertanya sebelum ia menjalankan alat buat kali pertama. Anda memutuskan sama ada keputusan itu diingati, disekat (scoped), atau dilangkau. Mod kebenaran menetapkan asasnya:

  • default meminta pada penggunaan pertama setiap alat atau perintah.
  • plan adalah baca sahaja (read-only): ejen boleh membaca fail dan mencadangkan rancangan tetapi tidak boleh menyunting atau menjalankan perintah. Gunakan untuk semakan.
  • acceptEdits menerima suntingan fail secara automatik tetapi masih meminta untuk perintah shell.
  • bypassPermissions melangkau setiap permintaan. Anggap ia hanya sebagai sandbox.

Kawalan yang kekal berada dalam .claude/settings.json di bawah permissions, dengan peraturan allow, ask, dan deny. Peraturan disekat mengikut alat dan corak (pattern), jadi anda memberikan tepat apa yang diperlukan oleh tugas:

{
  "permissions": {
    "allow": ["Read", "Edit", "Bash(npm test:*)", "Bash(git diff:*)"],
    "ask": ["Bash(git push:*)", "WebFetch"],
    "deny": ["Read(./.env)", "Read(./secrets/**)", "Bash(curl:*)", "Bash(rm -rf:*)"]
  }
}

Peraturan deny sentiasa mengatasi allow, itulah sebabnya laluan rahsia di atas kekal tidak boleh dibaca walaupun peraturan Read yang luas wujud. Anthropic mendokumentasikan sintaks dan keutamaan peraturan penuh dalam [identity and access management docs] Claude Code (https://docs.anthropic.com/en/docs/claude-code/iam).

Seorang pembangun menyemak kod yang dijana AI pada tablet sebelum meluluskan panggilan alat ejen

Elakkan --dangerously-skip-permissions di luar kontena boleh buang (disposable container). Ia menghapuskan satu titik pemeriksaan manusia yang dapat menangkap rm yang buruk atau panggilan rangkaian yang tidak dijangka. Jika anda mahukan kelajuan tanpa risiko itu, utamakan senarai benarkan (allowlist) yang ketat supaya perintah rutin berjalan tanpa pengawasan manakala apa-apa yang baharu masih berhenti untuk anda semak.

Rujukan Risiko dan Mitigasi

Kebanyakan insiden berpunca daripada segelintir corak. Petakan setiap satunya kepada kawalan sebelum anda mengembangkan agen tersebut ke seluruh pasukan.

Risiko Mengapa ia berlaku Mitigasi
Secret exposure Kunci dilekatkan dalam sembang atau dibaca dari .env deny secret paths; pass creds via environment, never the prompt
Destructive command Kebenaran luas atau bypassPermissions pada rm/git reset Kekalkan rm -rf dan force-push dalam ask atau deny; semak diffs
Prompt injection Halaman yang diambil atau teks isu membawa arahan tersembunyi Anggap kandungan web/isu sebagai tidak dipercayai; skop WebFetch kepada domain yang diketahui
Untrusted MCP server Pelayan dengan skop tulis/rangkaian bertindak bagi pihak anda Siasat pengarang dan kebenaran; pin versi; skop paling minimum
Over-broad file access Agen membaca atau menyunting di luar projek Skop kepada repo; elakkan additionalDirectories tambahan
History rewrite Force-push atau hard reset kehilangan kerja Perlindungan cawangan; ask pada git push --force
CI credential leak Token produksi diletakkan dalam env runner Token jangka hayat pendek, skop baca sahaja; tiada kredensial prod dalam pekerjaan semakan

Kerangka ini mengikuti OWASP Top 10 for LLM Applications, yang mengenal pasti prompt injection, pengendalian output tidak selamat, dan agensi berlebihan sebagai risiko agen utama.

Rujukan Kebenaran dan Skop

Jadual ini ialah panduan ringkas yang saya berikan kepada ahli pasukan baharu. Ia merangkumi tetapan yang boleh mengubah skop atau 'radius letupan' bagi satu larian.

Setting / flag Apa yang dikawal Tetapan lalai yang disyorkan
permissions.allow Panggilan alat yang berjalan tanpa arahan (prompt) Senarai sempit, cth: Read, Bash(npm test:*)
permissions.ask Panggilan yang sentiasa meminta kebenaran terlebih dahulu Writes, network, package installs
permissions.deny Panggilan yang disekat sepenuhnya Read(./.env), Bash(curl:*), secret paths
--permission-mode plan Perancangan baca sahaja, tiada suntingan atau arahan Semakan kod dan audit
acceptEdits mode Terima suntingan secara automatik, masih meminta kebenaran untuk shell Refaktor tempatan yang dipercayai
--dangerously-skip-permissions Melangkau setiap permintaan kebenaran Hanya sandbox buangan (disposable)
additionalDirectories Folder tambahan yang mungkin dibaca oleh agen Biarkan tidak ditetapkan; skop kepada repo

Menilai pelayan MCP sebelum anda menyambungkannya

Pelayan MCP memperluaskan agen dengan alat baharu: klien pangkalan data, integrasi tiket, pelayar. Setiap yang anda tambah adalah kod yang boleh membaca konteks dan mengambil tindakan. Pelayan yang tidak dipercayai adalah cara terpantas untuk menukar agen yang membantu menjadi laluan eksfiltrasi data, jadi standard untuk menyambungkannya haruslah sama dengan standard yang akan anda gunakan pada sebarang kebergantungan (dependency) dengan akses rangkaian.

Sebelum anda menambah pelayan, jawab lima soalan ini:

  1. Siapa yang menerbitkannya, dan adakah sumbernya awam dan diselenggara?
  2. Skop apa yang dipintanya: baca sahaja (read-only), atau tulis dan rangkaian (write and network)?
  3. Data apa yang boleh dilihatnya setelah disambungkan: hanya repositori ini (repo), atau keseluruhan mesin anda?
  4. Adakah kelayakan (credentials) itu disekat skop dan jangka hayat pendek, atau adakah ia token pentadbir (admin token) yang berjangka panjang?
  5. Bolehkah anda menetapkan versi (pin a version) supaya kemas kini automatik tidak boleh secara senyap memperluaskan aksesnya?

Sambungkan pelayan dengan skop paling minimum yang dapat melakukan tugas, dan jauhkan pelayan yang boleh menulis atau berhadapan dengan pengeluaran (production-facing) daripada konfigurasi kongsi atau CI. Untuk mekanik persediaan dan panduan mendalam, lihat Claude Code MCP integration guide kami. Artikel Claude Code productivity tips meliputi cara mengekalkan jejak (footprint) itu kecil tanpa memperlahankan diri sendiri.

Menjauhkan rahsia daripada jangkauan model

Rahsia paling bersih ialah rahsia yang tidak pernah dilihat oleh model. Jangan tampal API keys ke dalam prompt, dan jangan minta agen untuk "membaca kunci dari config dan menggunakannya." Biarkan kelayakan (credentials) wujud dalam persekitaran (environment) dan rujuk ia dengan nama supaya nilainya kekal di luar transkrip.

Timbunan gembok yang melambangkan pemutaran rahsia dan memastikan API keys berada di luar konteks agen AI

Tiga tabiat meliputi kebanyakan risiko:

  • Tambah peraturan deny untuk .env, *.pem, dan mana-mana direktori secrets/ supaya agen tidak dapat membacanya walaupun secara tidak sengaja.
  • Gunakan pengimbas rahsia pra-komit (seperti gitleaks atau git secrets) supaya kunci yang terlepas gagal dalam komit, bukan audit.
  • Putar semula apa sahaja yang didedahkan dengan segera, kemudian semak log dan sejarahnya. Pemutaran adalah satu-satunya penyelesaian yang benar-benar menutup jurang tersebut.

Jika kunci sudah sampai ke transkrip atau komit, anggap ia telah dikompromi dan putar semula. Mencari sejarah git dengan git log -S membantu anda mencari di mana ia mendarat.

Skenario: mengaktifkan Claude Code dalam CI tanpa kelayakan produksi

Sebuah pasukan mahu Claude Code menyemak permintaan tarik (pull requests) dalam GitHub Actions. Matlamatnya adalah komen semakan automatik, dengan keupayaan sifar untuk menghantar (deploy), menulis ke main, atau menyentuh pangkalan data produksi.

Pelayan pusat data di sebalik kawalan akses, mewakili CI hak istimewa paling minimum untuk Claude Code

Berikut adalah persediaan yang memastikan tugas itu berguna tetapi terhad dalam skop:

  • Jalankan tanpa kepala (headless) dengan claude -p dalam mod plan supaya ejen membaca perbezaan (diff) dan menulis komen, tetapi tidak pernah menyunting fail atau menjalankan arahan binaan (build commands).
  • Berikan aliran kerja hanya contents: read dan pull-requests: write. Tiada tugas deploy, tiada skop infrastruktur.
  • Gunakan GITHUB_TOKEN jangka hayat pendek tugas itu, bukan token peribadi, dan jangan sekali-kali meletakkan kunci pangkalan data atau awan produksi dalam persekitaran tugas tersebut.
  • Tambah senarai deny untuk laluan rahsia dan curl keluar, supaya percubaan suntikan arahan (prompt-injection) di dalam perbezaan PR tidak dapat mengeksfiltrasi apa-apa.
  • Tetapkan versi tindakan (action) dan Claude Code, dan hadkan sebarang langkah deploy di belakang persekitaran berasingan yang diluluskan oleh manusia.
permissions:
  contents: read
  pull-requests: write
steps:
  - run: claude -p "Review the diff for security issues" --permission-mode plan
    env:
      GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Tugas semakan melihat kod dan menghantar maklum balas. Ia tidak boleh mencapai produksi kerana kelayakan produksi tidak pernah dalam skop. Gambaran keseluruhan keselamatan Claude Code Anthropic menerangkan kedudukan hak istimewa paling minimum ini untuk larian automatik dan tanpa kepala (headless).

Apa yang tidak seharusnya anda tampal ke dalam ejen pengekodan AI?

Sesetengah input tidak patut berada dekat dengan transkrip, kerana apa-apa sahaja dalam tetingkap konteks boleh dipantulkan semula, direkodkan, atau diambil tindakan:

  • Kunci API langsung, URL pangkalan data dengan kata laluan, atau kelayakan akar awan.
  • PII pelanggan atau data yang dikawal selia yang anda tidak akan letakkan dalam tiket sokongan.
  • Kunci tandatangan peribadi, sijil, atau fail .pem.
  • Rentetan sambungan pengeluaran penuh apabila replika bacaan atau fixture tempatan sudah memadai.

Apabila ejen memerlukan akses, berikan ia laluan ke kelayakan skop melalui persekitaran daripada rahsia itu sendiri. Hasil yang sama, tetapi radius letupan (blast radius) jauh lebih kecil.

Audit, hooks, dan semakan berterusan

Least privilege menetapkan asas; semakan memastikan anda kekal di situ. Baca rancangan ejen sebelum anda meluluskan langkah yang berisiko, dan baca diff sebelum anda commit. Untuk perubahan yang lebih besar, disiplin yang sama yang menjadikan AI-assisted refactoring selamat juga terpakai di sini: langkah-langkah kecil yang boleh disemak mengatasi satu larian gergasi tanpa pengawasan.

Tambahkan pagar keselamatan deterministik dengan hooks. Hook PreToolUse boleh memeriksa arahan dan menyekatnya sebelum ia berjalan, iaitu cara anda menguatkuasakan peraturan yang tidak seharusnya diatasi oleh model, seperti menolak sebarang penulisan ke laluan yang dilindungi. Pasangkan itu dengan jejak audit supaya anda dapat menjawab apa yang dilakukan ejen, bila, dan bagi pihak siapa.

Senarai semak berulang ringkas untuk pasukan:

  • Semak senarai benarkan dan larang .claude/settings.json mengikut jadual, bukan hanya semasa persediaan.
  • Lakukan semakan semula pelayan MCP selepas peningkatan versi utama.
  • Sahkan pekerjaan CI masih berjalan dalam mod plan dan tidak membawa rahsia produksi.
  • Putar token mengikut kadar dan selepas sebarang pendedahan yang disyaki.
  • Simpan CLAUDE.md yang menyatakan perkara yang tidak boleh dirunding: tiada force-push ke main, tiada akses DB prod langsung, tiada rahsia dalam prompt.

Untuk aliran kerja yang lebih luas mengenai semua ini, Claude Code ultimate guide menerangkan konfigurasi dari hujung ke hujung.

Pengambilan Utama

Keselamatan untuk agen pengkodan AI adalah pemikiran hak istimewa paling minimum yang sama yang anda sudah terapkan pada akaun perkhidmatan, ditulis sebagai peraturan kebenaran. Mula secara ketat, luaskan dengan senarai benarkan sempit, tolak laluan rahsia, saring pelayan MCP seperti kebergantungan, perlakukan kandungan yang diambil sebagai tidak dipercayai, dan simpan kelayakan pengeluaran di luar sebarang tugas yang boleh dicapai oleh agen. Lakukan itu dan Claude Code kekal sebagai pasangan tangan yang cekap, bukan pintu terbuka.

Gunakan alat percuma kami semasa mengikuti panduan ini.

Imej kulit untuk Penukar WebP: Cara Tukar Imej ke WebP (Dengan Saiz Sebenar)

Wed Mar 18 2026 20:00:00 GMT-0400 (Eastern Daylight Time)

Penukar WebP: Cara Tukar Imej ke WebP (Dengan Saiz Sebenar)

Tukar imej JPEG dan PNG kepada format WebP untuk fail web yang lebih kecil. Kami menyediakan saiz sebenar, arahan cwebp, kaedah Python & pelayar, serta strategi sandaran (fallback) JPEG/PNG.