Rumah > pembangunan bahagian belakang > Tutorial Python > Python melaksanakan pengesahan dan kebenaran keselamatan

Python melaksanakan pengesahan dan kebenaran keselamatan

WBOY
Lepaskan: 2023-06-30 10:01:07
asal
1576 orang telah melayarinya

Gunakan Python untuk melaksanakan mekanisme keselamatan perisian untuk pengesahan dan kebenaran

Dengan perkembangan pesat Internet dan pempopularan pemformatan, isu keselamatan perisian telah menjadi masalah mendesak untuk diselesaikan. Pengesahan dan kebenaran adalah aspek penting untuk memastikan keselamatan perisian Ia boleh menghalang kakitangan yang tidak dibenarkan daripada mengakses dan menggunakan maklumat sensitif dengan berkesan. Artikel ini akan memperkenalkan cara menggunakan Python untuk melaksanakan mekanisme keselamatan perisian untuk pengesahan dan kebenaran untuk meningkatkan keselamatan perisian.

Pengesahan identiti ialah proses menentukan sama ada pengguna adalah pengguna yang sah. Dalam aplikasi perisian, adalah perkara biasa untuk menggunakan nama pengguna dan kata laluan sebagai bukti kelayakan untuk pengesahan. Python menyediakan banyak perpustakaan untuk melaksanakan pengesahan, yang paling biasa digunakan ialah Flask-Login. Flask-Login ialah perpustakaan untuk mengurus sesi pengguna, yang melaluinya kami boleh melaksanakan fungsi log masuk dan log keluar pengguna dengan mudah.

Pertama, kita perlu menyediakan halaman log masuk untuk menerima nama pengguna dan kata laluan yang dimasukkan oleh pengguna. Aplikasi web mudah boleh dilaksanakan dengan mudah menggunakan rangka kerja Flask. Dengan menulis borang HTML yang mudah, kita boleh mendapatkan nama pengguna dan kata laluan pengguna.

<!DOCTYPE html>
<html>
<head>
    <title>Login</title>
</head>
<body>
    <h2>Login</h2>
    <form action="/login" method="post">
        <label for="username">Username:</label>
        <input type="text" id="username" name="username"><br><br>
        <label for="password">Password:</label>
        <input type="password" id="password" name="password">
        <input type="submit" value="Login">
    </form>
</body>
</html>
Salin selepas log masuk

Kemudian, dalam kod Python, kita boleh menggunakan rangka kerja Flask untuk mengendalikan permintaan log masuk pengguna. Pertama, import perpustakaan dan modul yang diperlukan dalam fail Python.

from flask import Flask, render_template, request, redirect, url_for
from flask_login import LoginManager, UserMixin, login_user, login_required, logout_user
Salin selepas log masuk

Seterusnya, kita perlu melaksanakan kelas Pengguna, mewarisi daripada kelas UserMixin, dan menentukan kaedah yang sepadan. Dalam kelas Pengguna, kita boleh menentukan logik pengesahan untuk pengguna.

class User(UserMixin):
    def __init__(self):
        self.username = "admin"
        self.password = "password"

    def verify_password(self, password):
        if self.password == password:
            return True
        else:
            return False
Salin selepas log masuk

Kemudian, kita perlu memulakan aplikasi Flask dan LoginManager, dan menetapkan maklumat konfigurasi yang berkaitan.

app = Flask(__name__)
app.config['SECRET_KEY'] = 'secret_key'
login_manager = LoginManager(app)
login_manager.login_view = 'login'
Salin selepas log masuk

Seterusnya, kita perlu melaksanakan fungsi paparan untuk fungsi log masuk. Dalam fungsi paparan, kami mendapat nama pengguna dan kata laluan yang dimasukkan oleh pengguna dan mengesahkannya. Jika pengesahan berjaya, kami menggunakan fungsi login_user Flask-Login untuk menandakan pengguna sebagai log masuk.

@app.route('/login', methods=['GET', 'POST'])
def login():
    if request.method == 'POST':
        username = request.form['username']
        password = request.form['password']
        
        user = User()
        if user.verify_password(password):
            login_user(user)
            return redirect(url_for('protected'))
        else:
            return redirect(url_for('login'))
    return render_template('login.html')
Salin selepas log masuk

Selepas log masuk berjaya, kami boleh mengubah hala pengguna ke halaman yang dilindungi. Kami boleh menggunakan penghias login_required Flask-Login untuk melindungi halaman ini dan memastikan bahawa hanya pengguna log masuk boleh mengaksesnya.

@app.route('/protected')
@login_required
def protected():
    return "Hello, protected page!"
Salin selepas log masuk

Akhir sekali, kita juga perlu melaksanakan fungsi view untuk fungsi logout. Dalam fungsi paparan, kami menggunakan fungsi logout_user Flask-Login untuk menandakan pengguna sebagai log keluar dan ubah hala ke halaman log masuk.

@app.route('/logout')
def logout():
    logout_user()
    return redirect(url_for('login'))
Salin selepas log masuk

Melalui langkah di atas, kita boleh menggunakan Python untuk melaksanakan mekanisme keselamatan perisian bagi pengesahan dan kebenaran. Mekanisme ini memastikan bahawa hanya pengguna yang sah boleh mengakses halaman yang dilindungi, sekali gus meningkatkan keselamatan perisian. Menggunakan Python dan perpustakaan berkaitan, kami boleh memudahkan proses pelaksanaan pengesahan dan kebenaran serta meningkatkan kecekapan pembangunan.

Untuk meringkaskan, artikel ini memperkenalkan cara menggunakan Python untuk melaksanakan mekanisme keselamatan perisian untuk pengesahan dan kebenaran. Melalui perpustakaan Flask-Login, kami boleh melaksanakan fungsi log masuk dan log keluar pengguna dengan mudah, dan melindungi halaman terhad yang hanya boleh diakses oleh pengguna log masuk. Mekanisme ini boleh menghalang capaian tanpa kebenaran dan penggunaan maklumat sensitif secara berkesan dan meningkatkan keselamatan perisian. Saya harap artikel ini akan membantu semua orang dan boleh meningkatkan keselamatan perisian dalam aplikasi praktikal.

Atas ialah kandungan terperinci Python melaksanakan pengesahan dan kebenaran keselamatan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan