Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> logowanie do bazy bez nazwy user'a
sbs2005
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 16.06.2011

Ostrzeżenie: (0%)
-----


Witam serdecznie.

Przegladalem caly dzial dotyczacy Postgresa.
Otoz borykam sie z tym od kilku dni i jestem w kropce.
Przejalem obsluge psql po adminie, ktory korzystal z cgi i c++ do obslugi bazy.
Ja natomiast chcialbym troche to zrobic po swojemu no i jest problem.
W c++ by polaczyc sie z okreslona baza wykorzystuje sie polecenie mag.connect, po tym okresla sie zmienna user i haslo. Po wpisaniu okreslonego user'a jak i hasla w formularzu logowania nastepuje polaczenie z okreslona baza. (Baza psql posiada zapisanych w "pg_user" okolo 10 uzytkownikow).
Z tego co wyczytalem w necie przy php nie ma takiej mozliwosci - musze utworzyc dodatkowa baze uzytkownikow i korzystajac z niej logowac sie do bazy przez www.
Czy moje rozumowanie jest prawidlowe, jezeli tak to troche bez sensu tworzyc dodatkowa baze uzytkownikow, jezeli sam psql przechowuje te informacje w swoich zasobach.
Pomimo, ze funkcja pg_connect pozwala stosowac zmienne odnosnie uzytkownika i hasla to jednak nie pozwala dostac sie bezposrednio do zapisanych w psql'u uzytkownikow. Prosze o rozwianie moich watpliwosci.

Pozdrawiam
Jacek

ps. klawiatura bez polskich znakow

Ten post edytował sbs2005 16.06.2011, 18:24:59
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mortus
post
Post #2





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

Ostrzeżenie: (0%)
-----


Dodam jeszcze, że oprogramowanie aplikacji od tej strony, sprowadza się do oprogramowania obsługi błędów funkcji z przedrostkiem pg_.
Go to the top of the page
+Quote Post
sbs2005
post
Post #3





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 16.06.2011

Ostrzeżenie: (0%)
-----


Cytat(mortus @ 17.06.2011, 12:44:45 ) *
Dodam jeszcze, że oprogramowanie aplikacji od tej strony, sprowadza się do oprogramowania obsługi błędów funkcji z przedrostkiem pg_.


mortus i cojack - nie mowcie ze jak wskaze baze do ktorej chce sie polaczyc - dajmy na to "zasoby" i potem okresle zmienna user'a i haslo potem napisze skrypt do logowania sie ze strony - to haslo jak i user beda odczytane z pg_user bez wskazywania na tabele, w ktorej sie znajduje ten plik (pg_user) - to takie proste ma byc

(IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
mortus
post
Post #4





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

Ostrzeżenie: (0%)
-----


Cytat(sbs2005 @ 17.06.2011, 13:16:04 ) *
mortus i cojack - nie mowcie ze jak wskaze baze do ktorej chce sie polaczyc - dajmy na to "zasoby" i potem okresle zmienna user'a i haslo potem napisze skrypt do logowania sie ze strony - to haslo jak i user beda odczytane z pg_user bez wskazywania na tabele, w ktorej sie znajduje ten plik (pg_user) - to takie proste ma byc

(IMG:style_emoticons/default/smile.gif)

Dokładnie tak z tym, że login użytkownika, jak i hasło nie będą odczytywane z tabeli pg_user, ale porównywane z zawartością właśnie tej tabeli i jeśli się tam znajdą nastąpi połączenie. Jeśli odpowiednich danych w tabeli pg_user nie będzie, to funkcja zwróci błąd z komunikatem o braku dostępu. A co ważniejsze to nie tylko w PHP tak działa, ale również w C++ i innych językach programowania.
Po prostu jeśli użytkownik jest użytkownikiem systemu baz danych i w tym systemie ma nadane jakieś uprawnienia, to zadaniem tego systemu jest kontrolowanie dostępu do określonych zasobów. Jeśli użytkownik nie ma odpowiednich uprawnień, to dostaje komunikat o braku uprawnień. Tyle. I tak jak mówię, w taki sam sposób działa to spod PHP, jak i spod C++, czy w ogóle każdego języka programowania.

EDIT
PHP-owa funkcja pg_connect, to tylko swego rodzaju "interfejs" do połączenia z systemem baz danych PostgreSQL. Funkcje z przedrostkiem pg_ to natomiast "interfejsy" do wykonywania innych działań na systemie baz danych PostgreSQL.

Cytat
W c++ by polaczyc sie z okreslona baza wykorzystuje sie polecenie mag.connect, po tym okresla sie zmienna user i haslo. Po wpisaniu okreslonego user'a jak i hasla w formularzu logowania nastepuje polaczenie z okreslona baza. (Baza psql posiada zapisanych w "pg_user" okolo 10 uzytkownikow).

W opisanym przez Ciebie przypadku wspomnianym interfejsem jest obiekt mag, którego klasy nie znamy. Natomiast jeśli w tabeli pg_user jest 10 użytkowników, to w całej instytucji tylko tych 10 użytkowników może pracować na bazie danych (chyba, że architektura systemu wygląda inaczej, niż to opisałeś kilka postów wyżej).

Ten post edytował mortus 17.06.2011, 13:39:30
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 01:01