Skocz do zawartości

Własny Moduł Pam (linux-pam) - Jak Pobrac Hasło?


SLip

Rekomendowane odpowiedzi

Witam serdecznie!

 

Aktualnie zajmuje sie tworzeniem projektu, który wymaga napisania własnego modułu pam odpowiedzialnego za autentykacje. Skorzystalem ze szkieletu modulu pam_deny, zamieniajac w pam_sm_secred wartosc zwracana na PAM_SUCCESS, nastepnie w pam_sm_authenticate sprawdzam kto sie loguje (pobieram nazwe usera przy pomocy pam_get_user()) i w zalesnosci czy to wybrana przeze mnie osoba, czy nie, zwracam odpowiedni komunikat. To wszystko dziala.

 

Problem pojawia sie w momencie, gdy chce pobrac hasło. Nie dziala mi funkcja pam_get_item(), albo ja jej uzyc nei potrafie.

 

ret = pam_get_item(pamh,PAM_AUTHTOK), (const void **)&haslo);

 

Powyzsza linijka powinna chyba wpisywac mi do zmiennej haslo haslo podane przez uzytkownika, prawda? Niestety tego nie czyni.

 

Jesli dam wczesniej pam_set_item(pamh,PAM_AUTHTOK,cos_tam);

 

Zakladajac ze cos tam jest haslem, to wszystko dziala, ale nie o to przeciez chodzi.

 

Jak sobie z tym poradzić? A moze macie jakis prosty kod, w ktorym w jasny sposob pokazany jest sposob pobierania hasla w Linux-PAM?

 

Z gory dzieki za pomoc!

 

EDIT:

 

Haslo pobralem w inny sposob zupelnie i dziala niby, ale mam pytanie kolejne... Czy modul pam musi byc napisany w c, czy moze byc tez w c++?

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...