Nowe posty

xx Dystrybucja pod HP Omen (6)
2024-03-27, 23:30:08
xx [Poradnik] Wyszukiwanie Sterowników (2)
2024-03-27, 21:08:23
lamp Problem z Linux Lite po instalacji (0)
2024-03-27, 19:50:30
xx Ile pingwinów? (1)
2024-03-27, 08:59:24
xx konfiguracja pale moon (0)
2024-03-24, 21:53:42
xx Plasma 6 w Neonie ssie trochę mniej ... (10)
2024-03-23, 02:38:11
xx problem z instalacja sterowników do karty sieciowej (3)
2024-03-18, 18:10:16
xx Plik abc.001 (1)
2024-03-17, 17:48:27
xx Zlecę dopracowanie programu w MatLab (0)
2024-03-13, 15:28:40
xx Linux Mint 21.3 XFCE brak dźwieku po paru minutach (karta muzyczna zintegrowana) (5)
2024-03-12, 23:07:01

Autor Wątek: Autoryzacja użytkownika aplikacji, z wykorzystaniem /etc/passwd  (Przeczytany 2728 razy)

diabelik

  • Gość
Witam wszystkich.

Piszę prosty komunikator oparty o architekturę klient-serwer. Klienta pisze w javie, aby działał na dowolnej maszynie, a serwer w C/C++ pod system linux. Chciałbym, aby użytkownicy logujący się z poziomu klienta komunikatora, byli identyfikowani i autoryzowani przez serwer za pomocą pliku /etc/passwd. Chodzi mi głównie, jeśli jest taka możliwość, o wykorzystanie już gotowych programów np: login, lub bibliotek/funkcji systemowych (jeśli takie są), ewentualnie jak to napisać od początku.

Chciałbym np: wykonać zewnętrzny program, któremu serwer będzie przekazywał nazwę użytkownika i podane przez niego hasło, i żeby program ten zwracał czy para użytkownik-hasło pasuje do siebie czy nie. Nie potrzebuje niczego wyszukanego, tak jak pisałem wcześniej ma być to prosty komunikator. Moim celem jest po prostu wykorzystanie jednej nazwy użytkownika i przypisanego mu hasła do różnych usług oferowanych przez linux-a.

Po długich poszukiwaniach znalazłem wreszcie rozwiązanie, o które mi mniej więcej chodziło: http://4programmers.net/C/Artykuły/Czytanie_shadow,_passwd_i_group_w_C, wnioskuję z tego, że nie ma w linux-e jakiegoś standardowego polecenia za pomocą, którego można to sprawdzić np: sprawdzLogin -u uzytkownik -p haslo :) ale rozwiązanie, które znalazłem jest dla mnie równie dobre, a może nawet i lepsze.

Przepraszam za zaśmiecanie forum, ale może ktoś kiedyś też będzie miał podobny problem.

wiewiorek

  • Gość
Autoryzacja użytkownika aplikacji, z wykorzystaniem /etc/passwd
« Odpowiedź #1 dnia: 2009-06-02, 04:24:06 »
Oczywiście, że w linuksie istnieją takie rozwiązania. Jedno z nich to pam, składające się z wielu biliotek-wtyczek oraz reguł w /etc/pam.d . Interfejs korzystania podobno bardzo prosty.