[PYTHON] Flask Basic-Zertifizierung

Es ist eine Prämisse eines Projekts, das einmal dokcerisiert wurde. Letztes Mal: Anwendungsentwicklung mit Docker + Python + Flask

Dateiorganisation

├── api
|   └── auth.api
├── requirements.txt
└── docker-compose.yaml

Hinzufügung der Basisauthentifizierungsfunktion

auth.py


from flask_httpauth import HTTPBasicAuth
from werkzeug.security import generate_password_hash, check_password_hash
import os

auth = HTTPBasicAuth()

users = {
  os.getenv("BASIC_AUTH_USER"): generate_password_hash(os.getenv("BASIC_AUTH_PASSWORD"))
}

@auth.verify_password
def verify_password(username, password):
    if username in users:
        return check_password_hash(users.get(username), password)
    return False

python


from api.auth import auth

#Kürzung
@route('/')
@auth.login_required
def add():
#Kürzung

Fügen Sie "@ auth.login_required" zu Routen hinzu, die eine grundlegende Authentifizierung erfordern.

Docker reparieren

docker-compose.yaml


version: '3'
services:
  api:
    container_name: tool-api
#Kürzung
    environment: 
      BASIC_AUTH_USER: "user"
      BASIC_AUTH_PASSWORD: "password"

Stellen Sie den in "auth.py" verwendeten Augenpfad auf die Umgebungsvariable ein.

requirements.txt


#Kürzung
flask_httpauth

Fügen Sie die erforderlichen Module hinzu.

Lauf

$ docker-compose up

Recommended Posts

Flask Basic-Zertifizierung
Flask Grundnotiz
BASIC-Authentifizierung mit Python-Flasche
Flasche
Wörterbuchangriff auf die Standardauthentifizierung
Flasche
Numpy [Basic]
Erste Flasche
Kolben Memo
Einrichten der Basisauthentifizierung mit Python @Lambda
Grundlegende Befehle
Der Tag, an dem die Grundzertifizierung zu dem von flask betriebenen Service hinzugefügt wurde
Erreichen Sie eine grundlegende Authentifizierung mit CloudFront Lambda @ Edge mit Python 3.8
Versuchen Sie eine lockere OAuth-Authentifizierung mit einem Kolben (Slack API V2).
Senden Sie HTTP mit dem Standardauthentifizierungsheader in Python
Flow, um die Slack-Authentifizierung mit Flask (Python) abzuschließen