Secrets & Environment Variables
จัดการ API key และ secret ฝั่ง server สำหรับโค้ด backend และ realtime แบบกำหนดเอง
แอป Proyecta ส่วนใหญ่ไม่จำเป็นต้องใช้ secret เลย การชำระเงิน, อีเมล, การยืนยันตัวตน และคอนเทนต์ล้วนเป็น platform capabilities — Proyecta จะเชื่อมต่อและจัดการ credentials ให้คุณเอง (ดูที่ Connectors) แอปส่วนใหญ่ไม่ต้องเพิ่ม secret ที่นี่เลย คุณจะต้องใช้ก็ต่อเมื่อมีบริการที่ไม่มี capability หรือ connector รองรับเท่านั้น — โดยทั่วไปคือในแอปที่มีโค้ด realtime/backend แบบกำหนดเอง (realtime backend เร็วๆ นี้)
คลิกปุ่ม Settings ในแถบเครื่องมือของ builder เพื่อเปิดแผง Settings ซึ่งมีสามส่วน:
| ส่วน | ใช้สำหรับ |
|---|---|
| General | ชื่อโปรเจกต์และ knowledge base |
| SEO & sharing | ตั้งชื่อเว็บไซต์, คำอธิบาย และ favicon |
| Secrets | Secret ฝั่ง server สำหรับโค้ด backend / realtime แบบกำหนดเอง |
จะเพิ่ม secret ได้อย่างไร?
หัวข้อที่มีชื่อว่า “จะเพิ่ม secret ได้อย่างไร?”- คลิกปุ่ม Settings ในแถบเครื่องมือของ builder
- เปิดแท็บ Secrets
- ใส่ชื่อ (เช่น
STRIPE_SECRET_KEY) และค่าของมัน - คลิก Add
จะใช้ secret ในแอปได้อย่างไร?
หัวข้อที่มีชื่อว่า “จะใช้ secret ในแอปได้อย่างไร?”สำหรับแอปที่มี realtime backend, secret จะถูกซิงค์ไปยัง deployment นั้นและอ้างอิงในโค้ดฝั่ง server ด้วย process.env.SECRET_NAME โดย secret จะไม่ปรากฏในโค้ด frontend หรือตัวแปรสภาพแวดล้อมระดับ pod — เพื่อป้องกันไม่ให้ secret หลุดเข้าไปใน browser bundle
สำหรับการเชื่อมต่อทั่วไป โดยปกติคุณไม่จำเป็นต้องเพิ่ม secret — Proyecta จัดการ credentials ให้เป็นส่วนหนึ่งของ capability หรือ connector:
"Accept payments"→ Commerce capability เชื่อมต่อ Stripe Connect (checkout, orders, payouts)"Send emails"→ email capability / managed connector จัดการ provider key ให้"Add sign-in"→ auth capability จัดเตรียม OIDC client และฉีด OAuth config ให้
ให้เพิ่ม secret ที่นี่เฉพาะสำหรับบริการที่ capability หรือ connector ไม่รองรับ ในแอปที่มีโค้ด realtime/backend แบบกำหนดเอง (realtime backend เร็วๆ นี้) โค้ดนั้นจะอ่าน secret ผ่าน process.env
ดู/แก้ไข secret หลังจากสร้างแล้วได้ไหม?
หัวข้อที่มีชื่อว่า “ดู/แก้ไข secret หลังจากสร้างแล้วได้ไหม?”ค่าของ secret จะถูกปิดบังไว้โดยค่าเริ่มต้น คุณสามารถสลับการแสดงผลเพื่อเปิดเผยค่า, อัปเดต หรือลบแล้วสร้างใหม่ได้
AI มองเห็น secret ของฉันได้ไหม?
หัวข้อที่มีชื่อว่า “AI มองเห็น secret ของฉันได้ไหม?”AI สามารถเห็นชื่อ secret ของคุณได้ แต่ไม่เห็นค่าของมัน ซึ่งช่วยให้ AI อ้างอิงตัวแปรสภาพแวดล้อมที่ถูกต้องเมื่อสร้างฟีเจอร์ โดยไม่เปิดเผยข้อมูลที่ละเอียดอ่อน
การตรวจจับ key ที่ละเอียดอ่อน
หัวข้อที่มีชื่อว่า “การตรวจจับ key ที่ละเอียดอ่อน”Proyecta ตรวจจับรูปแบบ key ที่ละเอียดอ่อนทั่วไปโดยอัตโนมัติ (API key, token, password) และปิดบังค่าของมันใน UI
Metadata ของเว็บไซต์
หัวข้อที่มีชื่อว่า “Metadata ของเว็บไซต์”ส่วน SEO & sharing ให้คุณตั้งค่า:
- Site title — แสดงในแท็บ browser และผลการค้นหา
- Site description — ใช้สำหรับ SEO meta description
- Favicon — ไอคอนที่แสดงในแท็บ browser
การตั้งค่าเหล่านี้จะถูกเก็บไว้ในโปรเจกต์ของคุณและนำไปใช้เมื่อคุณ publish
Knowledge Base
หัวข้อที่มีชื่อว่า “Knowledge Base”ส่วน Knowledge Base ให้คุณเพิ่มเอกสารอ้างอิงและบริบทที่ AI ใช้เมื่อสร้างแอปของคุณ เพิ่ม brand guidelines, technical specifications หรือเอกสารอื่นๆ ที่ช่วยให้ AI ตัดสินใจได้ดีขึ้น
คำถามที่พบบ่อย
หัวข้อที่มีชื่อว่า “คำถามที่พบบ่อย”secret ถูกเข้ารหัสไหม?
Secret จะถูกเก็บไว้ในโปรเจกต์ของคุณ และสำหรับแอปที่มี realtime backend จะถูกซิงค์ไปยัง deployment นั้น โดยจะไม่ปรากฏในโค้ดที่ commit ไว้เลย
จะมี secret ที่แตกต่างกันสำหรับ dev และ production ได้ไหม?
ในปัจจุบัน secret จะใช้กับทั้ง runtime สำหรับการพัฒนาและแอปที่ publish แล้ว การจัดการ secret แบบแยก environment มีแผนจะรองรับในอนาคต
ถ้าฉันเผลอเปิดเผย secret ออกไปต้องทำอย่างไร?
ให้ลบ secret เก่าทันที, เพิกถอน key กับผู้ให้บริการ third-party และสร้างอันใหม่
secret ต่างจาก connectors อย่างไร?
Secret คือตัวแปรสภาพแวดล้อมดิบที่คุณจัดการเอง ส่วน Connector คือ managed integration ที่ Proyecta จัดการการเก็บ credentials, การยืนยันตัวตน, การรีเฟรช token และการบันทึก audit log ให้คุณ ใช้ Connector เมื่อมีให้ใช้งาน (Stripe, Slack, Resend, ElevenLabs); ใช้ secret สำหรับบริการที่ยังไม่มี connector รองรับ