none
Encryptar valor de parametro en URL - MVC C# RRS feed

  • Pregunta

  • Hola a todos,

    Existe un forma de encriptar el valor del parámetro de una url

    Algo así :

    Porque en mi aplicación me muestra : A simple vista se sabe que el ID es 1.

    http://localhost:50909/Principal/Index/IdUser?=1

    Que el valor no pueda verse :

    http://localhost:50909/Principal/Index/IdUser?=fPIdYR_Iuc0&list=RDfPIdYR_Iuc0

    **** Que tenga la forma como si de un token se tratáse. Es posible? Si lo es, tengo que crear mi propio método de ecrypt/decrypt o existe alguna funcionalidad el MVC que me ayude.

    Saludos y gracias.


    • Editado Gladys CM jueves, 11 de agosto de 2016 22:45 título con errores de html por la tílde
    jueves, 11 de agosto de 2016 22:45

Respuestas

  • hola

    claro que es posible

     Encrypt and Decrypt URL in MVC 4

    y una tecnica interesante es usar atributos en el action que apliquen la exnriptacion sobre la url que generan

    como veras define un EncryptedActionParameterAttribute

    el cual defines como atributo en el action para que aplique la encriptacion sobre los valores de la url

    y usas el @Html.EncodedActionLink() para definir la url del link con los valores encriptados

    basicamente el @Html.EncodedActionLink() genera el link y el EncryptedActionParameterAttribute interpreta la url para inyectar los valroes de los parametros del action

    una interesante implementacion, analiza si resuelve tu problema

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 11 de agosto de 2016 23:56

Todas las respuestas

  • Gladys CM,

    De este punto se ha tratado mucho hace unos meses, te dejo el siguiente enlace: Uso de HiddenFor, te recomiendo lo leas todo. Son los intentos de un usuario de realizar lo mismo que tú pretendes, al final -espero estar en lo correcto- tuvo que cambiar la forma de hacer peticiones mediante AJAX para que no se muestre la URL al hacer un POSTBACK, sin embargo imagino que a estas alturas concluyó que es innecesario realizar dicha acción. 


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    jueves, 11 de agosto de 2016 23:18
  • hola

    claro que es posible

     Encrypt and Decrypt URL in MVC 4

    y una tecnica interesante es usar atributos en el action que apliquen la exnriptacion sobre la url que generan

    como veras define un EncryptedActionParameterAttribute

    el cual defines como atributo en el action para que aplique la encriptacion sobre los valores de la url

    y usas el @Html.EncodedActionLink() para definir la url del link con los valores encriptados

    basicamente el @Html.EncodedActionLink() genera el link y el EncryptedActionParameterAttribute interpreta la url para inyectar los valroes de los parametros del action

    una interesante implementacion, analiza si resuelve tu problema

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 11 de agosto de 2016 23:56
  • Buenas tardes muy util tu respuesta pero tengo un problema al dar click en el enlace va a la vista pero esta viene vacia antes estaba trabajando con :

    <li><a href="/Dpersonales/Index?id=@aluid"><i class="fa fa-suitcase"></i> Datos Personales</a></li>

    y me devuelve  la vista con los datos personales de una persona donde el parámetro que recupera los datos es @aluid

    al implementar 

    <li class="active"> @Html.EncodedActionLink(linkText: null, actionName: "Index", controllerName: "Dpersonales", routeValues: new { aluid = "@aluid" }, htmlAttributes: null)<i class="fa fa-info-circle"></i> D. Personales</li>

    me recupera la vista pero sin datos.

    Espero me puedan ayudar

    miércoles, 5 de abril de 2017 20:49