Fish Shell:
การส่งคำขอ HTTP พร้อมการรับรองความถูกต้องแบบพื้นฐาน
วิธีการ:
ใน Fish Shell, ใช้ curl
เพื่อทำคำขอ HTTP พร้อมตรวจสอบสิทธิพื้นฐาน เปลี่ยน username
, password
, และ the_url
:
set -x AUTH (echo -n "username:password" | base64)
curl -H "Authorization: Basic $AUTH" the_url
หรือ, ให้ curl
จัดการการเข้ารหัส:
curl -u username:password the_url
ตัวอย่างผลลัพธ์อาจดูเช่นนี้:
HTTP/1.1 200 OK
Content-Type: application/json
{
"message": "การตรวจสอบสิทธิ์สำเร็จ."
}
การดำน้ำลึก
การตรวจสอบสิทธิพื้นฐาน (basic authentication) เป็นส่วนหนึ่งของโปรโตคอล HTTP, มีมาตั้งแต่ต้นยุค 90 แม้จะใช้งานง่าย แต่มันไม่ค่อยปลอดภัยเนื่องจากรหัสผ่านถูกเข้ารหัสด้วย base64 เท่านั้น ไม่ได้เข้ารหัสแบบเต็มรูปแบบ HTTPS ช่วยได้บ้าง แต่ไม่ใช่วิธีที่สมบูรณ์แบบ
ทางเลือกอื่น ๆ รวมถึง OAuth, ซึ่งใช้โทเค็นแทนข้อมูลประจำตัว, เพิ่มชั้นความปลอดภัย สำหรับความปลอดภัยเพิ่มเติม, พิจารณาใช้ API key หรือ JWT (JSON Web Tokens)
ด้วย Fish Shell, เรากำลังใช้ curl
, เครื่องมือที่ทรงพลังซึ่งรองรับโปรโตคอลและวิธีการพิสูจน์ตัวตนที่หลากหลาย ตัวเลือก -u
สะดวก แต่ควรหลีกเลี่ยงการแข็งรหัสลับเอาไว้; แทนที่จะใช้ตัวแปรแวดล้อมหรือไฟล์คอนฟิกพร้อมสิทธิ์การเข้าถึงที่เหมาะสม
ดูเพิ่มเติม:
- เอกสาร cURL: https://curl.se/docs/httpscripting.html
- RFC ของ HTTP Basic Auth: https://tools.ietf.org/html/rfc7617
- เอกสาร Fish Shell: https://fishshell.com/docs/current/index.html
- การเข้าใจ JWT: https://jwt.io/introduction/