"ฉันเข้าใจว่ามันสะดวก แต่จริงๆ แล้ว มันน่ากลัวไม่ใช่เหรอที่ AI จะสั่งการบนพีซีของพนักงาน?"
นี่คือข้อกังวลที่พบบ่อยที่สุดที่ฉันได้ยินจากผู้บริหารเมื่อสนับสนุนการนำ AI มาใช้ AI ที่ทำงานอยู่ในเบราว์เซอร์อย่าง ChatGPT ไม่ได้น่ากลัวเท่าไหร่ แต่ Claude Code อ่านไฟล์ในคอมพิวเตอร์ของพนักงาน สั่งการ และเข้าถึงอินเทอร์เน็ต "ฉันรู้ว่ามันทำให้ทุกอย่างเร็วขึ้น แต่ใครจะรับผิดชอบถ้าเกิดอุบัติเหตุ?" หลายบริษัทอาจติดอยู่ตรงจุดนี้
บริษัทใหญ่แห่งหนึ่งได้ให้คำตอบสำหรับความกังวลนั้น Mercari เพิ่งแชร์ "การตั้งค่าความปลอดภัยและวิธีการแจกจ่าย" ที่ใช้เมื่อนำ Claude Code ไปใช้กับพนักงานหลายร้อยคนระหว่างเซสชันการศึกษา
ยิ่งไปกว่านั้น เนื้อหาไม่ได้เกี่ยวกับระบบที่มีราคาแพงและเป็นกรรมสิทธิ์ ด้วยการเตรียมและแจกจ่ายไฟล์กำหนดค่าเพียงไฟล์เดียว แม้แต่วิสาหกิจขนาดกลางและขนาดย่อม (SMEs) ก็สามารถทำตามได้เป็นส่วนใหญ่
เหตุผลที่ Mercari สามารถแจกจ่ายให้คนหลายร้อยคนได้ไม่ใช่กลไกที่มีต้นทุนสูง แต่เป็น "ไฟล์กำหนดค่าเดียวที่พนักงานไม่สามารถลบออกได้" SMEs สามารถทำแบบเดียวกันได้ตั้งแต่วันนี้
ในบทความนี้ ฉันจะแยกย่อยการออกแบบของ Mercari ให้เข้าใจง่ายที่สุด ครอบคลุมถึง "สิ่งที่ต้องกลัว" "Mercari จัดการอย่างไร" และ "บริษัทของคุณเริ่มต้นได้จากตรงไหน" ฉันจะเพิ่มคำอธิบายสำหรับคำศัพท์ทางเทคนิคเมื่อปรากฏ เพื่อให้ผู้บริหารที่ไม่ใช่วิศวกรและ PM สามารถติดตามได้
คุณสามารถดูเอกสารนำเสนอที่อ้างถึงได้ที่นี่:
(Mercari Claude Code Organization Deployment Security Settings / Speaker Deck
ไวยากรณ์ที่แน่นอนสำหรับการตั้งค่าได้รับการตรวจสอบกับเอกสารทางการของ Anthropic แล้ว
ทำไม Claude Code ถึง "สะดวกแต่น่ากลัว"?
ก่อนอื่น มาทำความเข้าใจธรรมชาติของความกลัวกันก่อน ฉันรู้สึกว่าถ้าคุณแค่คัดลอกการตั้งค่าโดยไม่เข้าใจสิ่งนี้ คุณจะไม่รู้ว่าคุณกำลังปกป้องอะไรอยู่จริงๆ
สิ่งที่ทำให้ Claude Code แตกต่างจากแชท AI ทั่วไปคือ มันสามารถลงมือทำเองภายในคอมพิวเตอร์ท้องถิ่นของคุณได้ มันสามารถค้นหาและอ่านไฟล์ เขียนใหม่ และรันคำสั่งเชลล์ (คำสั่งที่พิมพ์ในเทอร์มินัล) มันยังสามารถเข้าถึงอินเทอร์เน็ตได้ กล่าวอีกนัยหนึ่ง เกือบทุกอย่างที่คุณทำได้บนคอมพิวเตอร์เครื่องนั้น AI ก็ทำได้เช่นกัน
โดยเฉพาะอย่างยิ่ง อะไรที่อาจผิดพลาดได้? คอมพิวเตอร์มักมีสิ่งที่คุณไม่อยากให้ใครเห็น:
- ข้อมูลที่ทำหน้าที่เป็นรหัสผ่านสำหรับคลาวด์หรือ API (ไฟล์กำหนดค่าเช่น .env, ~/.aws/credentials ฯลฯ)
- คีย์สำหรับเข้าสู่ระบบเซิร์ฟเวอร์ (เนื้อหาของ ~/.ssh/)
- ไฟล์สำคัญที่ถ้าถูกลบจะหายนะ
AI ไม่มีเจตนาร้าย อย่างไรก็ตาม เนื่องจากคำแนะนำที่คลุมเครือหรือคำสั่งที่ฝังอยู่ในข้อความที่น่าสงสัยบนเว็บ (ที่เรียกว่า prompt injection) มันอาจอ่านไฟล์ลับเหล่านี้โดยไม่ได้ตั้งใจและส่งไปยังอินเทอร์เน็ต หรือลบรายการสำคัญโดยใช้คำสั่ง rm เอกสารทางการของ Anthropic แนะนำให้ออกแบบที่จำกัดสิทธิ์ตามความเสี่ยงเหล่านี้ (Permission Settings - Official
โดยสรุป มีสามสิ่งที่ต้องปกป้อง: ป้องกันไม่ให้ข้อมูลลับรั่วไหล ป้องกันไม่ให้การดำเนินการที่อันตรายเกิดขึ้นโดยอัตโนมัติ และจำกัดขอบเขตสิ่งที่สามารถแตะต้องได้ตั้งแต่แรก มาตรการของ Mercari จะเข้าใจได้ง่ายขึ้นมากเมื่ออ่านผ่านเลนส์ทั้งสามนี้
เจาะลึก "5 มาตรการ" ของ Mercari
การนำเสนอของ Mercari สรุปมาตรการสำคัญห้าประการ เราจะดู "วัตถุประสงค์" และ "วิธีการนำไปใช้" สำหรับแต่ละข้อ
โปรดทราบว่าสไลด์นำเสนอเน้นที่แนวคิด และไม่ได้รวมทุกรายละเอียดของไฟล์กำหนดค่า ดังนั้นฉันจะนำเสนอในรูปแบบ "วิธีนำนโยบายของ Mercari ไปใช้โดยใช้การตั้งค่าอย่างเป็นทางการของ Claude Code" ชื่อคีย์และไวยากรณ์ทั้งหมดได้รับการตรวจสอบจากเอกสารทางการของ Anthropic
มาตรการ ①: ทำให้การยืนยันโดยมนุษย์ "ข้ามไม่ได้"
Claude Code มีโหมดที่ดำเนินการโดยอัตโนมัติโดยไม่ต้องถามยืนยันทุกครั้ง แม้จะสะดวกสำหรับนักพัฒนาที่ใช้เครื่องทดลองส่วนตัว แต่การอนุญาตสิ่งนี้เมื่อแจกจ่ายให้ทุกคนในบริษัทจะถอดเบรกความปลอดภัยออก
Mercari ปิดการใช้งาน "โหมดข้ามการยืนยัน" นี้ อย่างเป็นทางการ มีการตั้งค่าเช่น permissions.disableBypassPermissionsMode (และ disableAutoMode เพื่อบล็อกโหมดอัตโนมัติ) การตั้งค่าเหล่านี้เป็น "disable" จะป้องกันไม่ให้ผู้ใช้เข้าสู่โหมดเหล่านั้น ยิ่งไปกว่านั้น หากวางไว้ใน "managed settings" ที่จะอธิบายต่อไป พนักงานจะไม่สามารถปิดใช้งานได้ด้วยตนเอง (Permission Settings - Official
ความหมายนั้นง่าย: มันบังคับใช้กฎที่ว่า "มนุษย์ต้องให้ OK ก่อนที่ AI จะขยับมือ" ทั่วทั้งบริษัท
มาตรการ ②: หยุดคำสั่งอันตราย หรือยืนยันทุกครั้ง
ต่อไป เราใส่สายจูงให้กับคำสั่งต่างๆ ตัวอย่างเช่น curl (คำสั่งเพื่อดึงข้อมูลจากอินเทอร์เน็ต) ถ้าใช้อย่างอิสระ มันสามารถเป็นช่องทางในการส่งไฟล์ลับออกไปภายนอก
ใน Claude Code คุณสามารถตั้งค่ารายการ deny สำหรับคำสั่งเฉพาะ และรายการ ask ที่ต้องยืนยันก่อนดำเนินการ ไวยากรณ์มีลักษณะดังนี้:
1{2 "permissions": {3 "deny": [4 "Bash(curl:*)",5 "Bash(wget:*)"6 ],7 "ask": [8 "Bash(git push:*)"9 ]10 }11}
Bash(curl:*) หมายถึง "บล็อกคำสั่งทั้งหมดที่ขึ้นต้นด้วย curl" (:* ต่อท้ายหมายถึง "อะไรก็ตามหลังจากนั้น") ข้อควรทราบที่สำคัญ: เอกสารทางการระบุว่าการพยายามอนุญาต curl เฉพาะปลายทางบางแห่งเช่น GitHub สามารถเลี่ยงได้ง่ายผ่านการเปลี่ยนเส้นทาง ดังนั้น คำแนะนำอย่างเป็นทางการคือ บล็อกการสื่อสารทางอินเทอร์เน็ตทั้งหมดและรวมการดึงข้อมูลที่จำเป็นผ่านพอร์ตปลอดภัยแยกต่างหาก (Permission Settings - Official) "พอร์ตปลอดภัย" นี้คือ WebFetch (คุณสมบัติในตัวของ Claude Code สำหรับการดึงข้อมูลทางอินเทอร์เน็ต) ซึ่งสามารถกำหนดรายการอนุญาตปลายทางได้
มาตรการ ③: ป้องกันการอ่านไฟล์ลับและการปรับเปลี่ยนระบบ
เรายังบล็อกการเข้าถึงข้อมูลลับด้วย เช่น ไฟล์ .env ที่มีรหัสผ่าน หรือคำสั่ง sudo ที่ใช้สำหรับการเปลี่ยนแปลงระบบในระดับลึก
1{2 "permissions": {3 "deny": [4 "Read(.env)",5 "Read(.env.*)",6 "Read(**/.ssh/**)",7 "Bash(sudo:*)"8 ]9 }10}
การเขียน Read(.env) ทำให้ .env ไม่สามารถอ่านได้ในทุกระดับภายใต้โฟลเดอร์ทำงาน สิ่งหนึ่งที่ควรรู้เพื่อความปลอดภัยคือ แม้ว่ารายการปฏิเสธนี้จะใช้ได้กับการอ่านไฟล์ของ Claude เองหรือคำสั่งที่ชัดเจนเช่น cat แต่ไม่สามารถหยุดสคริปต์ที่ AI เขียนขึ้นจากการเปิดไฟล์อย่างลับๆ ในเบื้องหลังได้อย่างสมบูรณ์ (Permission Settings - Official) นั่นคือเหตุผลที่จำเป็นต้องมีมาตรการ ④
มาตรการ ④: ล้อม "ขอบเขตการเข้าถึง" ด้วย Sandbox
ในขณะที่รายการปฏิเสธ是关于การกำหนดขอบเขตสำหรับคำสั่งเฉพาะ Sandbox สร้าง กำแพงในระดับ OS มันจำกัดทางกายภาพไม่ให้ AI แตะต้องสิ่งใดนอกโฟลเดอร์ทำงานหรือเชื่อมต่อกับสิ่งอื่นนอกเหนือจากโดเมนอินเทอร์เน็ตที่ได้รับอนุญาต
1{2 "sandbox": {3 "enabled": true,4 "network": {5 "allowedDomains": ["*.github.com", "registry.npmjs.org"]6 }7 }8}
เมื่อเปิดใช้งาน แม้ว่า AI จะพยายามเข้าถึงไฟล์ลับโดยไม่ได้ตั้งใจ มันก็ไม่สามารถเข้าถึงได้เพราะอยู่นอก "sandbox" เอกสารทางการอธิบายว่าคุณควรวางชั้นทั้งรายการปฏิเสธ (มาตรการ ② & ③) และ sandbox เพื่อเป็นขอบเขตสุดท้าย (Sandboxing - Official) คิดว่ามันเหมือนกับมีทั้งกฎส่วนบุคคลและรั้วรอบขอบชิด
ข้อจำกัดประการหนึ่ง: Sandboxing ทำงานบน macOS, Linux และ WSL2 (Linux บน Windows) แต่ ไม่รองรับบน Windows ดั้งเดิม ในสถานที่ทำงานที่ใช้ Windows เป็นหลัก การตัดสินใจคือการเสริมการตั้งค่าสิทธิ์ในมาตรการ ①–③
มาตรการ ⑤: ให้ AI อ่าน "สิ่งที่ต้องปกป้อง" ทุกครั้ง
สุดท้าย มุมมองที่แตกต่างจากการตั้งค่าที่เข้มงวด: เขียนนโยบายความปลอดภัยของบริษัทในคู่มือคำแนะนำที่ AI อ่านทุกครั้ง ถ้าการตั้งค่าเป็น "ล็อคทางกายภาพ" นี่ก็เหมือน "การทบทวนกฎระเบียบในที่ทำงาน"
มีหลายวิธีทางเทคนิคในการทำเช่นนี้ และไม่ชัดเจนจากเอกสารว่า Mercari ใช้วิธีใด อย่างไรก็ตาม วิธีที่ง่ายที่สุดคือการวางไฟล์ชื่อ CLAUDE.md ลงในโฟลเดอร์ทำงานโดยตรง และระบุกฎภายใน Claude Code จะอ่านไฟล์นี้ทุกครั้ง
1# คำขอด้านความปลอดภัย2- อย่าเปิดไฟล์ .env หรือไฟล์คีย์ (~/.ssh/ ฯลฯ)3- อย่าส่งข้อมูลลูกค้าหรือความลับทางการค้าไปยังบริการภายนอก4- ยืนยันกับมนุษย์ทุกครั้งก่อนดำเนินการลบหรือเผยแพร่
สิ่งที่ทำได้วันนี้: แค่วางสามบรรทัดนี้ลงในไฟล์ CLAUDE.md ก็เพิ่มชั้นสามัญสำนึกให้กับพฤติกรรมของ AI คุณสามารถเริ่มต้นด้วยสิ่งนี้ก่อนที่จะมีไฟล์กำหนดค่า
สิ่งที่ทำได้วันนี้: คุณไม่จำเป็นต้องทำทุกอย่างพร้อมกัน เริ่มต้นด้วยการเพิ่มบรรทัด Read(.env) จากมาตรการ ③ ลงในไฟล์กำหนดค่าชื่อ .claude/settings.json สร้างโฟลเดอร์ชื่อ .claude (รวมจุดนำหน้า) ในโฟลเดอร์โปรเจกต์ของคุณ และบันทึกไฟล์ข้อความชื่อ settings.json ไว้ในนั้น หากคุณต้องการให้ใช้กับทุกโปรเจกต์ ให้วางไว้ใน ~/.claude/settings.json ในโฮมไดเรกทอรีของคุณ คุณสามารถเริ่มต้นด้วยการเคลื่อนไหวที่มีประสิทธิภาพสูงสุด: ป้องกันไม่ให้ AI อ่านไฟล์ลับ
ทักษะที่แท้จริงของ Mercari อยู่ที่ "การแจกจ่าย"
จนถึงตอนนี้ เราได้ครอบคลุม "สิ่งที่ต้องตั้งค่า" การนำเสนอของ Mercari มีประโยชน์ในทางปฏิบัติเป็นพิเศษเพราะมันกล่าวถึงวิธีการแจกจ่ายการตั้งค่าเหล่านี้ให้กับคนหลายร้อยคน
โดยปกติ ไฟล์กำหนดค่าจะถูกวางไว้ในคอมพิวเตอร์ของแต่ละคน (การตั้งค่าผู้ใช้) ซึ่งหมายความว่าพนักงานสามารถเขียนทับได้ สิ่งนี้นำไปสู่สถานการณ์ที่ "แจกจ่ายการตั้งค่าความปลอดภัยไปแล้ว แต่มีคนปิดใช้งานมัน"
เพื่อแก้ปัญหานี้ Mercari ใช้ MDM (Mobile Device Management - ระบบสำหรับบริษัทในการจัดการพีซีของพนักงาน) เพื่อ แจกจ่าย "การตั้งค่าที่จัดการ" ที่พนักงานไม่สามารถเขียนทับได้พร้อมกัน Claude Code มีตำแหน่งที่กำหนดไว้สำหรับการตั้งค่าที่จัดการซึ่งมีลำดับความสำคัญเหนือการตั้งค่าส่วนบุคคลและไม่สามารถเปลี่ยนแปลงได้โดยผู้ใช้ บน macOS คือ /Library/Application Support/ClaudeCode/managed-settings.json (Settings - Official) โดยการเขียนมาตรการ ①–④ ที่นี่ จะไม่สามารถผ่อนคลายได้ในสถานที่จริง
ที่ฉลาดยิ่งกว่านั้นคือ การแยกระดับความปลอดภัยสำหรับวิศวกรและไม่ใช่วิศวกร:
- สำหรับวิศวกร: การตั้งค่าที่อนุญาตให้ปรับแต่งได้บ้างและไม่ขัดขวางประสิทธิภาพการทำงานมากเกินไป
- สำหรับผู้ที่ไม่ใช่วิศวกร: การตั้งค่าเริ่มต้นที่ปลอดภัยที่สุดโดยมีพื้นที่สำหรับปรับแต่งน้อยกว่า
แม้จะเป็นเครื่องมือเดียวกัน พวกเขาปรับความยาวของสายจูงตามความเข้าใจของผู้ใช้ ถ้าทุกคนถูกจำกัดอย่างเข้มงวด งานก็จะชะงัก ถ้าทุกคนหลวมเกินไป อุบัติเหตุก็จะเกิดขึ้น พวกเขาแก้ปัญหานี้โดยการปรับเปลี่ยนการตั้งค่าที่แจกจ่าย
จุดเริ่มต้นที่ SMEs สามารถทำตามได้
บริษัทส่วนใหญ่คงไม่มี MDM ไม่เป็นไร คุณสามารถแยกส่วนของการออกแบบของ Mercari ที่ใช้ได้ไม่ว่าจะมีขนาดเท่าใดก็ได้
สิ่งที่คุณต้องทำคือ แจกจ่ายไฟล์เดียวที่มีการตั้งค่าความปลอดภัยและให้วางไว้ ถ้าคุณมี MDM ให้แจกจ่ายเป็นการตั้งค่าที่จัดการ ถ้าไม่มี ให้แชร์และบอกว่า "กรุณาวาง settings.json นี้ในโฟลเดอร์ .claude/ ของคุณ" การบังคับใช้น้อยกว่า แต่ทิศทางเดียวกัน
เป็นชุดขั้นต่ำ การรวมมาตรการ ①–③ มีลักษณะดังนี้ ฉันแนะนำให้ใช้สิ่งนี้เป็นพื้นฐานและเพิ่มคำสั่งเฉพาะใดๆ ที่บริษัทของคุณต้องการแบน
1{2 "permissions": {3 "disableBypassPermissionsMode": "disable",4 "deny": [5 "Bash(curl:*)",6 "Bash(wget:*)",7 "Bash(sudo:*)",8 "Read(.env)",9 "Read(.env.*)",10 "Read(**/.ssh/**)"11 ],12 "ask": [13 "Bash(git push:*)",14 "Bash(rm:*)"15 ]16 }17}
จากบนลงล่าง: ปิดการข้ามการยืนยัน, บล็อกการสื่อสารทางอินเทอร์เน็ตและการดำเนินการของผู้ดูแลระบบ, ห้ามอ่านไฟล์ลับ, และยืนยันทุกครั้งก่อนลบหรือเผยแพร่ แม้ว่าคุณจะไม่เข้าใจเนื้อหา มันก็จะทำงานถ้าคุณคัดลอกและวาง
ถ้าแจกจ่ายให้กับผู้ที่ไม่ใช่วิศวกร ฉันแนะนำเวอร์ชันที่ปลอดภัยที่สุด ซึ่งเพิ่ม sandbox (มาตรการ ④) การรวมการตั้งค่าทั้งสองเป็นไฟล์เดียวมีลักษณะดังนี้:
1{2 "permissions": {3 "disableBypassPermissionsMode": "disable",4 "deny": [5 "Bash(curl:*)",6 "Bash(wget:*)",7 "Bash(sudo:*)",8 "Read(.env)",9 "Read(.env.*)",10 "Read(**/.ssh/**)"11 ],12 "ask": [13 "Bash(git push:*)",14 "Bash(rm:*)"15 ]16 },17 "sandbox": {18 "enabled": true,19 "network": {20 "allowedDomains": ["*.github.com", "registry.npmjs.org"]21 }22 }23}
ฉันเพียงแค่วาง permissions และ sandbox ไว้เคียงข้างกัน คั่นด้วยลูกน้ำ เปลี่ยน allowedDomains ให้ตรงกับบริการที่บริษัทของคุณใช้ จำไว้ว่า sandboxing ทำงานบน macOS, Linux และ WSL2
สิ่งที่ฉันบอกผู้คนเสมอเมื่อสนับสนุนการนำไปใช้คือ: อย่าหยุดเพียงเพราะคุณตั้งเป้าไปที่ความสมบูรณ์แบบ แม้ว่าคุณจะไม่สามารถสร้างการป้องกันหลายชั้นเหมือนของ Mercari ได้ในทันที การปกป้อง .env ด้วยบรรทัดเดียวก็ลดความน่าจะเป็นของอุบัติเหตุลงอย่างมาก
สิ่งที่ทำได้วันนี้: ถ้าแม้แต่คนเดียวในบริษัทของคุณเริ่มใช้ Claude Code ให้แชร์ชุดขั้นต่ำด้านบนเป็นข้อความและให้พวกเขาวางลงใน .claude/settings.json มันมีขนาดที่สมบูรณ์แบบสำหรับการซ้อมแจกจ่าย
ข้อควรระวัง: 3 สิ่งที่ต้องรู้ก่อนแจกจ่ายการตั้งค่า
เนื่องจากนี่是关于การเสริมความปลอดภัย จึงมีจุดที่อันตรายหากเข้าใจผิด
- "การเขียนรายการปฏิเสธ" ไม่ได้หมายความว่าปลอดภัยอย่างสมบูรณ์ ดังที่กล่าวไว้ในมาตรการ ③ รายการปฏิเสธไม่สามารถหยุดทุกสิ่งที่สคริปต์อาจทำในเบื้องหลังได้ แม้ว่าคุณจะหยุด
curlวิธีการสื่อสารอื่นๆ อาจยังคงอยู่ หากคุณต้องการปิดล้อมอย่างแท้จริง อย่าลืมหลักการของการวางชั้นร่วมกับ sandbox (มาตรการ ④) - อย่าพึ่งพาการกรองตามอาร์กิวเมนต์ Anthropic เองเตือนว่าสิทธิ์แบบมีเงื่อนไข เช่น การอนุญาต
curlสำหรับ URL ที่เฉพาะเจาะจงเท่านั้น สามารถเลี่ยงได้ง่าย มันแข็งแรงกว่าที่จะบล็อกสิ่งที่อันตรายทั้งหมดและให้ทางเลือกที่ปลอดภัยทางเดียว - อย่าเพียงแค่แจกจ่ายการตั้งค่าแล้วจบ แม้ว่าคุณจะบังคับใช้การตั้งค่าที่จัดการ มันก็ไร้ความหมายถ้าพนักงานติดตั้งเครื่องมือที่น่าสงสัยอื่นๆ ด้วยตนเอง การตั้งค่าเป็น "กลไกในการลดอุบัติเหตุ" และทำงานได้ดีที่สุดเมื่อจับคู่กับการศึกษาเกี่ยวกับการใช้งาน นี่คือจุดที่มาตรการ ⑤ "ให้พวกเขาอ่านกฎ" ใช้ได้ผลในที่สุด
FAQ สำหรับผู้ใช้ระดับกลาง
ถาม. มีประโยชน์อะไรไหมถ้าจะตั้งค่าสำหรับการใช้งานส่วนตัว?
มี เกณฑ์คือว่ามีข้อมูลลับบนคอมพิวเตอร์เครื่องนั้นหรือไม่ ไม่ใช่เรื่องของบริษัท ฟรีแลนซ์และนักพัฒนารายบุคคลยังคงมี .env และ ~/.ssh/ อยู่ในเครื่อง อย่างน้อยที่สุด การรวมข้อห้ามการอ่านจากมาตรการ ③ ก็ปลอดภัยกว่า
ถาม. การจำกัดสิทธิ์จะทำให้ AI ไร้ประโยชน์หรือไม่?
มันเป็นเรื่องของวิธีการจำกัด คำสั่งแบบอ่านอย่างเดียว (เช่น ls หรือ cat) ทำงานโดยไม่ต้องยืนยันตามค่าเริ่มต้น ดังนั้นงานประจำวันแทบจะไม่หยุดชะงัก สิ่งที่หยุดคือการดำเนินการเช่นการลบ การเผยแพร่ และการสื่อสารทางอินเทอร์เน็ต ซึ่งเป็นสิ่งที่เสียหายถ้าผิดพลาด ในความเป็นจริง โดยการเปลี่ยนเป็น "มนุษย์ตรวจสอบเฉพาะเมื่อมันอันตราย" คุณสามารถขยายขอบเขตสิ่งที่คุณปล่อยให้ AI ทำโดยอัตโนมัติได้อย่างปลอดภัย
ถาม. ความแตกต่างระหว่าง `settings.json` และ managed settings (`managed-settings.json`) คืออะไร?
ตำแหน่งและ "ความแข็งแกร่ง" แตกต่างกัน settings.json ในโฟลเดอร์ .claude/ ของโปรเจกต์เป็นการตั้งค่าร่วมที่ใครก็แก้ไขได้ managed-settings.json ถูกแจกจ่ายโดยบริษัทและไม่สามารถเปลี่ยนแปลงได้โดยผู้ใช้ สำหรับบุคคลหรือกลุ่มเล็กๆ แบบแรกก็เพียงพอแล้ว; ย้ายไปใช้แบบหลังเมื่อถึงขั้นที่ "เป็นปัญหาถ้าใครสักคนผ่อนคลายการตั้งค่า"
ถาม. ฉันสามารถใช้แนวคิดเดียวกันกับ Cursor หรือเครื่องมือเขียนโค้ด AI อื่นๆ ได้หรือไม่?
สิ่งที่คุณต้องการปกป้อง (ความลับ การดำเนินการอันตราย ขอบเขตการเข้าถึง) เหมือนกัน ดังนั้นแนวคิดนี้ใช้ได้ อย่างไรก็ตาม ไวยากรณ์และการมี sandboxing แตกต่างกันไปตามเครื่องมือ ดังนั้นให้ถือว่าสัญกรณ์ settings.json นี้เฉพาะสำหรับ Claude Code ถ้าใช้เครื่องมืออื่น ทางลัดคือการนำมุมมองทั้งสามนี้ไปใช้กับเอกสารทางการของเครื่องมือนั้นๆ
สรุป: จาก "อย่าใช้" สู่ "แจกจ่ายอย่างปลอดภัย"
เมื่อฉันได้รับคำปรึกษาเกี่ยวกับการนำ AI มาใช้ คำตอบที่พบบ่อยที่สุดเคยเป็น "มันอันตราย ดังนั้นเรายังให้พวกเขาใช้ไม่ได้" แต่การตัดสินใจนั้นก็ทิ้งความสะดวกสบายทั้งหมดไปด้วย
Mercari แสดงให้เราเห็นหนทางออกจากทางเลือกแบบสองขั้วนั้น ปิดการข้ามการยืนยัน หยุดการดำเนินการอันตราย ห้ามแตะต้องไฟล์ลับ ล้อมด้วย sandbox และให้พวกเขาอ่านกฎ จากนั้น แจกจ่ายให้ทุกคนเป็นการตั้งค่าที่ไม่สามารถแก้ไขได้ มันคือการออกแบบที่เปลี่ยนจาก "ห้ามเพราะน่ากลัว" เป็น "แจกจ่ายพร้อมสายจูงเพราะน่ากลัว"
- เป้าหมายที่ต้องปกป้อง: ป้องกันความลับรั่วไหล / ป้องกันการดำเนินการอันตราย / จำกัดขอบเขตการเข้าถึง
- 5 มาตรการของ Mercari: ปิดการข้าม, จำกัดคำสั่งอันตราย, ห้ามไฟล์ลับ, sandbox, และการอ่านกฎ
- การแจกจ่าย: ใช้การตั้งค่าที่จัดการซึ่งผู้ใช้ไม่สามารถเขียนทับได้ โดยแยกตามความเข้าใจ
สุดท้าย นี่คือสามขั้นตอนที่เริ่มได้ตั้งแต่วันนี้:
- เพิ่ม `Read(.env)` ลงในคอมพิวเตอร์ของคุณเอง: เริ่มต้นด้วยการห้ามอ่านไฟล์ลับ นี่คือการเคลื่อนไหวเดี่ยวที่มีประสิทธิภาพสูงสุด
- สร้างไฟล์เดียวของชุดขั้นต่ำ: จากตัวอย่าง
permissionsด้านบน เพิ่มคำสั่งที่บริษัทของคุณต้องการหยุด - แจกจ่ายให้กับคนหนึ่งคนในบริษัทเพื่อทดสอบ: ให้พวกเขาวางลงใน
.claude/settings.jsonและตรวจสอบร่วมกันว่างานไม่ชะงัก
ขั้นตอนแรกคือแค่บรรทัดเดียวเพื่อปกป้อง .env คุณสามารถวางชั้นการป้องกันหลายชั้นที่สมบูรณ์แบบทีละชั้นจากตรงนั้น ทำไมไม่วางไฟล์แรกนั้นวันนี้และเปลี่ยนจาก "หยุดเพราะน่ากลัว" เป็น "มอบหมายพร้อมสายจูง" ล่ะ?



![เทคนิคการใช้ AI สุดอัจฉริยะของ Yusuke Narita [ฉบับเก็บตก]](/cdn-cgi/image/width=1920,quality=90,format=auto,metadata=none/https%3A%2F%2Fcms-assets.youmind.com%2Fmedia%2F1784137658627_u4bwry_HNMS89bbsAAUPJI.jpg)

