# Security Review Checklist

ใช้ก่อนแชร์ Power BI report, Power Apps app, Power Automate flow, SharePoint site, หรือเครื่องมือภายในให้ทีมกว้างขึ้น

## 1. ข้อมูลและชั้นความลับ

- [ ] รู้แล้วว่าใครเป็น data owner
- [ ] ระบุ field สำคัญแล้ว เช่น ชื่อลูกค้า เบอร์โทร ยอดขาย เงินเดือน เลขบัตร secret หรือ API key
- [ ] จัดชั้นข้อมูลแล้ว: Public, Internal, Confidential, หรือ Highly Confidential
- [ ] ถ้ามีข้อมูล Confidential หรือสูงกว่า ต้องรู้ว่าใครดูได้ ใคร export ได้ และใครอนุมัติ
- [ ] test data ไม่มีข้อมูลจริงที่เป็น personal data หรือ secret

## 2. สิทธิ์และการแชร์

- [ ] ให้สิทธิ์เท่าที่จำเป็น ไม่ให้ owner/edit เพราะแค่สะดวก
- [ ] แยกบทบาทชัดเจน: owner, builder, reviewer, viewer
- [ ] ทดสอบ Power BI RLS, SharePoint permission หรือ app role ด้วย account ที่ไม่ใช่ owner
- [ ] external sharing ปิดอยู่ หรือมีเหตุผลและคนอนุมัติชัดเจน
- [ ] เขียนรอบ access review ไว้แล้ว เช่น ทุกเดือนหรือทุกไตรมาส

## 3. Encryption, Hashing, Tokenization

- [ ] ถ้าข้อมูลต้องถอดกลับมาอ่าน ใช้แนวคิด encryption และป้องกัน key ให้ดี
- [ ] ถ้าต้องตรวจความเหมือนเดิมหรือเก็บ password ใช้ hashing ที่มี salt/work factor
- [ ] ไม่ใช้ hash กับข้อมูลที่ต้องถอดกลับมาใช้งาน
- [ ] ถ้าระบบอื่นต้องอ้างอิงข้อมูล sensitive โดยไม่เห็นค่าจริง ใช้ tokenization หรือ reference token
- [ ] token ต้องมี owner, expiry หรือวิธี revoke เมื่อเกิดปัญหา

## 4. Secrets และ Connections

- [ ] ไม่ฝัง password, API key, token, connection string ในสูตร, markdown, screenshot, export หรือ comment
- [ ] connection ของ flow/app มี owner ที่ยังใช้งานได้ หรือใช้ service account pattern ที่ทีมอนุมัติ
- [ ] รู้วิธี rotate หรือ revoke key/token ถ้าหลุด
- [ ] secret ที่ใช้กับ production ไม่ปนกับ secret สำหรับ test
- [ ] owner backup รู้ว่าต้องทำอะไรเมื่อ owner หลักไม่อยู่

## 5. Power Platform DLP

- [ ] ตรวจแล้วว่า connector combination ผ่าน DLP policy
- [ ] business connector ไม่ถูกใช้ร่วมกับ personal/external connector โดยไม่ผ่าน review
- [ ] custom connector มี owner, endpoint, purpose และ data level ชัดเจน
- [ ] environment ที่ใช้เหมาะกับความเสี่ยงของข้อมูล
- [ ] ถ้า policy change กระทบ flow/app production ต้องมีแผนสื่อสารและ rollback

## 6. Audit และ Monitoring

- [ ] รู้ว่าจะดู log จากที่ไหน เช่น run history, admin activity log, connector activity log หรือ SharePoint/Power BI audit
- [ ] log ตอบคำถามพื้นฐานได้: who, did what, resource, when, result
- [ ] ไม่เก็บข้อมูล sensitive ลง log เกินจำเป็น
- [ ] มีคนรับผิดชอบ review log เมื่อมี incident หรือ policy change
- [ ] failure path แจ้ง owner และบอก action ถัดไป ไม่ใช่แจ้งแค่ว่า error

## 7. Incident Ready

- [ ] ถ้า token/key หลุด รู้ขั้นตอน revoke, rotate และแจ้ง owner
- [ ] ถ้าข้อมูลรั่ว รู้ว่าต้องเก็บ timeline และหลักฐานจาก log ไหน
- [ ] มี contact path ของ platform admin, security owner หรือ data owner
- [ ] มี checked date และ reviewer name ในเอกสารหรือ ticket
- [ ] หลังแก้ incident แล้วมี post-review ว่าต้องปรับ DLP, permission, owner หรือ checklist จุดไหน

