Skip to content

수령자 포털

수령자 포털은 badges.ninja/me 에 있는 셀프서비스 영역으로, 배지를 수여받은 누구나 계정 없이 로그인해 badges.ninja를 통해 받은 모든 자격 증명을 열람하고, 공유용 공개 프로필을 꾸밀 수 있습니다.

발급자 대시보드와는 별개의 경험입니다.

대상URL인증
발급자(배지를 수여하는 사람)/dashboard실제 계정(이메일 + 비밀번호 / SSO)
수령자(배지를 획득하는 사람)/me이메일로 전달되는 매직 링크 — 계정도 비밀번호도 없음
누구나(검증자)/awards/<guid>, /verify/<guid>, /u/<handle>없음 — 완전 공개

왜 비밀번호가 없나요?

수령자가 받은 배지를 보기 위해 또 하나의 로그인 정보를 기억할 필요는 없어야 합니다. 대신 우리는 일회용 링크를 이메일로 보냅니다.

수령자가 로그인하는 방법

1. 이메일 입력

badges.ninja/me 를 방문합니다. 페이지에 이메일 입력란 하나만 표시됩니다.

수령자 포털 로그인 폼

배지를 받은 이메일 주소를 입력하고 로그인 링크 보내기 를 클릭합니다.

해당 주소에 수여가 있든 없든 "받은 편지함을 확인하세요"라는 응답을 돌려줍니다. 이로써 특정 이메일이 플랫폼의 어떤 발급자로부터 배지를 받은 적 있는지를 유출하지 않습니다.

2. 매직 링크 열기

해당 주소에 수여가 있다면 "Badges Ninja 포털에 로그인하세요" 라는 제목의 이메일이 도착합니다. 버튼은 하나뿐입니다.

내 포털 열기

링크는 24시간 유효하며 한 번만 작동합니다. 클릭하기 전에 만료되면 새로 요청하세요 — 벌칙 없음.

3. 로그인 완료

링크를 클릭하면 badges.ninja/me?token=… 이 열립니다. 페이지는 토큰을 1시간짜리 세션 토큰으로 교환하고(브라우저의 sessionStorage 에만 저장, 쿠키에는 절대 저장하지 않음) 배지 월로 리디렉션합니다. 세션은 탭을 닫거나 1시간의 활동이 지나면 — 둘 중 먼저 오는 쪽으로 — 만료됩니다.

배지 월

로그인하면 포털에는 다음이 표시됩니다.

  • 상단에 당신의 핸들(예: badges.ninja/u/jane-3a4f) — 이메일의 로컬 부분에서 자동으로 제안되며, 유일성을 위해 4개의 랜덤 문자가 덧붙습니다. 변경 을 클릭해 더 나은 것을 고르세요.
  • badges.ninja를 통해 당신의 이메일로 발급된 모든 배지의 그리드, 가장 최근 순, 카드로 시각적으로 묶여 있습니다.
  • 카드별 작업:
    • 열기 — 공개 수여 페이지(발급자/검증자가 보는 동일한 페이지)로 이동.
    • 프로필에서 숨기기 / 프로필에 표시 — 이 배지가 공개 프로필(/u/<handle>)에 나타날지 전환. 수여 자체는 유효하게 남고, 공개적으로 나열되는 항목만 큐레이션합니다.

수령자 포털 배지 월

페이지네이션

수여는 한 번에 50개씩 로드됩니다. 더 많다면 하단에 더 보기 버튼이 나타납니다. 백엔드에서 안정적인 커서로 페이지네이션하므로 스크롤 중에도 순서가 흔들리지 않습니다.

로그아웃

헤더의 로그아웃 버튼은 sessionStorage 에서 세션 토큰을 지웁니다. 탭을 닫으면 자동으로 동일한 동작이 수행됩니다.

당신의 공개 프로필

핸들이 있으면 badges.ninja/u/<handle> 을 방문하는 누구나 당신의 표시 이름, 배지 수, 그리고 클릭 시 공개 수여 페이지를 여는 배지별 카드가 포함된 깔끔한 그리드를 보게 됩니다.

수령자 공개 프로필

공개 프로필에는 숨기지 않은 배지만 표시됩니다. /u/<handle> URL을 공유하는 데 로그인은 필요 없습니다 — 당신 소유의 완전 공개 페이지입니다.

핸들 선택

핸들은 3–20자, a-z 0-9 _ - 만 허용됩니다. 대소문자를 구분하지 않으며 badges.ninja에서 전역 고유합니다. 원하는 핸들이 사용 중이면 명확한 오류가 표시되고 다른 것을 고를 수 있습니다.

포털에서 언제든 핸들을 변경할 수 있습니다 — 새 핸들이 즉시 표준 URL이 되고, 이전 핸들은 다른 사람이 가져갈 수 있게 됩니다. 당신이 이전에 보낸 기존 공유 링크(/u/예전-handle)는 리디렉션하지 않고, 단지 "프로필을 찾을 수 없음" 이라고 표시됩니다.

데이터 삭제(GDPR)

포털 하단에 Badges Ninja에서 내 데이터 제거 링크가 있습니다. 이 기능은 다음을 수행합니다.

  1. 당신이 받은 모든 수여에서 이메일을 불투명한 해시(예: removed:5f3a8b9c…)로 교체합니다. 수여 자체(어서션 JSON, 배지 이미지, 있을 경우 블록체인 증명)는 그대로 유지되어 자격을 무효화하지 않습니다 — 발급자는 여전히 당신의 배지를 보유합니다 — 하지만 당신은 검색 불가 가 됩니다: 어떤 포털에서든 당신의 이메일을 검색하면 결과가 없고, /me 로그인도 수여를 찾지 못합니다.
  2. 프로필 행을 삭제 하여 /u/<handle> 은 404를 반환하고 해당 핸들은 다른 사람에게 개방됩니다.

이 작업은 되돌릴 수 없습니다. 정리가 완료되기 전 마음이 바뀔 때만 새 포털 세션(즉, 새 매직 링크)이 필요합니다.

이 작업이 하지 않는 것

  • 수여를 삭제하지 않습니다. 당신에게 수여한 발급자는 여전히 기록을 보관합니다. Open Badges v2 어서션(/awards/<guid> 의 JSON 파일)은 검증 목적으로 여전히 유효합니다 — 명세가 그렇습니다.
  • 발급자가 수여 자체를 삭제하길 원한다면(단순히 이메일 연결을 해제하는 것이 아니라) 발급자에게 직접 연락하세요.

자주 묻는 질문

친구는 배지를 받았다고 하는데 표시되지 않아요

두 가지 가능성:

  1. 발급자가 다른 이메일을 썼습니다. 많은 발급자가 회사 이메일로 수여합니다. 그 이메일로도 로그인해 보세요.
  2. 수여가 수령자 포털 기능보다 이전에 이뤄졌습니다. 이메일이 설정된 수여는 백필하지만, 매우 오래된 수여는 수령자 이메일 없이 발급되었을 수 있습니다(플랫폼의 과거 수여 중 약 99%). 이들은 직접 /awards/<guid> URL 로만 볼 수 있습니다.

Credly / Accredible / 다른 플랫폼에서 배지를 가져올 수 있나요?

아직은 아닙니다. 포털은 현재 badges.ninja를 통해 발급된 배지만 표시합니다. 발급자 간 집계("Open Badges Backpack" 모델)는 2010년대 초 Open Badges의 주요 목표였지만, 생태계는 사실상 LinkedIn을 집계자로 삼아 이동했습니다. 우리는 그 영역에서 경쟁할 계획이 없습니다.

배지를 LinkedIn 프로필에 추가할 수 있나요?

네 — 발급자가 LinkedIn 조직 ID를 설정했을 때 모든 공개 수여 페이지(/awards/<guid>)에는 LinkedIn 프로필에 추가 버튼이 있습니다. 이 버튼은 LinkedIn의 Add-to-Profile 딥링크를 사용하므로, 수동 복사·붙여넣기 없이 인증 섹션으로 바로 들어갑니다.

제 조회수는 제가 볼 수 있나요?

각 수여 페이지는 조회수, 공유수, 다운로드수, LinkedIn 추가 클릭수를 추적합니다. 발급자는 자신의 대시보드에서, 수령자는 공개 수여 페이지에서 이 수치를 봅니다. Credly 관례에 따라 방문자 신원은 결코 기록되지 않습니다 — 카운트만.

매직 링크는 얼마나 유지되나요?

24시간. 이후에는 새로 요청하세요 — 속도 제한도, 벌칙도 없습니다.

세션은 얼마나 유지되나요?

로그인 후 1시간. 이 시간 안에 페이지를 새로고침하면 세션이 유지되고, 탭을 닫으면 종료됩니다.

다른 사람이 제가 숨긴 배지를 볼 수 있나요?

아니요. 숨긴 배지는 공개 /u/<handle> 뷰에서 제외됩니다. 포털에 로그인한 동안에만 당신에게 보입니다.

배지를 다운로드할 수 있나요?

네 — 포털에서 아무 배지나 열고, 공개 수여 페이지의 PNG 다운로드(Open Badges baked) 또는 PDF 인증서 다운로드 버튼을 사용하세요. 둘 다 서명되어 있으며 Open Badges v2 명세로 검증 가능합니다.

발급자에게는 어떻게 보이나요?

수령자가 포털에 접속해도 발급자에게는 아무런 변화가 없습니다 — 발급자 대시보드의 수여 테이블은 완전히 동일하게 작동합니다. 포털은 순수한 추가 기능입니다.

이 글을 읽는 발급자이고 아직 LinkedIn 조직 ID를 설정하지 않았다면 지금 바로 하세요: 발급자 관리 → LinkedIn 추가. 플랫폼에서 가장 큰 "공유율" 레버입니다.

기술 세부사항(궁금한 분들을 위해)

플랫폼 통합자 / Open Badges 마니아용
  • 인증 모델: 무상태 HMAC 토큰. 매직 링크 페이로드는 { kind: "magic", email, exp } 이며 AWS Secrets Manager(recipient/keys:tokenSecret)로 로테이션되는 서버 측 시크릿으로 서명됩니다. 검증 시 { kind: "session", email, exp } 토큰을 발급합니다. DB 기반 세션 테이블이 없습니다.
  • 이메일 조회: 수여 테이블의 RECIPIENT_EMAIL_LC-TIMESTAMP GSI 를 조회합니다. 이메일은 저장과 조회 전에 소문자로 정규화됩니다.
  • 공개 프로필: 각 프로필 행에 EMAIL_LC 가 저장되어 수령자가 로그인하지 않아도 /u/<handle> 이 수여를 나열할 수 있습니다. 숨긴 수여는 서버 측에서 필터링됩니다.
  • GDPR 잊기: 일치하는 각 수여 행의 RECIPIENT_EMAIL_LCremoved:<random> 로 다시 쓰고, DynamoDB UPDATE 로 평문 RECIPIENT_EMAIL 속성을 제거합니다. 프로필 행은 삭제됩니다.
  • 엔드포인트 (Cognito 없음; 매직 링크 인증):
    • POST /me/auth/request { email } — 매직 링크 이메일 발송
    • POST /me/auth/verify { token } — 세션 토큰 반환
    • GET /me — 프로필 + 수여 첫 페이지(Bearer)
    • GET /me/awards?lastEvaluatedKey=… — 페이지네이션(Bearer)
    • PUT /me/handle { handle } — 핸들 설정/변경(Bearer)
    • PUT /me/awards/{guid}/visibility { hidden: bool } — 숨김 토글(Bearer)
    • POST /me/auth/forget — GDPR 연결 해제(Bearer)
    • GET /u/{handle} — 공개 프로필(인증 불필요)

badges.ninja Documentation