PAMセッションの作成

PAMセッションの作成

いくつかのメッセージを印刷してX秒待ってからPAM_SUCCESS状態を返す単純なPAMモジュールを作成しようとしています。

まず、次のスクリプトを試してみました。

#include <security/pam_appl.h>
#include <security/pam_modules.h>
#include <security/pam_misc.h>
#include <security/pam_ext.h>
#include <unistd.h>

PAM_EXTERN int pam_sm_authenticate(pam_handle_t *pamh, int flags, int argc, const char **argv) {

    pam_info(pamh, "Test message" );
    
    sleep(3);

    return PAM_SUCCESS;
}

PAM_EXTERN int pam_sm_open_session(pam_handle_t *pamh, int flags, int argc, const char **argv) {
return PAM_SUCCESS;
}

PAM_EXTERN int pam_sm_close_session(pam_handle_t *pamh, int flags, int argc, const char **argv) {
return PAM_SUCCESS;
}

PAM_EXTERN int pam_sm_setcred( pam_handle_t *pamh, int flags, int argc, const char **argv ) {
    return PAM_SUCCESS;
}

しかし、モジュールがPAM_SUCCESSを返した後に私のメッセージを表示するので、これは最善ではありません。

pam_convを使用する必要があるようですが、私に合った簡単な例が見つかりませんでした。

ベストアンサー1

おすすめ記事