GNU/Linux >> Belajar Linux >  >> Linux

Pam – Bendera Kontrol yang Diperlukan Dan Cukup?

Saya sedang mempelajari PAM, dan saya sedikit tidak mengerti tentang arti dari beberapa kombinasi flag kontrol. Dari dokumentasi Red Hat kami memiliki:

  • diperlukan
    kegagalan PAM semacam itu pada akhirnya akan menyebabkan kegagalan pengembalian PAM-API
    tetapi hanya setelah modul tumpuk yang tersisa (untuk layanan dan jenis ini)
    dipanggil

  • Requirement
    seperti yang dibutuhkan, namun, jika modul tersebut mengembalikan kegagalan,
    kontrol langsung dikembalikan ke aplikasi.

  • cukup
    keberhasilan modul tersebut cukup untuk memenuhi persyaratan autentikasi
    tumpukan modul (jika modul yang diperlukan sebelumnya gagal
    keberhasilan modul ini diabaikan). Kegagalan modul ini tidak dianggap
    fatal untuk memuaskan aplikasi yang jenis ini telah berhasil. Jika modul
    berhasil, kerangka kerja PAM mengembalikan kesuksesan ke aplikasi
    segera tanpa mencoba modul lain.

Jadi, menurut pemahaman saya, jika modul requisite gagal, seluruh tumpukan modul tidak akan diurai, dan kontrol akan segera kembali ke aplikasi.
Jika modul sufficient berhasil, tumpukan modul lainnya tidak akan diuraikan dan kontrol akan segera kembali ke aplikasi.
Jika modul required gagal, seluruh tumpukan akan diuraikan.

Sekarang, saya tidak dapat memahami apa yang akan menjadi perilaku ketika modul tertentu required gagal dan modul lain sufficient berhasil.

Jawaban yang Diterima:

PAM melanjutkan melalui item di tumpukan secara berurutan. Itu hanya menyimpan ingatan tentang statusnya (sukses atau ditolak, dengan sukses berarti sukses sejauh ini), bukan tentang bagaimana ia mencapai status itu.

Jika item bertanda sufficient berhasil, perpustakaan PAM berhenti memproses tumpukan itu. Ini terjadi apakah ada required sebelumnya item atau tidak. Pada titik ini, PAM mengembalikan status saat ini:sukses jika tidak ada required sebelumnya item gagal, jika tidak ditolak.

Demikian pula, jika item bertanda requisite gagal, pustaka PAM berhenti memproses dan mengembalikan kegagalan. Pada saat itu, tidak relevan apakah required sebelumnya item gagal.

Dengan kata lain, required tidak selalu menyebabkan seluruh tumpukan diproses. Itu hanya berarti terus berjalan.

Terkait:Kontrol bingkai demi bingkai dari video YouTube?
Linux
  1. Gunakan Setxkbmap Untuk Menukar Shift Kiri Dan Kontrol Kiri?

  2. Memahami Komunikasi Antara Pam dan Daemon Pam-aware?

  3. perubahan parameter modul kernel (menggunakan /sys/module)

  1. success=n kontrol sintaks dalam file pam.conf / pam.d/*

  2. Penerusan IP =kapan dan mengapa ini diperlukan?

  3. Apa itu dispersi NTP dan bagaimana cara mengontrolnya?

  1. Kontrol waktu dan tanggal komputer Anda dengan systemd

  2. Pengguna dan Grup Klaster

  3. Tidak ada modul bernama Cython dan Menjalankan cythonize gagal [Fix]