Modèle de code source pour le portail Web externe (Controller 4.1.5 ou supérieur)

Explications sur le Q&A
Mis à jour07-10-2023 08:49:58 AM 47377
Ce document concerne les modèles suivants : 

Convient pour Omada Controller 4.1.5 ou supérieur.

Pour Omada Controller 3.1.4 à 3.2.17, veuillez vous référer à FAQ2390

Pour Omada Controller 3.0.5 ou inférieur, veuillez vous référer à FAQ916

 

Ce document décrit les exigences lors de l'établissement d'un serveur de portail Web externe. Dans Omada Controller, le portail Web externe ne peut être utilisé que lorsque le type d'authentification du portail est un serveur Radius externe.

 

L'image ci-dessous illustre le flux de travail entre le client sans fil, EAP, le contrôleur Omada, le portail Web externe et le serveur Radius. Cela vous aidera à mieux comprendre les exigences d'établissement d'un serveur de portail Web externe.

https://static.tp-link.com/external_web_process_1595904297516s.png

 

1. Pour les clients sans fil et les clients câblés, lorsqu'ils sont connectés au SSID du réseau sans fil ou du réseau LAN câblé et tentent d'accéder à Internet, EAP ou la passerelle intercepte la requête HTTP du client, puis la redirige vers le contrôleur Omada. (Étape 1 et Étape 2)

2. Le contrôleur Omada redirige ensuite la demande du client vers la page du portail externe en répondant une réponse HTTP avec le code d'état 302 Found au client. (Étape 3 et Étape 4)

3. Le client envoie une requête HTTP/HTTPS GET au portail Web externe avec le paramètre " ?target=target_controller_ip&targetPort=target_controller_port&clientMac=client_mac&clientIp=client_ip&raidusServerIp=radius_server_ip&apMac=ap_mac&gatewayMac=gateway_mac&scheme=scheme&ssidName==ssid_name&radioId=radio_id (0 pour Radio 2.4G, 1 pour radio 5G )&vid=vid&originUrl=redirecturl (si vous n'avez pas défini l'URL de redirection après que les clients sans fil/câblés ont passé l'authentification du portail, l'URL de redirection par défaut dépend des clients sans fil) ».
Par exemple: "
https://www.externalportal.com/?target=172.30.30.113&targetPort=8088&clientMac=F8-1E-DF-AA-AA-AA&clientIP=172.30.30.103&raidusServerIp=172.30.30.120&apMac=AC-84-C6-BB- BB-BB&GatewayMac=172.30.0.1&scheme=https&ssidName=eap_test&radioId=1&originalUrl=https%3A%2F%2Fwww.tp-link.com ” (Étape 5)

4. Le serveur de portail Web externe doit pouvoir obtenir la valeur des paramètres clientMac, clientIp, apMac, gatewayMac, ssidName, radioId, vid, scheme, originUrl . Ensuite, le serveur de portail Web externe doit rediriger le client vers le contrôleur avec les informations de nom d'utilisateur, mot de passe, clientMac, clientIp, apMac, gatewayMac, ssidName, scheme, vid, radioId, originUrl. (Étape 6)

5. Le client envoie des paquets HTTP/HTTPS POST à ​​(http) https://target_controller_ip:targetport/portal/radius/auth (ou radius/browserauth) avec le format JSON (ou formulaire HTML) dans le corps du message HTTP après la soumission. La valeur par défaut Le "targetport" du portail est 8843 (Step7). Pour la différence entre radius/auth et radius/browserauth, veuillez vous référer à Demo and api part.

Remarque : à partir de Controlle r 5.0, si l'API "radius/auth" est utilisée, le champ "Access-Control-Allow-Origin:URL" doit être soumis dans l'en-tête HTTP pour améliorer la sécurité lors du partage de ressources cross-origin (CORS) . Par exemple, si le nom de domaine de votre portail Web externe est « www.tplinkportal.com », vous devez ajouter « Access-Control-Allow-Origin:https://www.tplinkportal.com ». Veuillez télécharger la démo à la fin de l'article pour référence.

6. Omada Controller communique avec le serveur Radius pour vérifier le nom d'utilisateur et le mot de passe. (Étape 8 et Étape 9)formulaire

7. Si l'authentification est réussie, c'est-à-dire si Access-Accept est reçu du serveur radius, Omada Controller redirigera une page de réussite intégrée ou une page Web prédéfinie en fonction de la configuration des clients. (Étape 10)

Démo et API :

De 4.1.5 à 5.1.0, nous fournissons l'api : target_controller_ip:targetport/portal/radius/auth avec la soumission au format JSON,

Le modèle html ci-dessous est une démonstration simple pour développer votre portail Web externe en utilisant Omada Controller en utilisant le format JSON :

Démonstration de serveur Web externe (JSON)

Lorsque HTTPS est utilisé du côté du portail Web et que HTTP est utilisé du côté du contrôleur omada, l'accès AJAX causera des problèmes d'accès interdomaine de CORS et sera intercepté par le navigateur, nous fournissons donc un formulaire HTML soumettant ap i depuis Omada Controller 5.3.1 : target_controller_ip:targetport/portal/radius/browserauth , et il réalise le saut de page sur le back-end

Le modèle HTML ci-dessous est une autre démo utilisant le formulaire HTML :

Démonstration de serveur Web externe (formulaire HTML)

Note:

1. Si vous utilisez Omada Cloud-Based Controller (CBC), seul HTTPS POST vers l'API "browserauth" avec le formulaire HTML est pris en charge pour des raisons de sécurité. Pour CBC, veuillez utiliser le domaine de votre CBC au lieu de "target_controller_ip:targetport" dans l'URL pointant vers l'API "browserauth".

Par exemple, pour le CBC avec l'URL dans cette figure, l'API serait " https://aps1-omada-controller.tplinkcloud.com/portal/radius/browserauth "

2. Si votre contrôleur (4.1.5 ou supérieur) est mis à niveau à partir du contrôleur 3. xx, veuillez noter que nous avons modifié certains "noms" des paramètres.

Nom (V3.x)

Nom (V4.x)

Taper

Remarque

clientMac

clientMac

chaîne

adresse MAC du client

clientIp

clientIp

chaîne

adresse IP du client

ap

apMac

chaîne

Adresse MAC AP (uniquement pour ap)

 

passerelleMac

chaîne

Adresse MAC de la passerelle (uniquement pour l'authentification filaire)

 

vidéo

entier

vid (uniquement pour l'authentification filaire)

ssid

ssidName

chaîne

nom de SSID

identifiant radio

identifiant radio

entier

0 : 2,4 GHz, 1 : 5 GHz (uniquement pour ap)

/

authType

entier

Le type d'authentification réel ne prend en charge que les méthodes d'authentification RADIUS externe et Hotspot RADIUS.

2 : RAYON externe ; 8 : RAYON du point d'accès

URL de redirection

originUrl

chaîne

URL de redirection

nom d'utilisateur

nom d'utilisateur

chaîne

nom d'utilisateur d'authentification

mot de passe

mot de passe

chaîne

mot de passe d'authentification

Notez qu'apMac et gatewayMac n'existent pas dans la même requête, lorsque les clients câblés s'authentifient, veuillez laisser l'apMac vide

3. À l'étape 7, si votre formulaire contient des caractères non ASCII (tels que le nom SSID est le chinois ou d'autres langues), le codage UTF-8 doit être utilisé lors de l'envoi du HTTP/HTTPS POST au contrôleur.

4. Si vous choisissez l'accès ajax, veuillez noter le champ "Access-Control-Allow-Origin:URL" pour Controller 5.0 et supérieur.

5. Une démo de formulaire HTML et une API radius/browserauth sont recommandées.

 

Annexe : document API d'authentification et d'authentification du navigateur

portail/radius/auth (depuis Omada Controller 4.1.5)

Informations de base

Chemin /portail/radius/auth

Méthode POST

Paramètres de requête

En-têtes

Paramètres

Valeur

Requis

Type de contenu

application/json

Oui

Mettre en doute

Paramètres

Requis

Description

clé

Oui

Clé AES chiffrée par clé publique RSA, RSA/ECB/PKCS1Padding. Les 16 premiers octets sont la clé et les 16 derniers octets sont le IV.

Cette clé de 32 octets doit être encodée en URLBase64.

Corps

Paramètres

Taper

Requis

Description

clientMac

chaîne

Oui

adresse MAC du client

clientIP

Chaîne

 

Adresse IP du client

apMac

chaîne

Oui

Adresse MAC du point d'accès

passerelleMac

chaîne

Oui

adresse MAC de la passerelle

ssidName

chaîne

Oui

Nom SSID

vidéo

entier

Oui

ID VLAN

identifiant radio

entier

Oui

0 : 2,4 GHz 1 : 5 GHz

authType

entier

Oui

Cette entrée est le type d'authentification en temps réel. Seules les deux options suivantes sont prises en charge : 2 : RADIUS externe 8 : RADIUS du point d'accès

originUrl

chaîne

 

URL de redirection

nom d'utilisateur

chaîne

Oui

Le nom d'utilisateur pour l'authentification

mot de passe

chaîne

Oui

Le mot de passe pour l'authentification

Paramètres de réponse

Paramètres

Taper

Requis

Description

code d'erreur

entier

Oui

Code d'erreur

 

portail/radius/browserauth (depuis Omada Controller 5.3.1)

Informations de base

Chemin /portal/radius/browserauth

Méthode POST

Paramètres de requête

En-têtes

Paramètres

Valeur

Requis

Type de contenu

application/x-formulaire-www-urlencodé

Oui

Paramètres de chemin

Paramètres

Taper

Requis

Description

clientMac

chaîne

Oui

adresse MAC du client

clientIP

Chaîne

 

Adresse IP du client

apMac

chaîne

Oui

Adresse MAC du point d'accès

passerelleMac

chaîne

Oui

adresse MAC de la passerelle

ssidName

chaîne

Oui

Nom SSID

vidéo

entier

Oui

ID VLAN

identifiant radio

entier

Oui

0 : 2,4 GHz 1 : 5 GHz

authType

entier

Oui

Cette entrée est le type d'authentification en temps réel. Seules les deux options suivantes sont prises en charge : 2 : RADIUS externe 8 : RADIUS du point d'accès

originUrl

chaîne

 

URL de redirection

nom d'utilisateur

chaîne

Oui

Le nom d'utilisateur pour l'authentification

mot de passe

chaîne

Oui

Le mot de passe pour l'authentification

 

Paramètres de réponse

Paramètres

Taper

Requis

Description

code d'erreur

entier

Oui

Code d'erreur

Est-ce que ce FAQ a été utile ?

Vos commentaires nous aideront à améliorer ce site.

Produits Recommandés

De United States?

Infos produits, événements, services pour votre pays.