Types d'attribut RADIUS
Ces constantes définissent des types d'attribut RADIUS qui peuvent être utilisées avec les fonctions radius_put_addr(), radius_put_attr(), radius_put_int() et radius_put_string().
-
RADIUS_USER_NAME
(entier) -
L'attribut User-Name. La valeur de l'attribut doit être une chaîne de caractères contenant le nom de l'utilisateur désirant s'authentifier, et peut être définie en utilisant la fonction radius_put_attr().
-
RADIUS_USER_PASSWORD
(entier) -
L'attribut User-Password. La valeur de l'attribut doit être une chaîne de caractères contenant le mot de passe de l'utilisateur, et peut être définie en utilisant la fonction radius_put_attr(). Cette valeur sera brouillée pendant la transmission tel que décrit à la » section 5.2 de la RFC 2865.
-
RADIUS_CHAP_PASSWORD
(entier) -
L'attribut Chap-Password. La valeur de l'attribut doit être une chaîne contenant le premier octet (qui est l'identifiant CHAP), puis la sous une sous-séquence de 16 octets contenant le hash MD5 de l'identifiant CHAP, le mot de passe en clair, et la valeur du challenge CHAP, le tout, concaténés. Notez que la valeur du challenge CHAP doit aussi être envoyé séparément dans l'attribut RADIUS_CHAP_CHALLENGE.
Exemple #1 Utilisation des mots de passe CHAP
<?php // D'abord, nous créons un gestionnaire d'authentification et une requête. $radh = radius_auth_open(); radius_add_server($radh, $server, $port, $secret, 3, 3); radius_create_request($radh, RADIUS_ACCESS_REQUEST); // Supposons que $password contient le mot de passe en clair : // Génération du challenge. $challenge = mt_rand(); // Spécifie un identifiant CHAP. $ident = 1; // Ajout de l'attribut Chap-Password. $cp = md5(pack('Ca*', $ident, $password.$challenge), true); radius_put_attr($radh, RADIUS_CHAP_PASSWORD, pack('C', $ident).$cp); // Ajout de l'attribut Chap-Challenge. radius_put_attr($radh, RADIUS_CHAP_CHALLENGE, $challenge); /* A partir d'ici, nous pouvons ajouter les autres attributs * et appeler la fonction radius_send_request(). */ ?>
-
RADIUS_NAS_IP_ADDRESS
(entier) -
L'attribut NAS-IP-Address. La valeur de l'attribut attendue est l'adresse IP du client RADIUS encodé sous la forme d'un entier, qui peut être définie en utilisant la fonction radius_put_addr().
-
RADIUS_NAS_PORT
(entier) -
L'attribut NAS-Port. La valeur de l'attribut attendue est le port physique de l'utilisateur sur le client RADIUS, encodé sous la forme d'un entier, qui peut être définie en utilisant la fonction radius_put_int().
-
RADIUS_SERVICE_TYPE
(entier) -
L'attribut Service-Type. La valeur de l'attribut indique le type de service que l'utilisateur requète, et doit être un entier, qui peut être défini en utilisant la fonction radius_put_int().
Des constantes sont fournies pour représenter les valeurs possibles de cet attribut. Les voici :
RADIUS_LOGIN
RADIUS_FRAMED
RADIUS_CALLBACK_LOGIN
RADIUS_CALLBACK_FRAMED
RADIUS_OUTBOUND
RADIUS_ADMINISTRATIVE
RADIUS_NAS_PROMPT
RADIUS_AUTHENTICATE_ONLY
RADIUS_CALLBACK_NAS_PROMPT
-
RADIUS_FRAMED_PROTOCOL
(entier) -
L'attribut Framed-Protocol. La valeur de l'attribut attendue est un entier, indiquant le framing à utiliser pour l'accès, et peut être définie en utilisant la fonction radius_put_int(). Les valeurs possibles pour cet attribut sont :
RADIUS_PPP
RADIUS_SLIP
RADIUS_ARAP
RADIUS_GANDALF
RADIUS_XYLOGICS
-
RADIUS_FRAMED_IP_ADDRESS
(entier) -
L'attribut Framed-IP-Address. La valeur attendue est une adresse du réseau utilisateur encodé sous la forme d'un entier, qui peut être définie en utilisant la fonction radius_put_addr() et récupérée en utilisant la fonction radius_cvt_addr().
-
RADIUS_FRAMED_IP_NETMASK
(entier) -
L'attribut Framed-IP-Netmask. La valeur attendue est un netmask du réseau utilisateur, encodé sous la forme d'un entier, qui peut être définie en utilisant la fonction radius_put_addr() et récupérée en utilisant la fonction radius_cvt_addr().
-
RADIUS_FRAMED_ROUTING
(entier) -
L'attribut Framed-Routing. La valeur attendue est un entier indiquant la méthode de routage pour l'utilisateur, qui peut être définie en utilisant la fonction radius_put_int().
Valeurs possibles :
- 0 : Aucun routage
- 1 : Envoi des paquets de routage
- 2 : Ecoute des paquets de routage
- 3 : Envoi et écoute
-
RADIUS_FILTER_ID
(entier) -
L'attribut Filter-ID. La valeur attendue est une implémentation spécifique, humainement lisible, de chaînes de filtres, qui peuvent être définies en utilisant la fonction radius_put_attr().
-
RADIUS_FRAMED_MTU
(entier) -
L'attribut Framed-MTU. La valeur attendue est un entier, indiquant le MTU à configurer pour l'utilisateur, et peut être définie en utilisant la fonction radius_put_int().
-
RADIUS_FRAMED_COMPRESSION
(entier) -
L'attribut Framed-Compression. La valeur attendue est un entier, indiquant le protocole de compression à utiliser, et peut être définie en utilisant la fonction radius_put_int(). Valeurs possibles :
RADIUS_COMP_NONE
: Aucune compressionRADIUS_COMP_VJ
: Compression de l'en-tête VJ TCP/IPRADIUS_COMP_IPXHDR
: Compression de l'en-tête IPX-
RADIUS_COMP_STAC_LZS
: Compression Stac-LZS (ajouté en PECL radius 1.3.0b2)
-
RADIUS_LOGIN_IP_HOST
(entier) -
L'attribut Login-IP-Host. La valeur attendue est l'adresse IP de connexion de l'utilisateur, encodée sous la forme d'un entier, qui peut être défini en utilisant la fonction radius_put_addr().
-
RADIUS_LOGIN_SERVICE
(entier) -
L'attribut Login-Service. La valeur attendue est un entier indiquant le service sur lequel l'utilisateur se connecte sur l'hôte d'identification. La valeur peut être convertie en un entier PHP via la fonction radius_cvt_int().
-
RADIUS_LOGIN_TCP_PORT
(entier) -
L'attribut Login-TCP-Port. La valeur attendue est un entier indiquant le port sur lequel l'utilisateur se connecte sur l'hôte d'identification. La valeur peut être convertie en un entier PHP via la fonction radius_cvt_int().
-
RADIUS_REPLY_MESSAGE
(entier) -
L'attribut Reply-Message. La valeur attendue est une chaîne de caractères contenant un texte qui peut être affiché à l'utilisateur en réponse à une requête d'accès.
-
RADIUS_CALLBACK_NUMBER
(entier) -
L'attribut Callback-Number. La valeur attendue est une chaîne de caractères contenant la chaîne de numérotation à utiliser pour la fonction de rappel.
-
RADIUS_CALLBACK_ID
(entier) -
L'attribut Callback-Id. La valeur attendue est une chaîne contenant le nom de l'implémentation spécifique de la place à appeler.
-
RADIUS_FRAMED_ROUTE
(entier) -
L'attribut Framed-Route. La valeur attendue est une chaîne contenant un jeu de routes d'implémentation spécifique à configurer pour l'utilisateur.
-
RADIUS_FRAMED_IPX_NETWORK
(entier) -
L'attribut Framed-IPX-Network. La valeur attendue est un entier contenant le réseau IPX à configurer pour l'utilisateur, ou 0xFFFFFFFE pour indiquer que le client RADIUS doit sélectionner le réseau, et peut être accédé via la fonction radius_cvt_int().
-
RADIUS_STATE
(entier) -
L'attribut State. La valeur attendue est une chaîne contenant l'implémentation définie incluse dans un Access-Challenge depuis un serveur qui doit être inclus dans la sous-séquence Access-Request, et peut être défini en utilisant la fonction radius_put_attr().
-
RADIUS_CLASS
(entier) -
L'attribut Class. La valeur attendue est une chaîne arbitraire incluant le message d'un Access-Accept qui doit être envoyé au serveur de comptes dans les messages Accounting-Request, et peut être défini via la fonction radius_put_attr().
-
RADIUS_VENDOR_SPECIFIC
(entier) -
L'attribut Vendor-Specific. En général, les valeurs de l'attribut du vendeur doivent être définies en utilisant les fonctions radius_put_vendor_addr(), radius_put_vendor_attr(), radius_put_vendor_int() et radius_put_vendor_string(), plutôt que directement.
Cette constante est utile lors de l'interprétation des attributs spécifiques du vendeur dans les réponses d'un serveur RADIUS ; lorsqu'un attribut spécifique du vendeur est reçu, la fonction radius_get_vendor_attr() doit être utilisée pour accéder à l'identifiant du vendeur, le type d'attribut et la valeur de l'attribut.
-
RADIUS_SESSION_TIMEOUT
(entier) -
Timeout de la session
-
RADIUS_IDLE_TIMEOUT
(entier) -
Durée d'expiration
-
RADIUS_TERMINATION_ACTION
(entier) -
Action de termination
-
RADIUS_CALLED_STATION_ID
(entier) -
Identifiant de la station appelée
-
RADIUS_CALLING_STATION_ID
(entier) -
Identifiant de la station appelant
-
RADIUS_NAS_IDENTIFIER
(entier) -
Identifiant NAS
-
RADIUS_PROXY_STATE
(entier) -
Statut du Proxy
-
RADIUS_LOGIN_LAT_SERVICE
(entier) -
Service d'identification LAT
-
RADIUS_LOGIN_LAT_NODE
(entier) -
Noeud d'identification LAT
-
RADIUS_LOGIN_LAT_GROUP
(entier) -
Groupe d'identification LAT
-
RADIUS_FRAMED_APPLETALK_LINK
(entier) -
Lien framé Appletalk
-
RADIUS_FRAMED_APPLETALK_NETWORK
(entier) -
Réseau framé Appletalk
-
RADIUS_FRAMED_APPLETALK_ZONE
(entier) -
Zone framé Appletalk
-
RADIUS_CHAP_CHALLENGE
(entier) -
Challenge
-
RADIUS_NAS_PORT_TYPE
(entier) -
Type du port NAS :
RADIUS_ASYNC
RADIUS_SYNC
RADIUS_ISDN_SYNC
RADIUS_ISDN_ASYNC_V120
RADIUS_ISDN_ASYNC_V110
RADIUS_VIRTUAL
RADIUS_PIAFS
RADIUS_HDLC_CLEAR_CHANNEL
RADIUS_X_25
RADIUS_X_75
RADIUS_G_3_FAX
RADIUS_SDSL
RADIUS_ADSL_CAP
RADIUS_ADSL_DMT
RADIUS_IDSL
RADIUS_ETHERNET
RADIUS_XDSL
RADIUS_CABLE
RADIUS_WIRELESS_OTHER
RADIUS_WIRELESS_IEEE_802_11
-
RADIUS_PORT_LIMIT
(entier) -
Limite du port
-
RADIUS_LOGIN_LAT_PORT
(entier) -
Port d'identification LAT
-
RADIUS_CONNECT_INFO
(entier) -
Information de connexion
-
RADIUS_ACCT_STATUS_TYPE
(entier) -
Type de statut du compte :
RADIUS_START
RADIUS_STOP
RADIUS_ACCOUNTING_ON
RADIUS_ACCOUNTING_OFF
-
RADIUS_ACCT_DELAY_TIME
(entier) -
Délai maximal d'identification
-
RADIUS_ACCT_INPUT_OCTETS
(entier) -
Octets d'entrée d'identification
-
RADIUS_ACCT_OUTPUT_OCTETS
(entier) -
Octets de sortie d'identification
-
RADIUS_ACCT_SESSION_ID
(entier) -
Identifiant de session d'identification
-
RADIUS_ACCT_AUTHENTIC
(entier) -
Identification authentique, un parmi :
RADIUS_AUTH_RADIUS
RADIUS_AUTH_LOCAL
RADIUS_AUTH_REMOTE
-
RADIUS_ACCT_SESSION_TIME
(entier) -
Durée de la session d'identification
-
RADIUS_ACCT_INPUT_PACKETS
(entier) -
Paquets d'entrée d'identification
-
RADIUS_ACCT_OUTPUT_PACKETS
(entier) -
Paquets de sortie d'identification
-
RADIUS_ACCT_TERMINATE_CAUSE
(entier) -
Cause de la fin de l'identification, un parmi :
RADIUS_TERM_USER_REQUEST
RADIUS_TERM_LOST_CARRIER
RADIUS_TERM_LOST_SERVICE
RADIUS_TERM_IDLE_TIMEOUT
RADIUS_TERM_SESSION_TIMEOUT
RADIUS_TERM_ADMIN_RESET
RADIUS_TERM_ADMIN_REBOOT
RADIUS_TERM_PORT_ERROR
RADIUS_TERM_NAS_ERROR
RADIUS_TERM_NAS_REQUEST
RADIUS_TERM_NAS_REBOOT
RADIUS_TERM_PORT_UNNEEDED
RADIUS_TERM_PORT_PREEMPTED
RADIUS_TERM_PORT_SUSPENDED
RADIUS_TERM_SERVICE_UNAVAILABLE
RADIUS_TERM_CALLBACK
RADIUS_TERM_USER_ERROR
RADIUS_TERM_HOST_REQUEST
-
RADIUS_ACCT_MULTI_SESSION_ID
(entier) -
Identifiant d'une session multiple d'identification
-
RADIUS_ACCT_LINK_COUNT
(entier) -
Nombre de liens d'identification