..:o5k4r.m4dr1d


Encriptar y Desencriptar web.config [ASP.NET]

Recientemente, tenía que reconstruir un aplicativo de .Net, y en el archivo de configuración tenia un par de secciones encriptadas; tenía algo como esto:

< connectionStrings configProtectionProvider="DataProtectionConfigurationProvider" >
< EncryptedData>
< CipherData>
< CipherValue >JySX1m74va5BDVh7ETlc5KSKMfJGjQr5MryQyU7NZLKQmjpBrj3R82wqL9DWP6MHKXoU9qML0dNeXmh2KLBwIAjivBI5gLykLZDGoodM1ZYO7R0VvTRmlv9e+gL4uKGpY01wUAAAADZFcDLWco4SFKeVWKqB34g06a5w=< /CipherValue>
< /CipherData>
< /EncryptedData>
< /connectionStrings>

Afortunadamente, tenía acceso al equipo que encriptó esta sección, ya que únicamente desde ese equipo sería posible desencriptarlo.

Para desencriptar, usé el siguiente comando:

aspnet_regiis.exe -pdf "connectionStrings" "C:\Websites\wsPrueba"

Y para encriptar, sería con éste otro:

aspnet_regiis.exe -pef "connectionStrings" "C:\Websites\wsPrueba"

En donde:

-pdf: Comando utilizado para desencriptar. Recibe como parámetro una ruta física a una aplicación web.
-pef: Comando utilizado para encriptar. Recibe como parámetro una ruta física a una aplicación web
connectiontrings: Es la sección que queremos encriptar.
"C:\Websites\wsPrueba" es la ruta física de nuestro portal.

Espero les sea útil.

Anuncios

Javascript and CSS reference on MasterPage

En un desarrollo que estoy haciendo, en ASP .Net, Framework 3.5, tenía que incluir algunos scripts para cubrir una necesidad, y las referencias para incluir CSS ó JS, es ya muy conocida por todos:


<*link rel="stylesheet" href="/css/grid.css" type="text/css" media="screen" */>
<*script src="/js/jquery-1.6.min.js" type="text/javascript"><*/script>
<*/code>

Pero el problema viene cuando lo tienes que usar en una MaterPage y cuando la ASPX y la MasterPage están en diferentes carpetas, es muy común que no tome la ubicación, aún y cuando se use ~, que como sabemos sirve para indicar el folder raíz.. esto sucede básicamente por el uso del ToolkitScriptManager.

La solución para este caso, es en el HTML de la MasterPage usar la referencia de ésta manera (sólo quita los asteriscos *):


<*head runat="server">
<*title><*/title>
<*link href="<%# ResolveUrl("~/")%>css/custom-theme/jquery-ui-1.8.21.custom.css"
rel="stylesheet" type="text/css" /*>
<*script src="<%# ResolveUrl("~/")%>Scripts/jquery-ui-1.8.20.min.js" type="text/javascript"><*/script>
<*asp:ContentPlaceHolder ID="head" runat="server"><*/asp:ContentPlaceHolder>
<*/head>

Y en el codeBehind de la MasterPage, agregar el siguiente método:


protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
Page.Header.DataBind();
}