비밀번호 없는 로그인
Potato에서 비밀번호 없이 사용자 이름만으로 로그인하도록 설정합니다. 수업 데모, 빠른 연구, 외부 크라우드소싱 플랫폼 인증을 사용하는 작업에 적합합니다.
Potato는 접근의 편의성이 보안보다 더 중요한 저위험 주석 작업을 위해 비밀번호 없는 인증을 지원합니다. 이를 통해 주석자는 비밀번호 없이 사용자 이름만으로 로그인할 수 있습니다.
개요
비밀번호 없는 로그인은 다음과 같은 경우에 유용합니다.
- 자원자와 함께 빠른 주석 연구를 진행할 때
- 내부 팀 주석 세션을 운영할 때
- 주석 구성을 테스트할 때
- 인증을 외부에서 처리하는 크라우드소싱 플랫폼과 작업할 때
- 수업 실습이나 데모를 진행할 때
구성
require_password: false로 설정하여 비밀번호 없는 로그인을 활성화합니다.
yaml
require_password: false
# Optional: Specify authentication method
authentication:
method: in_memory # Default인증 방식
Potato는 세 가지 인증 백엔드를 지원하며, 모두 비밀번호 없는 모드와 호환됩니다.
인메모리 (기본값)
사용자는 메모리에만 저장됩니다. 서버가 재시작되면 데이터가 손실됩니다.
yaml
require_password: false
authentication:
method: in_memory데이터베이스
사용자가 데이터베이스에 영구 저장됩니다.
bash
export POTATO_DB_CONNECTION="sqlite:///users.db"yaml
require_password: false
authentication:
method: databaseClerk SSO
엔터프라이즈 싱글 사인온을 위한 Clerk 연동입니다.
bash
export CLERK_API_KEY="your_api_key"
export CLERK_FRONTEND_API="your_frontend_api"yaml
authentication:
method: clerk작동 방식
비밀번호 없는 로그인을 활성화한 경우
- 사용자가 로그인 페이지를 방문합니다
- 사용자가 사용자 이름만 입력합니다
- 시스템이 비밀번호 확인 없이 사용자를 생성하거나 인증합니다
- 사용자가 주석 작업으로 진행합니다
사용자 등록
비밀번호 없는 모드에서는:
- 새 사용자가 첫 로그인 시 자동으로 등록됩니다
- 사용자 이름만 필요합니다
- 추가 사용자 데이터(구성된 경우)는 여전히 수집됩니다
보안 고려 사항
비밀번호 없는 모드는 최소한의 보안만 제공합니다.
- 신원 확인 없음: 누구나 어떤 사용자 이름이든 사용할 수 있습니다
- 세션 가로채기: 세션을 쉽게 사칭할 수 있습니다
- 감사 추적 무결성 없음: 사용자 행위를 암호학적으로 검증할 수 없습니다
권장 용도:
- 내부 팀 주석
- 수업 실습
- 빠른 프로토타이핑
- 외부 인증을 갖춘 플랫폼 (Prolific, MTurk)
권장하지 않는 경우:
- 민감한 데이터 주석
- 의료 또는 법률 주석 작업
- 검증된 주석자 신원이 필요한 작업
- 보상이 따르는 장기 연구
사용자 구성 파일
비밀번호 없는 모드에서도 사용자를 미리 등록할 수 있습니다.
yaml
authentication:
user_config_path: users.jsonlusers.jsonl:
json
{"username": "annotator1"}
{"username": "annotator2"}
{"username": "admin", "role": "admin"}마이그레이션
비밀번호 필수에서 비밀번호 없음으로
- 구성을 업데이트합니다:
yaml
require_password: false - 기존 사용자는 비밀번호 사용 여부와 관계없이 계속 로그인할 수 있습니다
비밀번호 없음에서 비밀번호 필수로
- 구성을 업데이트합니다:
yaml
require_password: true - 기존의 비밀번호 없는 사용자는 비밀번호를 등록해야 합니다
전체 예시
yaml
annotation_task_name: "Quick Annotation Task"
# Enable passwordless login for easy access
require_password: false
# Use database backend to persist users
authentication:
method: database
# Task configuration
data_files:
- data/instances.json
item_properties:
id_key: id
text_key: text
annotation_schemes:
- name: sentiment
annotation_type: radio
labels: [Positive, Negative, Neutral]
description: "Select the sentiment"문제 해결
사용자가 로그인할 수 없는 경우
다음을 확인하십시오.
- 구성에
require_password: false가 설정되어 있는지 - 인증 백엔드가 올바르게 초기화되었는지
- 충돌하는 인증 설정이 없는지
사용자 데이터가 유지되지 않는 경우
in_memory 백엔드를 사용하는 경우:
- 서버 재시작 시 사용자 데이터가 손실됩니다
- 데이터를 유지하려면
database백엔드로 전환하십시오
중복 사용자 이름 오류
비밀번호 없는 모드에서는, 기존 사용자 이름으로 등록을 시도하는 사용자가 단순히 해당 사용자로 로그인됩니다. 이는 사용 편의를 위한 의도된 동작입니다.
더 읽어보기
구현 세부 정보는 소스 문서를 참조하십시오.