Jak autentizovat uživatele SMPP serveru pomocí databáze

Když provozujete vlastní SMS službu, možná budete chtít ukládat informace o uživatelích do vašeho databázového serveru. Tyto informace o uživatelích lze použít k autentizaci uživatelů, kteří se snaží přistupovat k vašemu serveru přes různé kanály. Například můžete autentizovat připojení SMPP klientů, HTTP API připojení, UCP nebo CIMD2 SMS klienty se stejnou uživatelskou databází. Tento průvodce vás krok za krokem provede nastavením databázové autentizace uživatelů pro konfiguraci SMPP serveru. Kroky jsou podobné pro další servisní kanály, které můžete nastavit. Můžete použít Microsoft SQL Server, MySQL, Oracle nebo jakýkoli jiný databázový server.

Přehled

Pokud ukládáte informace o uživatelích vašeho SMPP SMS serveru v databázové tabulce, musíte postupovat podle těchto kroků, abyste nakonfigurovali Ozeki 10 SMS bránu tak, aby dotazovala vaši databázi, když se SMPP klient pokusí připojit, a rozhodla, zda je oprávněn používat vaši službu.

  • Otevřete ovládací panel
  • Vytvořte databázové připojení
  • Vyberte SQL dotazy
  • Zvolte typ databáze
  • Zadejte přihlašovací údaje k databázi
  • Vytvořte nového poskytovatele autentizace
  • Napište SQL SELECT dotaz pro ověření uživatele
  • Otevřete aplikaci SMS Gateway
  • Klikněte na Pokročilé v panelu nástrojů
  • Vyberte konfiguraci SMPP serveru
  • Otevřete pokročilou záložku
  • Vyberte poskytovatele databázové autentizace

Krok 1 - Vytvoření databázového připojení v Ozeki SMS Gateway

Prvním krokem je otevření aplikace Ovládací panel v Ozeki SMS Gateway. Přejděte na plochu Ozeki SMS Gateway a zde, jak vidíte na Obrázku 1, otevřete Ovládací panel kliknutím na jeho ikonu.

otevření ovládacího panelu
Obrázek 1 - Otevření ovládacího panelu

Nyní byste měli být na hlavní stránce Ovládacího panelu, kde můžete vytvářet, upravovat nebo mazat připojení. Klikněte na modré tlačítko Vytvořit nové připojení a vyberte Aplikace z boxu, který se objeví na pravé straně obrazovky (Obrázek 2).

vytvoření nového aplikačního připojení
Obrázek 2 - Vytvoření nového aplikačního připojení

V tomto příkladu použijeme MySQL databázi k uložení uživatelských údajů pro Poskytovatele autentizace. Vyberte tedy typ připojení MySQL, jak ukazují Obrázky 3-5.

vytvoření databázového připojení
Obrázek 3 - Vytvoření databázového připojení

připojení SQL dotazů
Obrázek 4 - Připojení SQL dotazů

mysql připojení
Obrázek 5 - MySQL připojení

Poté vyplňte následující formulář s údaji o připojení. Ujistěte se, že zadáte IP adresu SQL serveru a číslo portu. Výchozí číslo portu SQL je obvykle 3306. Také musíte zadat název databáze, kde jsou vaši uživatelé. Nakonec zadejte SQL uživatelské jméno a heslo a klikněte na 'OK' (Obrázek 6).

detaily mysql připojení
Obrázek 6 - Detaily MySQL připojení

Nakonec bylo připojení úspěšné, jak vidíte na Obrázku 7.

databáze připojena
Obrázek 7 - Databáze připojena

Krok 2 - Připojení poskytovatele databázové autentizace k SQL databázi

V tomto kroku nastavíme SELECT dotaz na SQL tabulku. Tento SELECT dotaz bude volán při pokusu o přihlášení. Zkontroluje tabulku uživatelů. Přejděte na stránku poskytovatele autentizace kliknutím na Poskytovatele autentizace v nabídce Uživatelé (Obrázek 8).

otevření nabídky poskytovatelů autentizace
Obrázek 8 - Otevření nabídky poskytovatelů autentizace

Na stránce Poskytovatele autentizace můžete vytvářet, upravovat nebo mazat poskytovatele autentizace. Vytvořte nového poskytovatele autentizace kliknutím na modré tlačítko Vytvořit nového poskytovatele autentizace. Na pravé straně stránky se otevře nový box. V tomto boxu můžete vybírat mezi poskytovateli autentizace. Vyberte Poskytovatele databázové autentizace (Obrázek 9).

vytvoření nového databázového poskytovatele
Obrázek 9 - Vytvoření nového databázového poskytovatele

V boxu bude k dispozici formulář. Měli byste vyplnit formulář pro konfiguraci poskytovatele databázové autentizace. V nejdůležitějším poli musíte napsat SQL dotaz, jak vidíte na Obrázku 10. V KROKU 4 nastavíme SQL databázi, která je kompatibilní s tímto SQL dotazem.

SELECT * FROM user WHERE
Password = MD5("${password}") /* Zašifruje heslo a porovná hash. */
and User="${username}";

zadání sql dotazu
Obrázek 10 - Zadání SQL dotazu

Krok 3 - Vytvoření SMPP služby s SQL autentizací

Dalším krokem je otevření aplikace SMS Gateway. Přejděte na plochu a zde otevřete SMS Gateway kliknutím na jeho ikonu. Zde najdete pokročilé menu SMS Gateway. Pro jeho otevření klikněte na tlačítko "Advanced" na hlavní stránce. (Obrázek 11)

otevření pokročilého menu SMS Gateway
Obrázek 11 - Otevření pokročilého menu SMS Gateway

Na stránce Advanced můžete vytvářet, upravovat nebo mazat SMS služby. Vytvořte novou SMS službu kliknutím na modré tlačítko Create new Service. Na pravé straně stránky se otevře nové okno. V tomto okně můžete vybírat mezi SMS službami, jak vidíte na Obrázku 12. Poté vyberte SMPP službu (Obrázek 13).

vytvoření nové SMS služby
Obrázek 12 - Vytvoření nové SMS služby

vytvoření SMPP služby
Obrázek 13 - Vytvoření SMPP služby

V okně bude k dispozici formulář. Tento formulář vyplňte pro konfiguraci SMPP služby. Zadejte jedinečný název a port pro tuto službu, jak vidíte na Obrázku 14.

detaily SMPP služby
Obrázek 14 - Detaily SMPP služby

Poté na záložce Advanced v SMPP službě nastavte v sekci User Authentication poskytovatele autentizace Database, jak ukazuje Obrázek 15.

nastavení poskytovatele autentizace
Obrázek 15 - Nastavení poskytovatele autentizace

Krok 4 - Vytvoření SQL databázové tabulky pro uživatele

Pro použití Database Authentication Provider budete potřebovat alespoň jednu SQL tabulku obsahující přihlašovací údaje uživatelů. Tabulka musí mít alespoň 2 sloupce. 1 sloupec je pro uživatelské jméno a druhý pro hash hesla uživatele. (Obrázek 16) Nyní vytvořte tabulku v databázi:
CREATE TABLE user (
    User VARCHAR(255),
    Password VARCHAR(255)
    );

vytvoření uživatelské tabulky v databázi
Obrázek 16 - Vytvoření uživatelské tabulky v databázi

Přidejte uživatelské přihlašovací údaje do vaší tabulky. Tuto tabulku můžete později použít pro autentizaci uživatelů. Ozeki SMS Gateway bude hledat uživatele v této tabulce. (Obrázek 17) Nezapomeňte hesla zahashovat, jak vidíte níže:
INSERT INTO user (User, Password)
VALUES ("Ozeki", MD5('123451')),
	   ("smppuser", MD5("qwe123"));

vytvoření uživatelů v databázi
Obrázek 17 - Vytvoření uživatelů v databázi

Nakonec, pokud se SMPP klient připojí s uživatelským jménem a heslem, které jste vytvořili v databázi, uvidíte, že se uživatel objeví v sekci Users and applications v SMS Gateway (Obrázek 18).

připojený SMPP uživatel
Obrázek 18 - Připojený SMPP uživatel

Často kladené otázky

Podporuje vaše brána clustering na více serverech a jak k němu dochází?

Pro scénáře s vysokým počtem uživatelských připojení nabízí Ozeki SMS Gateway řešení clusteringu pro zvýšení škálovatelnosti služby. Cluster se skládá ze skupiny nezávislých počítačů, každý vybavený softwarem Ozeki. Každá instance Ozeki se nezávisle připojuje ke svým určeným poskytovatelům SMS služeb a obsluhuje uživatele autonomně, bez závislosti na ostatních členech clusteru.

Strategie vyvažování zátěže:

Clustering Ozeki SMS Gateway využívá dvě hlavní metody pro distribuci připojení klientů mezi členy clusteru:

  1. Výběr serveru pomocí DNS: Tento přístup využívá algoritmus round-robin na DNS serveru. Když klient požaduje službu, DNS server vrátí IP adresy z fondu přiřazeného clusteru, čímž efektivně distribuuje připojení mezi dostupné servery.
  2. Předem vybraný router s NAT (Network Address Translation): V této metodě předem nakonfigurovaný router využívá NAT k distribuci příchozího provozu mezi servery clusteru. Tento přístup nabízí větší kontrolu nad vyvažováním zátěže ve srovnání s metodou založenou na DNS.
Výhody clusteringu:
  • Zvýšená škálovatelnost: Clustering umožňuje horizontální škálování, což vám umožňuje přidávat další servery do clusteru pro zvýšení kapacity a zvládnutí rostoucího počtu uživatelů.
  • Větší dostupnost: Pokud dojde k problému na jednom serveru, zbývající členové clusteru pokračují v provozu, což zajišťuje kontinuitu služby.
  • Lepší výkon: Rozložení zátěže na více serverů snižuje zatížení jednotlivých strojů, což vede k lepšímu celkovému výkonu a rychlejším odezvám pro uživatele.

Nemohu odeslat více než 6 zpráv za sekundu, přestože mám licenci na 10 MPS. Jaký může být problém? Jaké je schéma škálovatelnosti softwaru?

Zažíváte pomalé doručování zpráv v Ozeki SMS Gateway? Zde je několik potenciálních problémů, které je třeba prozkoumat:

Správa fronty zpráv:

  • Velikost odchozí pošty: Sledujte velikost fronty odchozích zpráv. Ideálně by měla být mezi 100 a 2 000 zprávami. Trvale nízká fronta (0–100) naznačuje nedostatek zpráv pro odesílání. Naopak velmi velká fronta (přes 100 000) ukazuje, že zdroj zpráv přetěžuje systém.
  • Automatické mazání zpráv: Zvažte zapnutí automatického mazání starých zpráv v "Edit/Server Preferences". Tím zabráníte nadměrnému hromadění fronty a snížení výkonu.
Systémové a síťové zdroje:
  • Výkon hardwaru: Použijte Správce úloh Windows k identifikaci procesů, které spotřebovávají nadměrné množství CPU. Defragmentace disku, spořiče obrazovky, antivirový software nebo automatické aktualizace mohou dočasně ovlivnit výkon.
  • Šířka pásma sítě: Ověřte dostatečnou uploadovou šířku pásma (ideálně nad 256 Kbps). Snižte síťové přetížení uzavřením aplikací náročných na šířku pásma, jako je streamování videa nebo software pro sdílení souborů.
Externí faktory:
  • Omezení poskytovatele SMS: V některých případech může být systém poskytovatele SMS služeb pomalejší než váš. Konzultujte s ním optimální nastavení velikosti okna v "SMPP service provider configuration form". Menší velikost okna může omezit rychlost odesílání tím, že čeká na potvrzení před odesláním dalších zpráv.
Řešení problému:
  • Udržujte optimální velikost fronty odchozích zpráv: Snažte se o stabilní tok zpráv udržováním fronty v doporučeném rozsahu (100–2 000 zpráv).
  • Implementujte automatické mazání zpráv: Nastavte software tak, aby automaticky odstraňoval staré zprávy pomocí "Edit/Server Preferences".
  • Minimalizujte příchozí provoz: Pokud je to možné, snižte objem příchozích zpráv, jako jsou potvrzení o doručení, aby se zjednodušil proces odesílání.
  • Optimalizujte výkon hardwaru: Identifikujte a uzavřete aplikace náročné na zdroje pomocí Správce úloh Windows.
  • Upgradujte šířku pásma sítě (pokud je to nutné): Zvažte upgrade internetového připojení, abyste zajistili dostatečnou uploadovou kapacitu.
  • Konzultujte s poskytovatelem SMS: Prodiskutujte optimální nastavení velikosti okna s vaším poskytovatelem SMS služeb, abyste zlepšili výkon odesílání.
Systematickým řešením těchto potenciálních příčin můžete efektivně odstraňovat problémy s pomalým přenosem zpráv a zajistit optimální výkon v Ozeki SMS Gateway.

More information