[Users-es] OpenSer: ACL's en multidominio

Jesus Rodriguez jesusr at voztele.com
Thu Aug 16 22:43:52 CEST 2007


Hola Iñaki,


> Hola, esta vez en vez de preguntar algo voy a compartir un cachito  
> de código
> del que me siento orgulloso :)
>
> Se trata de un mecanismo para implementar permisos personalizados  
> (ACL's) en
> llamadas entrantes a cada dominio, y funciona en modo multidominio.
>
> Ya puestos he empezado un blog XD
>
> Pues nada, a ver qué os parece, toda opinión es bienvenida:
>
>   http://blog.aliax.net/2007/08/openser-acls-multidominio.html
>
> Saludos.
>
> PD: En caso de opinar casi prefiero que lo hagáis aquí en la lista  
> y no en el
> blog.


Pués aquí va... sólo por criticar un poco porque tal y como está ya  
me parece bien :)

- En la query, la línea:

   (to_username IS NULL OR to_username = '$rU') AND

   te puede dar problemas si usas alias. Deberías resolver primero el  
alias para que $rU sea el destinatario final que deberia ser el  
username de la base de datos.

- Esta asignación en el bloque del avp_check() creo que sobra: $avp 
(s:action) = "REJECT";

- Y este else:

   else if ($avp(s:action) == "ACCEPT") {

   si no es para el xlog() te lo puedes ahorrar ya que al mirar  
primero que sea (ACCEPT||REJECT) y después que sea REJECT, al final  
sólo queda que pueda ser ACCEPT y como no necesitas hacer nada en ese  
caso, el if no es necesario.

- El texto que tienes encima del route(6) que empieza con  
"Importante", dices que "Sólo tiene sentido mirar el grupo del  
llamante en el caso en que pertenezca al grupo del llamado" y creo  
que debería decir "sólo tiene sentido mirar el grupo del llamante en  
el caso en que pertenezca al dominio del llamado"... al menos es lo  
que haces en el código :)

- En el último trozo de código dónde miras se es un INVITE o un  
MESSAGE, primero miras los grupos, después los permisos y después  
haces la autenticación. Yo cambiaría el orden a primerio autenticar y  
después todo lo demas... puedes ahorrarte unas cuantas queries a la  
base de datos.


Como comentario a parte de este tema... ¿porqué no quieres aceptar  
libremente llamadas desde dominios externos?. De la misma forma que  
te pueden llamar desde cualquier número PSTN a lo mejor deberían  
poder llamarte desde cualquier dirección SIP, ¿no?... esta es una  
discusión entretenida cuando hablas con proveedores de VoIP y te das  
cuenta de las diferentes "políticas" y sobre todo, motivaciones que  
tiene cada uno para aceptar o no llamadas desde dominios externos.  
Quizás podrías añadir en tu código que sea una opción del usuario el  
aceptar o no llamadas desde cualquier dominio externo.


Saludos
JesusR.

------------------------------------
Jesus Rodriguez
VozTelecom Sistemas, S.L.
jesusr at voztele.com
http://www.voztele.com
Tel. 902360305
-------------------------------------








More information about the Users-es mailing list