Well I finally found a way to pass the proper information to each vertex, getting the desired light.
http://www.youtube.com/watch?v=PyfMK6QSaVA
I'm using the "tangent" vector from the Mesh object to pass the rotation and scale of each vertex to the shader. Then in the shader I create a rotation matrix with those values, and then I transform the normal with this matrix.
Still pendent making it works with multiple lights, seems something wrong in the material but not in the shader. DirectionalLights require a modification too.