ไทย
ไทย
Appearance
ไทย
ไทย
Appearance
พอร์ทัลผู้รับคือพื้นที่บริการตนเองที่ badges.ninja/me ซึ่งใครก็ตามที่ได้รับเหรียญตราสามารถเข้าสู่ระบบ (ไม่ต้องมีบัญชี) เรียกดูคุณวุฒิทุกอย่างที่พวกเขาได้รับผ่าน badges.ninja และดูแลโปรไฟล์สาธารณะเพื่อแชร์
เป็นประสบการณ์ที่แยกต่างหากจากแดชบอร์ดของผู้ออก:
| ผู้ใช้ | URL | การยืนยันตัวตน |
|---|---|---|
| ผู้ออก (คนที่มอบรางวัลเหรียญตรา) | /dashboard | บัญชีจริง (อีเมล + รหัสผ่าน / SSO) |
| ผู้รับ (คนที่ได้รับเหรียญตรา) | /me | ลิงก์มหัศจรรย์ผ่านอีเมล — ไม่มีบัญชี ไม่มีรหัสผ่าน |
| ใครก็ได้ (ผู้ตรวจสอบ) | /awards/<guid>, /verify/<guid>, /u/<handle> | ไม่มี — สาธารณะเต็มรูปแบบ |
ทำไมไม่มีรหัสผ่าน
ผู้รับไม่ควรต้องจดจำการเข้าสู่ระบบอีกอันเพียงเพื่อดูเหรียญตราที่พวกเขาได้รับ เราส่งลิงก์ใช้ครั้งเดียวให้พวกเขาแทน
ไปที่ badges.ninja/me หน้าแสดงฟิลด์อีเมลเดียว:

กรอกที่อยู่อีเมลที่ได้รับเหรียญตราและคลิก ส่งลิงก์เข้าสู่ระบบให้ฉัน
เราตอบกลับด้วยข้อความ "ตรวจสอบกล่องจดหมายของคุณ" โดยไม่คำนึงถึงว่ามีรางวัลใดๆ สำหรับที่อยู่นั้นหรือไม่ ซึ่งหลีกเลี่ยงการรั่วไหลว่าอีเมลที่กำหนดเคยได้รับเหรียญตราจากผู้ออกใดๆ บนแพลตฟอร์มหรือไม่
หากมีรางวัลสำหรับที่อยู่นั้น คุณจะได้รับอีเมลชื่อ "Sign in to your Badges Ninja portal" พร้อมปุ่มเดียว:
เปิดพอร์ทัลของฉัน
ลิงก์มีอายุ 24 ชั่วโมง และใช้ได้เพียงครั้งเดียว หากหมดอายุก่อนที่คุณจะคลิก เพียงขอใหม่ — ไม่มีโทษปรับ
การคลิกลิงก์จะเปิด badges.ninja/me?token=… หน้าจะแลกเปลี่ยนโทเคนเป็นโทเคนเซสชัน 1 ชั่วโมง (เก็บเฉพาะใน sessionStorage ของเบราว์เซอร์ของคุณ ไม่เคยอยู่ในคุกกี้) และเปลี่ยนเส้นทางคุณไปยังกำแพงเหรียญตรา เซสชันจะหมดอายุเมื่อคุณปิดแท็บหรือหลังจากหนึ่งชั่วโมงของกิจกรรม แล้วแต่ว่าอันใดมาก่อน
เมื่อเข้าสู่ระบบแล้ว พอร์ทัลแสดง:
badges.ninja/u/jane-3a4f) — แนะนำอัตโนมัติจากส่วนต้นของอีเมลพร้อมอักขระสุ่ม 4 ตัวต่อท้ายเพื่อความไม่ซ้ำกัน คลิก เปลี่ยน เพื่อเลือกชื่อที่สวยกว่า/u/<handle>) หรือไม่ รางวัลเองยังคงใช้ได้ คุณเพียงดูแลสิ่งที่แสดงรายการสาธารณะ
รางวัลโหลด 50 รายการในแต่ละครั้ง หากคุณมีมากกว่านั้น ปุ่ม โหลดเพิ่ม จะปรากฏที่ด้านล่าง เราแบ่งหน้าโดยเคอร์เซอร์ที่เสถียรในแบ็กเอนด์ ดังนั้นลำดับจึงไม่เปลี่ยนแปลงขณะคุณเลื่อน
ปุ่ม ออกจากระบบ ในส่วนหัวจะล้างโทเคนเซสชันออกจาก sessionStorage การปิดแท็บก็ทำสิ่งเดียวกันโดยอัตโนมัติ
เมื่อคุณมี handle แล้ว ใครก็ตามที่เยี่ยมชม badges.ninja/u/<handle> จะเห็นตารางสะอาดของเหรียญตราของคุณ พร้อมชื่อแสดงและจำนวนเหรียญตรา รวมทั้งการ์ดต่อเหรียญตราที่เปิดหน้ารางวัลสาธารณะเมื่อคลิก

โปรไฟล์สาธารณะแสดงเฉพาะเหรียญตราที่คุณยังไม่ได้ซ่อน คุณไม่จำเป็นต้องเข้าสู่ระบบเพื่อแชร์ URL /u/<handle> ของคุณ — เป็นหน้าสาธารณะอย่างเต็มที่ที่คุณเป็นเจ้าของ
handle ต้องมีความยาว 3–20 อักขระ เฉพาะ a-z 0-9 _ - พวกเขาไม่คำนึงถึงตัวพิมพ์และไม่ซ้ำกันทั่วโลกบน badges.ninja หาก handle ที่คุณต้องการถูกใช้แล้ว คุณจะได้รับข้อผิดพลาดที่ชัดเจนและสามารถเลือกอย่างอื่นได้
คุณสามารถเปลี่ยน handle ของคุณได้ตลอดเวลาจากพอร์ทัล — handle ใหม่จะกลายเป็น URL ที่เป็นทางการทันที และ handle เก่าจะพร้อมให้คนอื่นเรียกร้อง ลิงก์แชร์ที่คุณส่งไปแล้ว (/u/old-handle) จะไม่เปลี่ยนเส้นทาง — พวกมันจะบอก "ไม่พบโปรไฟล์"
ที่ด้านล่างของพอร์ทัลมีลิงก์ ลบข้อมูลของฉันออกจาก Badges Ninja มันทำดังนี้:
removed:5f3a8b9c…) รางวัลเองยังคงสมบูรณ์ (assertion JSON, รูปภาพเหรียญตรา, หลักฐานบล็อกเชนหากมี) ดังนั้นคุณจะไม่ทำให้คุณวุฒิเป็นโมฆะ — ผู้ออกยังคงถือเหรียญตราของคุณ — แต่คุณจะกลายเป็น ค้นหาไม่พบ: การค้นหาอีเมลของคุณในพอร์ทัลใดๆ ไม่ให้ผลลัพธ์ และการเข้าสู่ระบบ /me หยุดค้นหารางวัล/u/<handle> จะส่งคืน 404 และ handle จะพร้อมให้คนอื่นนี่ไม่สามารถยกเลิกได้ คุณจะต้องการเซสชันพอร์ทัลใหม่ (เช่น ลิงก์มหัศจรรย์ใหม่) เฉพาะเมื่อคุณเปลี่ยนใจก่อนที่การล้างข้อมูลจะเสร็จสมบูรณ์
สิ่งที่นี่ไม่ทำ
/awards/<guid>) ยังคงใช้ได้สำหรับวัตถุประสงค์การตรวจสอบ — นั่นคือข้อกำหนดสองความเป็นไปได้:
/awards/<guid> โดยตรงยังไม่ได้ พอร์ทัลปัจจุบันแสดงเฉพาะเหรียญตราที่ออกผ่าน badges.ninja การรวบรวมข้ามผู้ออก (โมเดล "Open Badges Backpack") เป็นเป้าหมายสำคัญของ Open Badges ในต้นทศวรรษ 2010 แต่ระบบนิเวศที่กว้างขึ้นได้ย้ายไปยัง LinkedIn เป็นผู้รวบรวมพฤตินัย เราไม่มีแผนที่จะแข่งขันบนพื้นผิวนั้น
ได้ — ทุกหน้ารางวัลสาธารณะ (/awards/<guid>) มีปุ่ม เพิ่มไปยังโปรไฟล์ LinkedIn เมื่อผู้ออกได้ตั้งค่า LinkedIn organization ID ปุ่มใช้ deep link Add-to-Profile ของ LinkedIn ดังนั้นเหรียญตราจะลงในส่วน Certifications ของคุณโดยตรงโดยไม่ต้องคัดลอก-วางด้วยตนเอง
หน้ารางวัลแต่ละหน้าติดตามการดู การแชร์ การดาวน์โหลด และการคลิกเพิ่ม LinkedIn ผู้ออกเห็นตัวเลขเหล่านี้บนแดชบอร์ดของพวกเขา ผู้รับเห็นพวกเขาบนหน้ารางวัลสาธารณะ ตามแบบแผนของ Credly ตัวตนของผู้ดูจะไม่ถูกบันทึก — เฉพาะตัวเลข
24 ชั่วโมง หลังจากนั้น ขอใหม่ — ไม่มีการจำกัดอัตรา ไม่มีโทษปรับ
1 ชั่วโมงนับจากการเข้าสู่ระบบ การรีเฟรชหน้าภายในหน้าต่างนั้นจะรักษาเซสชันให้คงอยู่ การปิดแท็บจะสิ้นสุด
ไม่ได้ เหรียญตราที่ซ่อนถูกกรองออกจากมุมมองสาธารณะ /u/<handle> พวกมันมองเห็นได้เฉพาะคุณขณะเข้าสู่ระบบในพอร์ทัล
ได้ — เปิดเหรียญตราใดๆ จากพอร์ทัล จากนั้นใช้ปุ่ม ดาวน์โหลด PNG (Open Badges baked) หรือ ดาวน์โหลดใบประกาศ PDF บนหน้ารางวัลสาธารณะ ทั้งสองถูกลงนามและตรวจสอบได้ผ่านข้อกำหนด Open Badges v2
ผู้รับที่เข้าถึงพอร์ทัลไม่เปลี่ยนแปลงสิ่งใดสำหรับผู้ออก — ตารางรางวัลบนแดชบอร์ดของผู้ออกทำงานเหมือนเดิมทุกประการ พอร์ทัลเป็นการเพิ่มเติมล้วนๆ
หากคุณเป็นผู้ออกที่อ่านข้อความนี้และยังไม่ได้ตั้งค่า LinkedIn organization ID ทำตอนนี้: การจัดการผู้ออก → เพิ่มไปยังโปรไฟล์ LinkedIn เป็นคันโยก "อัตราการแชร์" ที่ใหญ่ที่สุดบนแพลตฟอร์ม
{ kind: "magic", email, exp } ลงนามด้วยความลับฝั่งเซิร์ฟเวอร์ที่หมุนเวียนผ่าน AWS Secrets Manager (recipient/keys:tokenSecret) เมื่อยืนยัน เราสร้างโทเคน { kind: "session", email, exp } ไม่มีตารางเซสชันที่หนุนหลังด้วย DBRECIPIENT_EMAIL_LC-TIMESTAMP บนตารางรางวัล อีเมลถูกทำให้เป็นมาตรฐานเป็นตัวพิมพ์เล็กก่อนการจัดเก็บและการค้นหาEMAIL_LC ดังนั้น /u/<handle> สามารถแสดงรายการรางวัลโดยที่ผู้รับไม่ต้องเข้าสู่ระบบ รางวัลที่ซ่อนถูกกรองในฝั่งเซิร์ฟเวอร์RECIPIENT_EMAIL_LC ของแถวรางวัลที่ตรงกันทุกแถวให้เป็น removed:<random> และนำคุณสมบัติข้อความธรรมดา RECIPIENT_EMAIL ออกผ่าน DynamoDB UPDATE แถวโปรไฟล์ถูกลบPOST /me/auth/request { email } — ส่งอีเมลลิงก์มหัศจรรย์POST /me/auth/verify { token } — คืนโทเคนเซสชันGET /me — โปรไฟล์ + หน้ารางวัลแรก (Bearer)GET /me/awards?lastEvaluatedKey=… — แบ่งหน้า (Bearer)PUT /me/handle { handle } — ตั้ง/เปลี่ยน handle (Bearer)PUT /me/awards/{guid}/visibility { hidden: bool } — สลับการซ่อน (Bearer)POST /me/auth/forget — ปลดผูก GDPR (Bearer)GET /u/{handle} — โปรไฟล์สาธารณะ (ไม่มีการยืนยันตัวตน)