가이드

웹사이트나 웹 앱에 비밀번호 거는 방법

바로 답하면

호스팅의 비밀번호 기능을 켜세요. Vercel Pro의 Password Protection(프로젝트당 월 $20)이나 Netlify Pro, 사이트 앞에 두는 Cloudflare Access 정책, 직접 운영하는 서버의 HTTP 기본 인증이 있어요. 비밀번호는 사이트 자체 코드가 아니라 호스팅에서 확인해야 해요.

고객에게 초안을 보여 주는 정도라면 공유 비밀번호로 충분해요. 동료들이 매일 쓰는 툴이라면 회사 로그인이 더 잘 맞아요. 아래에 호스팅별 단계와 두 방식의 차이를 정리했어요.

마지막 업데이트 TeamOnly가 썼어요. 저희는 회사 로그인이 들어간 호스팅을 만들기 때문에, 아래 가격과 단계는 모두 각 업체 자체 페이지로 링크했어요.

01호스팅별

어디서 비밀번호를 걸 수 있고, 비용은 얼마인가요?

흔히 쓰는 호스팅은 모두 할 수 있어요. 차이는 필요한 요금제, 그리고 방문자가 공유 비밀번호 하나를 입력하는지 각자 로그인하는지예요.

흔히 쓰는 호스팅의 비밀번호 보호, 2026년 10월 25일 확인
호스팅작동 방식필요한 요금제비용
VercelPassword Protection: 프로젝트마다 비밀번호 하나Pro 또는 Enterprise. Hobby에서는 안 됨Pro에서 보호하는 프로젝트당 월 $20, Pro 요금 별도
Netlify사이트 전체 비밀번호, 또는 _headers 파일의 기본 인증Pro 또는 Enterprise. Free, Personal에서는 안 됨Pro는 월 $20, 멤버 수 제한 없음
Cloudflare Access각 사람이 이메일로 일회용 PIN을 받거나, 회사 ID 공급자로 로그인도메인이 Cloudflare에 있어야 함50명까지 무료, 그 뒤 사용자당 월 $7, 연 단위 결제
Cloudflare WorkerWorker에 직접 작성한 HTTP 기본 인증모든 Workers 요금제하루 100,000건 요청까지 무료. 유료는 월 $5부터
직접 운영하는 서버nginx 또는 Apache의 HTTP 기본 인증없음이미 운영 중인 서버라면 무료

2026년 10월 25일 확인. 출처: Vercel Password Protection, Vercel Deployment Protection, Vercel changelog, 2026년 9월 9일, Vercel pricing, Netlify password protection, Netlify basic authentication, Netlify pricing, Cloudflare Access plans, Cloudflare one-time PIN, Cloudflare self-hosted applications, Cloudflare Workers basic auth example, Workers pricing, nginx basic authentication, Apache authentication.

02단계별로

호스팅별로 켜는 방법

사이트가 올라가 있는 호스팅을 고르세요. 어느 쪽이든 몇 분이면 돼요.

Vercel

  1. Vercel 대시보드에서 프로젝트를 열고 Settings, Deployment Protection으로 가세요.
  2. Password Protection에서 토글을 켜세요.
  3. 보호할 범위를 고르세요. Standard Protection은 프로덕션 도메인을 열어 두기 때문에, 메인 주소까지 막으려면 All Deployments를 고르세요.
  4. 비밀번호를 입력하고 Save를 누르세요. 방문자는 배포마다 한 번 입력하고, 쿠키가 기억해요.

비용 Pro 요금제만: 보호하는 프로젝트마다 월 $20. Enterprise에는 포함, Hobby에서는 쓸 수 없어요.

모든 요금제의 무료 선택지는 Vercel Authentication이고, 이제 프로덕션도 보호해요. 방문자는 그 프로젝트에 접근할 수 있는 Vercel 계정으로 로그인하기 때문에, 동료마다 계정이 하나씩 필요해요.

Netlify

  1. 사이트를 열고 Project configuration, General, Visitor access, Password Protection으로 가세요.
  2. Configure Password Protection, Basic password protection을 차례로 누르고 비밀번호를 입력하세요.
  3. 미리보기뿐 아니라 운영 중인 사이트도 막히도록 All deploys를 고르고, Save를 누르세요.
  4. 크레딧 기반의 새 Pro 요금제에서는 같은 설정이 Visitor access, Project visibility에 있어요. Password를 고르세요.
/*  Basic-Auth: dana:a-long-password sam:another-long-password

비용 Pro 요금제(월 $20, 멤버 수 제한 없음) 또는 Enterprise. Free, Personal에서는 쓸 수 없어요.

사이트 일부에 사용자 이름과 비밀번호를 걸려면, Pro와 Enterprise에서는 아래처럼 _headers 파일에 Basic-Auth 규칙을 넣을 수도 있어요. Netlify는 기본 인증에 로그아웃 방법이 없다고 안내해요.

Cloudflare Access

  1. 도메인이 Cloudflare에 있어야 해요. 대시보드에서 Zero Trust, Integrations, Identity providers로 가서 One-time PIN을 추가하세요.
  2. Access controls, Applications로 가서 Create new application, Self-hosted and private를 차례로 누르고, 사이트의 호스트 이름을 추가하세요.
  3. Allow 정책을 추가하세요. 회사 전체라면 Emails ending in에 @yourcompany.com을, 특정 사람이라면 Emails를 쓰세요. 그 외 모든 사람은 Access가 기본으로 막아요.
  4. Create를 누르세요. 방문자는 이메일을 입력하고, 10분 동안 한 번만 쓸 수 있는 PIN을 받아 들어와요.

비용 사용자 50명까지 무료, 그 뒤 사용자당 월 $7, 연 단위 결제.

이건 공유 비밀번호가 아니에요. 각 사람이 자기 메일함을 읽을 수 있다는 걸 증명하기 때문에, 한 사람씩 확인하고 뺄 수 있어요.

기본 인증을 넣은 Cloudflare Worker

  1. Cloudflare의 Workers용 기본 인증 예제에서 시작하세요. 브라우저에 사용자 이름과 비밀번호를 요청하고, 응답 시간으로 비밀번호가 새지 않는 방식으로 비교해요.
  2. 비밀번호는 코드에 넣지 말고, 아래 명령어로 시크릿에 저장하세요.
  3. HTTPS로만 제공하세요. 그렇지 않으면 기본 인증은 비밀번호를 암호화하지 않고 보내요.
npx wrangler secret put PASSWORD

비용 Workers Free는 하루 100,000건 요청까지예요. Workers Paid는 월 $5부터예요.

Cloudflare는 이 예제가 프로덕션용으로 적합하지 않다고 표시하고, 대신 Cloudflare Access를 권해요.

직접 운영하는 서버

  1. htpasswd 툴을 설치하고(Debian, Ubuntu는 apache2-utils 패키지, Red Hat은 httpd-tools), 한 사람당 한 줄씩 비밀번호 파일을 만드세요.
  2. nginx에서는 아래처럼 사이트에 auth_basic과 auth_basic_user_file을 추가하세요. Apache에서는 AuthType Basic, AuthUserFile, Require valid-user를 쓰세요.
  3. 비밀번호 파일은 웹 폴더 밖에 두고, HTTPS를 쓰세요. Apache 문서는 기본 인증이 비밀번호를 암호화하지 않고 보낸다고 경고해요.
sudo htpasswd -c /etc/apache2/.htpasswd dana

# nginx
location / {
    auth_basic           "Staff only";
    auth_basic_user_file /etc/apache2/.htpasswd;
}

비용 이미 운영 중인 서버라면 무료예요.

기본 인증은 사람마다 비밀번호를 따로 둘 수 있어서, 공유 비밀번호 하나보다 나아요. 그래도 사람을 추가하고 빼는 건 서버에서 직접 해야 해요.

03공유 비밀번호 또는 로그인

비밀번호로 충분한 건 언제인가요?

공유 비밀번호로 괜찮은 경우

  • 며칠 동안 고객이나 회사 밖 사람에게 보여 주는 초안이나 데모.
  • 아직 검색에 노출되면 안 되는 공개 사이트의 스테이징 사본.
  • 누가 봤는지는 상관없고, 낯선 사람만 못 보면 되는 것.

04나란히 비교

공유 비밀번호와 회사 로그인

회사 로그인은 회사가 이미 준 회사 계정으로 각자 로그인하는 방식이에요. Google, Microsoft 또는 회사 이메일로 받은 코드예요.

사내 툴에서 공유 비밀번호와 회사 로그인 비교
질문공유 비밀번호회사 로그인
누가 들어오나요어디서 얻었든 비밀번호를 가진 누구나회사 이메일 도메인 계정이 있는 사람만
한 사람만 빼려면비밀번호를 바꾸고 나머지 모두에게 새 비밀번호를 보내기목록에서 빼거나, 퇴사할 때 회사 계정을 비활성화하기
누가 썼는지 알 수 있나요아니요. 앱에는 모두 똑같아 보여요네. 앱이 각 사람의 이름과 이메일을 받아요
유출되면채팅방, 이메일, 스크린샷 어디서든 찾은 사람이면 누구나 쓸 수 있어요유출될 게 없어요. 낯선 사람은 회사의 실제 계정이 있어야 해요
비용Vercel Pro에서 프로젝트당 월 $20. Netlify는 Pro 요금제. 직접 운영하는 서버라면 무료직접 설정한다면 Cloudflare Access에서 50명까지 무료. TeamOnly는 호스팅 포함 월 $19

05회사 로그인 내장

TeamOnly로 사내 앱을 회사 로그인 뒤에 두는 방법

사이트가 사실 사내 툴이라면 비밀번호는 건너뛰어도 돼요. TeamOnly가 앱을 호스팅하고, 앱이 뜨기 전에 회사 로그인을 확인해요.

  1. 회사 이메일로 무료로 시작하기

    14일 동안 카드 없이 무료로 써 보세요. 그다음 Builder는 월 $19에 제작자 1명, 앱 최대 3개예요. 회사 이메일 도메인이 문이 돼요.

  2. 프로젝트에서 npx teamonly init 실행하기

    Claude Code와 Cursor가 읽는 안내와, 로그인한 사람, 데이터베이스, 파일을 앱에서 쓰기 위한 작은 라이브러리를 추가해요.

  3. 로그인하고 배포하기

    npx teamonly login을 한 번 실행하고, 그다음 npx teamonly deploy를 실행하세요. expenses.acme.teamonly.app 같은 링크가 생겨요.

  4. 링크 보내기

    동료들은 회사 Google 또는 Microsoft 계정이나 회사 이메일로 받은 코드로 로그인해요. npx teamonly access only dana@acme.com으로 지정한 사람에게만 열 수도 있어요.

06FAQ

자주 묻는 질문

모든 질문과 답변

웹사이트에 무료로 비밀번호를 걸 수 있나요?

직접 운영하는 서버라면 HTTP 기본 인증은 무료예요. Cloudflare에서는 Access가 사용자 50명까지 무료이고 각 사람에게 일회용 PIN을 이메일로 보낼 수 있지만, 도메인이 Cloudflare에 있어야 해요. Vercel의 Hobby 요금제와 Netlify의 Free, Personal 요금제에는 비밀번호 보호가 없어요.

Vercel 비밀번호 보호는 얼마인가요?

Pro 요금제에서 보호하는 프로젝트마다 월 $20이고, Pro 요금은 별도예요. Enterprise에는 포함돼 있고 Hobby에서는 쓸 수 없어요. Vercel Authentication은 모든 요금제에서 무료지만, 방문자에게 그 프로젝트에 접근할 수 있는 Vercel 계정이 있어야 해요.

Netlify 무료 요금제에도 비밀번호 보호가 있나요?

아니요. Netlify 문서에 따르면 Free와 Personal 요금제에서는 비밀번호 보호를 쓸 수 없어요. 멤버 수 제한 없이 월 $20인 Pro와 Enterprise에서 쓸 수 있어요.

React 앱에 비밀번호를 걸 수 있나요?

네, 하지만 React 안에서는 안 돼요. React 코드는 모두 브라우저로 전송되기 때문에, 거기서 비밀번호를 확인하면 누구나 읽고 건너뛸 수 있어요. 대신 호스팅(Vercel, Netlify, Cloudflare 또는 서버)에 비밀번호를 걸어서, 입력하기 전에는 아무것도 뜨지 않게 하세요.

사내 툴이라면 공유 비밀번호로 충분히 안전한가요?

낯선 사람과 검색 엔진은 막아 줘요. 하지만 누가 툴을 쓰는지는 알 수 없고, 모두의 비밀번호를 바꾸지 않고는 한 사람의 접근만 막을 수 없어요. 동료들이 매일 쓰는 툴이라면 각자의 회사 계정으로 로그인하는 편이 더 안전해요.

TeamOnly로 공개 웹사이트에 비밀번호를 걸 수 있나요?

아니요. TeamOnly는 동료들이 회사 계정으로 로그인하는 사내 앱 전용이에요. 공개 사이트는 올릴 수 없어요. 비밀번호를 건 공개 사이트라면 이 페이지에 있는 호스팅 중 하나를 쓰세요.

얼리 액세스

팀 툴에는 공유 비밀번호 대신 회사 로그인

Builder는 월 $19예요. 동료들은 회사 계정으로 로그인하고, 그 외에는 아무도 들어오지 못해요.

14일 무료 체험하기아니면 지금 구독하기

무료 체험에는 카드가 필요 없어요. 그 뒤로 월 $19부터, 언제든 해지할 수 있어요.

아직 준비가 안 됐나요? 소식 받기

회사 이메일을 써 주세요. 메일은 가끔, 보낼 만한 소식이 있을 때만 보내요.

질문은 hello@teamonly.dev로 보내 주세요. 사람이 직접 답해요.