Jak uwierzytelniać użytkowników serwera SMPP za pomocą bazy danych
Kiedy prowadzisz własną usługę SMS, możesz chcieć przechowywać informacje o użytkownikach w swojej bazie danych. Te informacje mogą być wykorzystane do uwierzytelniania użytkowników próbujących uzyskać dostęp do serwera przez różne kanały. Na przykład, możesz uwierzytelniać połączenia klientów SMPP, połączenia HTTP API, klientów SMS UCP lub CIMD2 za pomocą tej samej bazy danych użytkowników. Ten przewodnik zawiera instrukcje krok po kroku, jak skonfigurować uwierzytelnianie użytkowników za pomocą bazy danych dla konfiguracji serwera SMPP. Kroki są podobne dla innych kanałów usług, które możesz skonfigurować. Możesz użyć Microsoft SQL Server, MySQL, Oracle lub dowolnego innego serwera baz danych.
Przegląd
Jeśli przechowujesz informacje o użytkownikach swojego serwera SMS SMPP w tabeli bazy danych, musisz wykonać następujące kroki, aby skonfigurować bramkę SMS Ozeki 10 do zapytań do bazy danych, gdy klient SMPP próbuje się połączyć, aby zdecydować, czy jest upoważniony do korzystania z usługi.
- Otwórz panel sterowania
- Utwórz połączenie z bazą danych
- Wybierz zapytania SQL
- Wybierz typ bazy danych
- Wprowadź dane logowania do bazy danych
- Utwórz nowego dostawcę uwierzytelniania
- Napisz zapytanie SQL SELECT do weryfikacji użytkownika
- Otwórz aplikację Bramka SMS
- Kliknij Zaawansowane na pasku narzędzi
- Wybierz konfigurację serwera SMPP
- Otwórz zakładkę zaawansowaną
- Wybierz dostawcę uwierzytelniania bazy danych
Krok 1 - Utwórz połączenie z bazą danych w Bramce SMS Ozeki
Pierwszym krokiem jest otwarcie aplikacji Panel sterowania w Bramce SMS Ozeki. Wystarczy przejść do pulpitu Bramki SMS Ozeki i tutaj, jak widać na Rysunku 1, otwórz Panel sterowania, klikając jego ikonę.
Teraz powinieneś być na głównej stronie Panelu sterowania, gdzie możesz tworzyć, modyfikować lub usuwać połączenia. Kliknij niebieski przycisk Utwórz nowe połączenie i wybierz Aplikację z pola pojawiającego się po prawej stronie ekranu (Rysunek 2).
W tym przykładzie użyjemy bazy danych MySQL do przechowywania szczegółów użytkowników dla Dostawcy uwierzytelniania. Wybierz typ połączenia MySQL, jak pokazano na Rysunkach 3-5.
Następnie wypełnij poniższy formularz szczegółami połączenia. Upewnij się, że podałeś IP serwera SQL i numer portu. Domyślny numer portu SQL to zazwyczaj 3306. Musisz również podać nazwę bazy danych, w której znajdują się Twoi użytkownicy. Na koniec podaj nazwę użytkownika SQL i hasło i kliknij 'OK' (Rysunek 6).
Na koniec połączenie zostało pomyślnie nawiązane, jak widać na Rysunku 7.
Krok 2 - Podłącz Dostawcę uwierzytelniania bazy danych do bazy danych SQL
W tym kroku ustawimy zapytanie SELECT na tabeli SQL. To zapytanie SELECT będzie wywoływane przy próbie logowania. Sprawdza tabelę użytkowników pod kątem użytkowników. Przejdź do strony dostawcy uwierzytelniania, klikając Dostawcy uwierzytelniania w menu Użytkownicy (Rysunek 8).
Na stronie Dostawcy uwierzytelniania możesz tworzyć, modyfikować lub usuwać dostawców uwierzytelniania. Utwórz nowego dostawcę uwierzytelniania, klikając niebieski przycisk Utwórz nowego dostawcę uwierzytelniania. Po prawej stronie strony otworzy się nowe pole. W tym polu możesz wybierać między dostawcami uwierzytelniania. Wybierz Dostawcę uwierzytelniania bazy danych (Rysunek 9).
W polu będzie dostępny formularz. Powinieneś wypełnić formularz, aby skonfigurować dostawcę uwierzytelniania bazy danych. W najważniejszym polu musisz napisać zapytanie SQL, jak widać na Rysunku 10. W KROKU 4 skonfigurujemy bazę danych SQL, która jest kompatybilna z tym zapytaniem SQL.
SELECT * FROM user WHERE Password = MD5("${password}") /* Haszuje hasło i porównuje hash. */ and User="${username}";
Krok 3 - Tworzenie usługi SMPP z uwierzytelnianiem SQL
Następnym krokiem jest otwarcie aplikacji SMS Gateway. Przejdź do pulpitu i otwórz SMS Gateway, klikając jego ikonę. Tutaj znajdziesz menu Zaawansowane SMS Gateway. Aby je otworzyć, kliknij przycisk "Zaawansowane" na stronie głównej. (Rysunek 11)
Na stronie Zaawansowane możesz tworzyć, modyfikować lub usuwać usługi SMS. Utwórz nową usługę SMS, klikając niebieski przycisk Utwórz nową usługę. Po prawej stronie strony otworzy się nowe okno. W tym oknie możesz wybrać między usługami SMS, jak widać na Rysunku 12. Następnie wybierz usługę SMPP (Rysunek 13).
W oknie będzie dostępny formularz. Wypełnij formularz, aby skonfigurować usługę SMPP. Podaj unikalną nazwę i port dla tej usługi, jak widać na Rysunku 14.
Następnie na karcie Zaawansowane usługi SMPP ustaw dostawcę uwierzytelniania bazy danych w sekcji Uwierzytelnianie użytkownika, jak pokazuje Rysunek 15.
Krok 4 - Tworzenie tabeli SQL dla użytkowników
Aby użyć Dostawcy Uwierzytelniania Bazy Danych, będziesz potrzebować co najmniej jednej tabeli SQL zawierającej dane logowania użytkowników. Tabela musi mieć co najmniej 2 kolumny. 1 kolumna to nazwa użytkownika, a druga to hash hasła użytkownika. (Rysunek 16) Teraz musisz utworzyć tabelę w bazie danych:CREATE TABLE user ( User VARCHAR(255), Password VARCHAR(255) );
INSERT INTO user (User, Password) VALUES ("Ozeki", MD5('123451')), ("smppuser", MD5("qwe123"));
Na koniec, jeśli klient SMPP połączy się z nazwą użytkownika i hasłem utworzonymi w bazie danych, zobaczysz, że użytkownik pojawi się w sekcji Użytkownicy i aplikacje SMS Gateway (Rysunek 18).
FAQ
Czy Twój gateway obsługuje klastrowanie na wielu serwerach i jak to działa?
W scenariuszach obejmujących dużą liczbę połączeń użytkowników, Ozeki SMS Gateway
oferuje rozwiązanie klastrowe w celu zwiększenia skalowalności usługi. Klaster składa się z
grupy niezależnych komputerów, każdy wyposażony w oprogramowanie Ozeki. Każda
instancja Ozeki niezależnie łączy się z wyznaczonymi dostawcami usług SMS
i obsługuje użytkowników autonomicznie, bez polegania na innych członkach klastra.
Strategie równoważenia obciążenia:
Klastrowanie Ozeki SMS Gateway wykorzystuje dwie główne metody dystrybucji połączeń klientów
między członkami klastra:
- Wybór serwera oparty na DNS: To podejście wykorzystuje algorytm round-robin w serwerze DNS. Gdy klient wysyła zapytanie o usługę, serwer DNS zwraca adresy IP z puli przypisanej do klastra, skutecznie rozdzielając połączenia między dostępne serwery.
- Wstępnie wybrany router z translacją adresów sieciowych (NAT): W tej metodzie wstępnie skonfigurowany router wykorzystuje NAT do rozdzielania ruchu przychodzącego między serwery klastra. To podejście oferuje większą kontrolę nad równoważeniem obciążenia w porównaniu z metodą opartą na DNS.
- Zwiększona skalowalność: Klastrowanie umożliwia skalowanie poziome, pozwalając na dodawanie większej liczby serwerów do klastra w celu zwiększenia możliwości obsługi rosnącej bazy użytkowników.
- Większa dostępność: Jeśli jeden serwer napotka problemy, pozostałe człony klastra kontynuują działanie, zapewniając ciągłość usługi.
- Lepsza wydajność: Rozłożenie obciążenia na wiele serwerów zmniejsza obciążenie poszczególnych maszyn, prowadząc do poprawy ogólnej wydajności i szybszego czasu reakcji dla użytkowników.
Doświadczasz wolnych wskaźników dostarczania wiadomości w Ozeki SMS Gateway? Oto kilka potencjalnych wąskich gardeł do zbadania:
Zarządzanie kolejką wiadomości:
- Rozmiar skrzynki nadawczej: Monitoruj rozmiar kolejki skrzynki nadawczej. Idealnie powinna wynosić od 100 do 2000 wiadomości. Kolejka o zbyt małej liczbie wiadomości (0-100) sugeruje niewystarczającą liczbę wiadomości do transmisji. Z kolei bardzo duża kolejka (powyżej 100 000) wskazuje, że źródło wiadomości przeciąża system.
- Automatyczne usuwanie wiadomości: Rozważ włączenie automatycznego usuwania starych wiadomości w formularzu „Edycja/Preferencje serwera”. Zapobiega to nadmiernemu gromadzeniu się kolejki i pogorszeniu wydajności.
- Wydajność sprzętu: Użyj Menedżera zadań Windows, aby zidentyfikować procesy zużywające nadmierne zasoby CPU. Defragmentacja dysku, wygaszacze ekranu, oprogramowanie antywirusowe lub automatyczne aktualizacje mogą tymczasowo wpływać na wydajność.
- Przepustowość sieci: Sprawdź, czy masz wystarczającą przepustowość wysyłania (najlepiej powyżej 256 Kbps). Zmniejsz przeciążenie sieci, zamykając aplikacje wymagające dużej przepustowości, takie jak strumieniowanie wideo lub oprogramowanie do udostępniania plików.
- Ograniczenia dostawcy SMS: W niektórych przypadkach system dostawcy usług SMS może być wolniejszy niż Twój. Skonsultuj się z nim w sprawie optymalnych ustawień rozmiaru okna w formularzu „Konfiguracja dostawcy usług SMPP”. Mniejszy rozmiar okna może ograniczyć szybkość wysyłania, oczekując na potwierdzenia przed wysłaniem kolejnych wiadomości.
- Utrzymuj optymalny rozmiar kolejki skrzynki nadawczej: Staraj się utrzymywać stały przepływ wiadomości, utrzymując kolejkę skrzynki nadawczej w zalecanym zakresie (100-2000 wiadomości).
- Włącz automatyczne usuwanie wiadomości: Skonfiguruj oprogramowanie do automatycznego usuwania starych wiadomości za pomocą formularza „Edycja/Preferencje serwera”.
- Zmniejsz ruch przychodzący: Jeśli to możliwe, zmniejsz liczbę przychodzących wiadomości, takich jak raporty dostarczenia, aby usprawnić proces wysyłania.
- Zoptymalizuj wydajność sprzętu: Zidentyfikuj i zamknij aplikacje wymagające dużej ilości zasobów za pomocą Menedżera zadań Windows.
- Zwiększ przepustowość sieci (w razie potrzeby): Rozważ ulepszenie planu internetowego, aby zapewnić wystarczającą przepustowość wysyłania.
- Skonsultuj się z dostawcą SMS: Omów optymalne ustawienia rozmiaru okna z dostawcą usług SMS, aby poprawić wydajność wysyłania.
More information
- Ręczna konfiguracja konta użytkownika
- Jak uwierzytelniać użytkowników serwera SMPP za pomocą bazy danych
- Jak uwierzytelniać użytkowników serwera SMPP za pomocą LDAP
- Jak uwierzytelniać użytkowników serwera SMPP za pomocą żądań HTTP