Go Fiber 한글 공식 문서
  • 🙇‍♀️안녕하세요
  • 🏠Home
    • 👋Welcome
    • 📁API
      • 📦Fiber
      • 🚀App
      • 🧠Ctx
      • 📋Constants
      • 🌎Client
      • 📃Log
      • 🧬Middleware
        • Adaptor
        • BasicAuth
        • Cache
        • Compress
        • CORS
        • CSRF
        • EarlyData
        • Encrypt Cookie
        • EnvVar
        • ETag
        • ExpVar
        • Favicon
        • FileSystem
        • Health Check
        • Helmet
        • Idempotency
        • Keyauth
        • Limiter
        • Logger
        • Monitor
        • Pprof
        • Proxy
        • Recover
        • Redirect
        • RequestID
        • Rewrite
        • Session
        • Skip
        • Timeout
    • 📁Guide
      • 🔌Routing
      • 🎭Grouping
      • 📝Templates
      • 🐛Error Handling
      • 🔎Validation
      • 🎣Hooks
      • ⚡Make Fiber Faster
    • 📁Extra
      • 🤔FAQ
      • 📊Benchmarks
  • 🧩Extra
    • 🧬Contrip
      • 👋Welcome
      • Casbin
      • Fgprof
      • Fiberi18n
      • Fibernewrelic
      • Fibersentry
      • Fiberzap
      • Fiberzerolog
      • JWT
      • LoadShed
      • Opafiber
      • Otelfiber
        • Example
      • Paseto
      • README
      • Swagger
      • Websocket
    • 📦Storage
      • 👋Welcome
      • ArangoDB
      • Azure Blob
      • Badger
      • Bbolt
      • Coherence
      • Couchbase
      • DynamoDB
      • Etcd
      • Memcache
      • Memory
      • Minio
      • MongoDB
      • MSSQL
      • MySQL
      • Nats
      • Pebble
      • Postgres
      • Redis
      • Ristretto
      • Rueidis
      • S3
      • ScyllaDb
      • SQLite3
    • 📃Template
      • 👋Welcome
      • Ace
      • Amber
      • Django
      • Handlebars
      • HTML
        • Golang Templates Cheatsheet
      • Jet
      • Mustache
      • Pug
      • Slim
Powered by GitBook
On this page
  • Signatures
  • Examples
  • Config
  • Default Config
  1. Home
  2. API
  3. Middleware

BasicAuth

PreviousAdaptorNextCache

Last updated 1 year ago


HTTP 기본 인증을 제공하는 용 Basic Authentication 미들웨어입니다. 유효한 자격 증명에 대해 다음 핸들러를 호출하고 자격 증명이 누락되었거나 유효하지 않은 경우 또는 사용자 지정 응답을 반환합니다.

Signatures

func New(config Config) fiber.Handler

Examples

Fiber 웹 프레임워크의 일부인 미들웨어 패키지를 가져옵니다.

import (
  "github.com/gofiber/fiber/v2"
  "github.com/gofiber/fiber/v2/middleware/basicauth"
)

Fiber 앱을 초기화한 후 다음과 같은 방법을 사용할 수 있습니다:

// 최소한의 설정 제공
app.Use(basicauth.New(basicauth.Config{
  Users: map[string]string{
    "john":  "doe",
    "admin": "123456",
  },
}))

// 또는 사용자 지정을 위해 설정 확장
app.Use(basicauth.New(basicauth.Config{
  Users: map[string]string{
    "john":  "doe",
    "admin": "123456",
  },
  Realm: "Forbidden",
  Authorizer: func(user, pass string) bool {
    if user == "john" && pass == "doe" {
      return true
    }
    if user == "admin" && pass == "123456" {
      return true
    }
    return false
  },
  Unauthorized: func(c *fiber.Ctx) error {
    return c.SendFile("./unauthorized.html")
  },
  ContextUsername: "_user",
  ContextPassword: "_pass",
}))

Config

Property
Type
Description
Default

Next

func(*fiber.Ctx) bool

Next는 true를 반환할 때 이 미들웨어를 건너뛸 함수를 정의합니다.

nil

Users

map[string]string

Users는 허용된 자격 증명을 정의합니다.

map[string]string{}

Realm

string

Realm은 BasicAuth의 realm 속성을 정의하는 문자열입니다. realm은 인증할 시스템을 식별하며 클라이언트가 자격 증명을 저장하는 데 사용할 수 있습니다.

"Restricted"

Authorizer

func(string, string) bool

Authorizer는 자격 증명을 확인하는 함수를 정의합니다. 사용자 이름과 비밀번호로 호출되며 승인을 나타내기 위해 true 또는 false를 반환해야 합니다.

nil

Unauthorized

fiber.Handler

Unauthorized는 인증되지 않은 응답에 대한 응답 본문을 정의합니다.

nil

ContextUsername

interface{}

ContextUsername은 Locals에 사용자 이름을 저장하는 키입니다.

"username"

ContextPassword

interface{}

ContextPassword는 Locals에 비밀번호를 저장하는 키입니다.

"password"

Default Config

var ConfigDefault = Config{
  Next:            nil,
  Users:           map[string]string{},
  Realm:           "Restricted",
  Authorizer:      nil,
  Unauthorized:    nil,
  ContextUsername: "username",
  ContextPassword: "password",
}
🏠
📁
🧬
Fiber
401 Unauthorized