Wednesday, December 8, 2010

Personalizando La paginación de un gridview

Control ASP.NET

El gridview entre sus propiedades tiene el PagerSettings en el cual se puede configurar cómo se van a mostrar las páginas de un gridView. Si solo queremos ver eso, simplemente usamos el PagerSettings de esta manera:




Para este caso, lo tengo configurado con imágenes en vez de texto. En vez que diga: "Siguiente", se muestra una imágen de flechita con esa dirección.


Pero si quisieramos customizarlo a nuestro modo. Por ejemplo como se muestra en la siguiente imágen asi informando al usuario en qué página está:



Para ello tenemos el: PagerTemplate
Allí podemos agregar el código que querramos. Mi código para que se vea como la imágen es el siguiente:



Explico: Fácilmente podriamos colocar un ImageButton pero está con un LinkButton (el cual hace referencia por dentro a un div el cual a su vez tiene una clase y en dicha clase está una url de una imágen: llega a a ser la flechita. Pero si no querés llegar a tal punto de parametrización, simplemente dentro del linkButton podes meter una etiqueta img directamente con su src. Es que yo lo hice asi porque estoy manejando themes.) Pero por una extraña razón, solo acepta LINKBUTTON. Aun no pude saberlo a cabalidad o_O Pero tal como está el código alli, funciona a la perfección ;)

HaPPy Coding


P.D. Blogger no tiene la opción de poder colocar código de programación y por los signos de mas y menos que usa también el HTML se convierte todo en caos o_O Sorry pero Uds ya entenderán el código.

Wednesday, November 24, 2010

Los 10 hoaxes más famosos De La historia De internet


1. Niño enfermo
Son los hoaxes más utilizados y buscan establecer una cadena solidaria en el que el mensaje es enviado y reenviado cientos de veces aprovechándose de la solidaridad de las personas.
2. Bill Gates comparte su fortuna
Quizas sea tu el afortunado... En tres ocasiones distintas este hoax ha invadido la red y seguro que volverá en un futuro
3. Ladrones de Riñones
Uno de los hoax más antiguos que se conocen hace referencia a una leyenda urbana sobre ladrones de riñones que roban a inocentes victimas. Este mensaje es del año 99
4. Regalan Móviles
Nokia y Ericsson se vieron envueltos en una cadena de mensajes en el que se anunciaba a los participantes el regalo de un telefono móvil. Ambos desmintieron su participación, aunque los mensajes no cesaron de circular por la red, como minimo en tres ocasiones: abril 2000, mayo 2001, mayo 2002
5. Messenger
ICQ y Messenger han sido durante mucho tiempo victimas de los hoaxes. El último aparecido hace refeencia a la introducción de un nombre en tu lista de contactos que automáticamente te borra el contenido del disco duro.
6. Cierran Hotmail ¿?
Hotmail y Messenger han sido objeto en los últimos meses de distintos mensajes en los que se informaba de su desaparición o conversión en sistema de pago.
7. Cuidado con los virus de los teléfonos móviles
En dos ocasiones, como mínimo, han llegado a nuestros ordenadores, mensajes advirtiéndonos de posibles virus que afectan a nuestros teléfonos móviles. Fue en junio del 2000 y en enero del 2001.
8. Subject: ALERTA VIRUS!!!!!!! Por favor SEGUIR EL PROCEDIMIENTO
El usuario no debe dar mayor importancia a este mensaje. JDBGMGR.EXE es un archivo que instala el navegador Internet Explorer que, aunque no es crítico, se trata de un "debugger registrar for Java" según Microsoft, que NO DEBE SER BORRADO
9. Gatos Bonsai
Hay varios mensajes dando vueltas por correo electrónico repudiando un sitio llamado Bonsai Kitten desde el cual se venderían gatos bonsai.
Para lograrlo meterían a los gatos recién nacidos en frascos dentro de los cuales los alimentarían y les darían sustancias para ablandarles los huesos hasta que tomaran la forma del frasco.
10. El Fraude en las llamadas telefónicas
Se refiere al empleado que llama por teléfono y que pide al usuario que marque un número telefónico dejando, así, la línea abierta para cargar al abonado todas las conferencias que va a realizar.
Sumado a esta lista, pongo la que me acaban de enviar (que por cierto, ya he recibido varios)...
(Qué es un hoax? noticia falsa es un intento de hacer creer a un grupo de personas que algo falso es real)
"HUELGA DE CELULARES"
Te paso el texto para que lo identifiqués...

Para tomarlo en cuenta………………………….



BASTA DE ABUSOS, LAS OPERADORAS BOLIVIANAS SE HAN UNIDO PARA COBRARNOS LAS TARIFAS MAS CARAS DEL MUNDO, TOMAREMOS ACCION PARA DEFENDERNOS.


Usuarios de Telefonía Celular NUEVATEL, ENTEL Y TIGO:
Dejemos de darles de comer durante un tiempo, sin trabajo y que se den cuenta de que si esto sigue así, nosotros somos los que mandamos. Pon tu granito de arena y lo conseguiremos.

LAS EMPRESAS DE TELEFONÍA CELULAR NOS ESTÁN ROBANDO....URGENTE...!!POR FAVOR PRESTE ATENCIÓN A LA EXPLICACIÓN AL FINAL PARA REENVIAR ESTE MAIL.

En USA una compañía de celulares ofrece a sus clientes 2,000 minutos libres (SI, DOS MIL, LEYERON BIEN) por solo US$ 52.20

¿¿Quién gasta 2,000 minutos en un mes?? Usuarios comunes, seguro que no.

Si alguien lo gastara en nuestro país seguro pagaría un recibo o se tiraría en saldo muy superior a los U$S 52.20 que se pagan en USA.

¿¿¿CÓMO LLEGARON LOS NORTEAMERICANOS A ESTE BENEFICIO??? Mediante la UNIDAD. Sí , la unidad de la comunidad. Ni haciendo huelgas, ni rompiendo, ni quemando llantas, ni matando policias, ni nada. Solo de una manera:

NO USANDO EL TELÉFONO durante 5 días, las empresas se vieron obligadas a BAJAR LAS TARIFAS O QUEBRAR.

PONGÁMONOS LAS PILAS NOSOTROS PARA DEFENDERNOS...

Un paro de los usuarios no les hará quebrar, pero si las obligará a pensar en bajar de precio los servicios que prestan.

*LA PROPUESTA**: *

**Envíe este e-mail a todos aquellos que conozca para que los días 15 ,16 y 17 de ENERO DEL 2011 todos tengamos el celular apagado.

ES LA ÚNICA FORMA EN QUE PODREMOS EXPLICARLES A: VIVA, ENTEL Y TIGO, QUE NO SOMOS IGNORANTES NI VAMOS A SEGUIR PERMITIÉNDOLES QUE NOS METAN LA MANO EN EL BOLSILLO. ENTRE TODOS LOS OBLIGAREMOS A QUE BAJEN LAS TARIFAS, Y MEJOREN EL SERVICIO QUE ES TAN PESIMO.
SI NO NOS DEFENDEMOS NOSOTROS, NADIE MÁS LO VA A HACER.

*Datos: En 1999 en Argentina los ciudadanos obligaron a TELECOM y MOVISTAR a poner una tarifa reducida a INTERNET por medio de DESCOLGAR los teléfonos durante 15 minutos .

En USA lograron que las compañías proveedoras de Internet absorban el costo de la llamada, como comunicarse a un 0800 en vez de a un 0610.*

¿¿¿Por qué nosotros no lo intentamos con los servicios de celulares????

APAGUEN SUS CELULARES EL MAYOR TIEMPO POSIBLE LOS DÍAS 15,16 Y 17 DE ENERO DEL 2011 ¡¡¡FECHA HISTORICA!!!

Y si lo necesitan por negocios, eviten las llamadas que puedan. Programen desde ahora, tenemos tiempo para planificar esto!!

Usuarios y clientes convocamos a un paro nacional por 72 horas.

Porque somos los que mantenemos el sistema, apaguemos los celulares el

15,16 y 17 de ENERO 2011" LA UNION HACE LA FUERZA"

*Recuerden ENVIAR este mensaje a la mayor cantidad de Gente posible existe mucho tiempo para que ese dia nos hagamos respetar y tener unas tarifas justas como en otros paises.*

Envío este mensaje también para los que estan en el extranjero para que colaboren reenviandolo a sus contactos bolivianos.
Gracias

Monday, November 15, 2010

ReSeTeAr Un IdenTiTy

Cómo volver a 1 el identity en SQL SERVER...

Corriendo la siguiente línea de código, sencillito :D

DBCC CHECKIDENT (tabla, RESEED, 0)

Monday, November 1, 2010

Calendario ajax y CSS

El calendario que nos ofrece ajax es blanco y con letras negras, sin sabor pero tenemos Calendar Css Classes

que se encuentra en


http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/Calendar/Calendar.aspx


Yo solo utilizé algunas de esas clases y quedó así:



El estilo es el siguiente:

ESTILO 1 CELESTE

.cssCalendario {
background-color:#4F81BD;
font-family:Verdana, Geneva, sans-serif;
color:#FFFAFA;
}
.cssCalendario .ajax__calendar_header {
background-color:#376091;
font-family:Verdana, Geneva, sans-serif;
color:White;
}
.cssCalendario .ajax__calendar_hover {
text-decoration:underline;
font-weight:bold;
background-color:White;
color:#376091;
}

ESTILO 2 PLOMO

.cssCalendario {
background-color:#737373;
font-family:Verdana, Geneva, sans-serif;
color:#FFFAFA;
}
.cssCalendario .ajax__calendar_header {
background-color:#404040;
font-family:Verdana, Geneva, sans-serif;
color:White;
}
.cssCalendario .ajax__calendar_hover {
text-decoration:underline;
font-weight:bold;
background-color:White;
color:#737373;
}

Y finalmente, en el CalendarExtender control en su html, le colocan la siguiente propiedad:
CssClass="cssCalendario"

Happy Coding...

Thursday, October 28, 2010

¿Cuál es La diferencia entre direct cast y ctype?

DirectCast vs CType


CType puede convertir un tipo de dato diferente del indicado siempre y cuando esto sea posible. (Por ejemplo, de Double a Integer)



DirectCast al contrario no, por ejemplo de Double a Integer daría un error ya que Double no es del tipo Integer. Por tanto, si se sabe que el objeto a convertir debería ser del mismo tipo que el objeto una vez convertido, se recomiendo usar DirectCast.



A continuación, dejo algunos ejemplos que aclaran la situación.



Dim obj As Object = 1 ' obj contiene un entero

Dim str As String = CType(obj, String) ' Valido, CType convierte a
String
Dim entero As Integer = CType(obj, Integer) ' Valido, CType hace un cast a
Integer
Dim str1 As String = DirectCast(obj, String) ' Error, obj no contiene un
String
Dim entero1 As Integer = DirectCast(obj, Integer) ' Valido, obj contiene un
Integer


Tuesday, October 5, 2010

¿Dónde está el Business Intelligence?

Por lo general, yo lo utilizaba para reportes (.rdl) y se instalaba al instalar VisualStudio (2005) y en Archivo - Nuevo Proyecto - Allí aparecía...

Con VisualStudio 2008 no aparece... y esa pregunta me hice hoy (ya que hoy iba a hacer un reportito) y pues............ resulta que.........

Es ahora una herramienta aparte... Business Intelligence Development Studio (BIDS) y se instala al instalar las herramientas clientes de SQL Server 2008. Si tenes instalado el VS2008 y el SQLServer2008, bajo VS al dar Nuevo Proyecto, sale en los tipos de proyecto un tipo nuevo que se llama "Business Intelligence Projects", y dentro de esta categoría tenes (entre otras cosas) "Report Server Project"

haPPy ReporTing ;)


Monday, October 4, 2010

Cómo validar cajas De texto

Si estás usando ASP.NET, validar las entradas de cajas de texto por el lado del cliente, es sencillo (claro, debe estar habilitado el JavaScript para el browser)


Utilizando el control de Ajax, RequiredFieldValidator

Sus propiedades de este control sos:

TargetControlID: que el ID del control a validar (p.e.:txtNombre)
FilterType: Tipo de filtro. 3: Custrom, LowercaseLetters, Numbers, UppercaseLetters
FilterMode: 2: InvalidChars, ValidChars
y dependiendo del FilterMode, se listea los valid/invalid

Por ejemplo, yo deseo que en mi caja de texto, el usuario puede digitar lo que sea a exepción es caracteres especiales como ser: ª·¨¨'`~/Ç@#$%^&*()_-+=[]{}¡!<>¿?,;.:



O si quiero que solo digite Números:



o Solo Números y letras:



Lo cierto es que podes combinar a tu gusto y requerimiento

Happy coding...




Tuesday, September 14, 2010

Ciclo De vida De una página ASP.NET

Una página ASP.NET cuando está siendo cargada, por debajo está siendo pasada por distintas etapas de procesamiento. Existen los llamados "Eventos de Página" y eso lo podés localizar dentro de tu code-behind como la imágen mostrada.


Justamente las etapas por las que pasa toda página son esas... y lo siguiente es el órden. Es muy importante conocer el orden ya que así podemos escribir el código apropiado en el momento adecuado.

1.PreInit
2.Init
3.InitComplete
4.PreLoad
5.Load
6.Eventos de control
7.LoadComplete
8.PreRender
9.SaveStateComplete
10.Render
11.Unload

Pero surge una problemática cuando nuestra página ASP.NET tiene un USERCONTROL (ascx)... Hay eventos de página que primero pasa por el usercontro y luego por nuestro aspx.

Justamente ese problema tenía yo. De mi aspx necesitaba enviarle un valor a mi usercontrol y esto lo hacía desde su page_init pero primero pasaba por el page_init del usercontrol de modo que el valor nunca llegaba.

Pero los eventos de página no son los mismo que el de un usercontrol comparados al de un aspx. A continuación se muestra una imágen con los page events de un usercontrol



Como pueden notar, el usercontrol no tiene el evento PreInit asi que este podriamos usarlo para enviar un valor al usercontrol desde el formulario aspx en el caso de que necesitemos que lo reciba antes de su load.

El orden de una página ASP.NET con su usercontrol es como sigue:

.aspx - Page_PreInit()

.ascx - Page_Init()
.aspx - Page_Init()
.aspx - Page_Load()
.ascx - Page_Load()
.aspx - Page_PreRender()
.ascx - Page_PreRender()
.ascx - Page_Unload()
.aspx - Page_Unload()

Tuesday, August 17, 2010

Ajax: Accordion

Me gusta y aquí te va cómo utilizar el control de Accordion de Ajax.

Para ver cómo se ve (valga la redundancia),entra
aqui

Para empezar, si tenés el VS 2008, tenés que instalarte el ToolKit... si aún no lo has hecho, ingresa aquí para saber cómo.

Empezemos.

En el code html de Default.aspx de tu WebSite:

Primero te arrastras el ToolkitScriptManager, quedaria asi:



Luego,te arrastras el Accordion
Dentro de las etiquetras del Accordion, colocas entre etiquetas Panes y dentro de estas, metes todos los AccordionPane que desees... Dentro de estas, metes un Header y un Content. Y dentro del Content es justo el contenido.

Queria mas o menos asi, su estructura:



Ah, por cierto, en mi toolbar del blog no tengo la opción de escribir código pues no es un blog de programación... asi que si alguen tiene algun truco,bien, mientras, lo estoy metiendo dentro de un textarea... lo br se autocrean, uds. los eliminan...

De todos maneras, subí mi Default.aspx y el CSS que le dará estilo... ok?

Se puede bajar de aqui el codigo

Y de aqui la hoja de estilo

Happy Coding...

Monday, July 26, 2010

Allowsorting: gridview (ASP.NET)

Si tu grilla está enlazada desde código, el sorting u ordenamiento no funciona de la misma manera a como si estuviera enlazado desde la vista de diseño a un origen de datos (DataSourceID).

Por ejemplo, en el evento Sorting del gridview, este pedazo de código no funciona: (es decir, siempre se va al ASC y no entra al DESC) Pero para el segundo caso sí, porque... El GridView alternará de forma automática entre "ASC" o "DESC" en SortExpression en cada clic, para conmutar entre orden de clasificación ascendente o descendente.

Dim strOrderBy As String = e.SortExpression
Select Case e.SortDirection

Case SortDirection.Ascending
strOrderBy = strOrderBy + " ASC"
Me.prcCargarPersonas(strOrderBy)
Case SortDirection.Descending
strOrderBy = strOrderBy + " DESC"
Me.prcCargarPersonas(strOrderBy)
End Select

Para el primero, lo arreglé de esta manera (utilizando una variable de state)

Dim strOrderBy As String = e.SortExpression

Select Case Me.ViewState("Orden")
Case "ASC"
strOrderBy = strOrderBy + " ASC"
Me.prcCargarPersonas(strOrderBy)
ViewState("Orden") = "DESC"
Case "DESC"
strOrderBy = strOrderBy + " DESC"
Me.prcCargarPersonas(strOrderBy) 'este es mi método que carga y bindea mi
grilla
ViewState("Orden") = "ASC"
Case Else
strOrderBy = strOrderBy + " ASC"
Me.prcCargarPersonas(strOrderBy)
ViewState("Orden") = "ASC"
End Select

Todo dentro del evento SORTING del gridview. Previamente, se le añade la propiedad a tu gridview AllowSorting="True" y por cada columna a utilizar para el sort, se le añade la propiedad SortExpression="NombreColumnaBaseDeDatos"

Wednesday, June 30, 2010

Datagrid ASP.NET jscript y querystring

Muchas veces necesitamos pasar datos de una página a otra. Una manera es usando los querystring y a veces hay casos que a de esta otra página necesitamos pasar datos a los controles de la página padre. Me explico?

Tengo un formulario padre que llama a un popup, al cerrar el popup se necesita bajar ciertos datos a ciertas cajas de texto del formulario al que lo llamó.

Solucionamos esto con JavaScript.

El código JS sería...

function popupBusqueda(idForm,control1,control2,idAlmacen,idEmpresa)
{
aleatorio = (Math.round((Math.random()*99999)+1))
popUpBus =
window.open(idForm + '?formname=' + document.forms[0].name + '&Control=' +
control1 + '&Control2=' + control2 + '&idAlm=' + idAlmacen +
'&idEmp=' + idEmpresa,
aleatorio,"scrollbars=yes,status=yes,width=600,height=500,left=150,top=100");
}

Los parámetros, para este caso, son: el id del formulario,caja de texto1, caja de texto2 (a las que se bajaran los datos) , y los ids que necesitamos mandar para realizar el filtro en el popup.

Luego, utilizamos este método js en el formulario padre de la siguiente forma.
Dim strQueryString As String
strQueryString =
":popupBusqueda('fPopup.aspx','txt1','txt2', " + Me.id1.Value + ", " +
Me.id2.Value + ")"
Me.aBusqueda.HRef = "javascript:javascript" &
strQueryString

(Me.aBusqueda es un anchor.)

Después, en el formulario hijo o popup, en el load capturamos los valores del querystring:

queForm = Request.QueryString("formname")
y así se va haciendo con cada uno. Lo podemos poner en un string, en un view

En el If Not Page.IsPostBack Then, cargamos la grilla.
luego del DataBind(). Va un procedimiento que coloca un JS al linkbutton de la grilla (que es uno de tipo Select)

Public Sub recorrerGrilla()
For i As Integer = 0 To grdBusqueda.Items.Count
- 1
For j As Integer = 2 To grdBusqueda.Items(i).Cells.Count - 1

Dim
button As LinkButton = CType(grdBusqueda.Items(i).Cells(0).Controls(0),
LinkButton)

button.Attributes.Add("onclick", "window.opener.SetBuscar('"
+ queForm + "','" + queControl1 + "','" + queControl2 + "','" +
grdBusqueda.Items(i).Cells(1).Text + "','" + grdBusqueda.Items(i).Cells(2).Text
+ "'" + ");return false;")

Next
Next
End Sub

El js del SetBuscar es como sigue:

function SetBuscar(formName, idCod, idDscr,newCod,newDesc)
{
eval('var
theform = document.' + formName + ';');
popUpBus.close();
if (idCod !=
'') theform.elements[idCod].value = newCod;
if (idDscr != '')
theform.elements[idDscr].value = newDesc;
if (idCod != '')
__doPostBack(idCod,'');
}


Y fiiiiin...
haPPy Coding.

Thursday, June 24, 2010

Cómo agregar datos A un datagrid (VB.NET - ASP.NET) sin perdidas por Un postback

CóMo AgReGaR DaTos A un DataGrid (VB.NET - ASP.NET) SiN PeRdiDaS PoR Un PosTBaCk

El título ya detalla lo que se quiere hacer, no hay mucho por explicar. Vamos directo al código...

Primero, en el If Not IsPostBack Then del Page_Load, cargamos nuestra grilla normalmente y acto seguido le agregamos la siguiente línea de código: Session("Datos") = ds.Tables(0)

En el click de nuestro botón AGREGAR, programamos asi:


Dim dt As DataTable = DirectCast(Session("Datos"), DataTable)

Dim dr As
DataRow = dt.NewRow
dr("dcconccon") = Me.txtCodCli.Text
dr("dcconnoap")
= Me.txtNomCli.Text
dr("inalmcalm") = Me.cboAlmacenes.SelectedValue
dr("inalmnomb") = Me.cboAlmacenes.SelectedItem.Text
dt.Rows.Add(dr)

Me.dgrClientesXAlm.DataSource = dt
Me.dgrClientesXAlm.DataBind()

Session("Datos") = dt


Los rows o las filas de nuestro datatable deben coincidir con las de nuestra grilla. Los datos los extraemos de cajas de texto, combos u otro control.

Con esto, podemos guardar filas y filas de datos en nuestra grilla temporalmente hasta que decidamos mandarlas a la base de datos

Tuesday, June 22, 2010

Como extraer La cadena De conexion del Web.Config

Es muy simple...

Archivo WEB.CONFIG

Primero, debes editar el archivo xml Web.Config Dentro de la etiqueta "configuration" escribir la cadena de conexión a la base de datos:




En el caso de que utilices usuario y password, simplemente se lo agrega y quedaría así:



Lo cierto es que son muchos más valores que le podés agregar a tu cadena, en el siguiente link encontrarás todos: http://msdn.microsoft.com/es-es/library/system.data.sqlclient.sqlconnection.connectionstring(VS.80).aspx
ACCEDER DESDE VB.NET

Luego, en tu código, para acceder a la cadena es como sigue:



ALGO MÁS

Para que todo funcione,debes agregar la DLL System.Configuration a tu proyecto.
Compilas y ya.

Thursday, May 13, 2010

Hoax: cadenas De mensajes

¿Qué es un hoax? Es una noticia falsa, un intento de hacer creer a un grupo de personas que algo falso es real

¿Y un hoax informático? Es un mensaje de correo electrónico con contenido falso o engañoso y atrayente. Normalmente es distribuido en cadena por sus sucesivos receptores debido a su contenido impactante que parece provenir de una fuente seria y fiable o porque el mismo mensaje pide ser reenviado

Las personas que crean bulo suelen tener alguno de los siguientes objetivos:

Captar direcciones de correo (para mandar spam, virus, mensajes con phishing o más bulo a gran escala)
Intentar engañar al destinatario para que revele su contraseña o acepte un archivo de malware.
Confundir o manipular a la opinión pública de la sociedad


Uno de los hoax que están circulando ahora es el siguiente:


URGENTISIMOOOOOOOOOOOO !!!




POR FAVOR, HAZ CIRCULAR ESTE AVISO A TUS
AMISTADES, FAMILIA, CONTACTOS !!!
En los próximos días, debes estar atent@:
No abras ningún mensaje con un archivo anexo llamado: Invitación de FACEBOOK,
independientemente de quien te lo envíe. Es un virus queabre una antorcha
olímpica que quema todo el disco duro C de la computadora. Este virus vendrá de
una persona conocida que te
tenia en su lista de direcciones.. Es por eso
que debes enviar este mensaje a todos tus contactos.


Es preferible
recibir 25 veces este correo que recibir el virus y abrirlo.. Si recibes el
mensaje llamado: Invitación de FACEBOOK, aunque sea enviado por un amigo, no lo
abras y apaga tu maquina inmediatamente. Es el peor virus anunciado por CNN. Un
nuevo virus ha sido descubierto recientemente que ha sido clasificado por
Microsoft comoel virus mas destructivo que haya existido . Este virus fue
descubierto ayer por la tarde por Mc Afee. Y no hay arreglo aun para esta clase
de virus. Este virus destruye simplemente el Sector Zero del Disco Duro, donde
la información vital de su función es guardada.




ENVIA ESTE E-MAIL A
QUIENES CONOZCAS. COPIA ESTE CORREO A UNO NUEVO Y MANDALO A TODOS TUS AMIGOS.


RECUERDA:
SI LO ENVIAS A ELLOS, NOS BENEFICIAS A TODOS.

Por lo general, los hoax informáticos tienen estos temas:

**Alertas sobre virus incurables
**Falacias sobre personas, instituciones o empresas
**Mensajes de temática religiosa
**Cadenas de solidaridad
**Cadenas de la suerte
**Métodos para hacerse millonario
**Regalos de grandes compañías
**Leyendas urbanas

ASI QUE SI RECIBES UNO DE ESTOS TIPOS DE CADENAS, NO LOS REENVIES.

Wednesday, March 10, 2010

¿Qué es La impersonalizacion? (impersonate Asp.Net - suplantacion)

El archivo Web.config es un archivo XML en el cual se definen las configuraciones de las aplicaciones asp.net, aqui es donde se especifica la impersonalización.

La impersonalización es un concepto a tomar en cuenta en la seguridad en las aplicaciones web. Sin duda, habrán recursos a los que no todo el mundo tendrá acceso, por tanto, por seguridad, estarán restringidos y se requerirá tener permisos para poder usarlos. La pregunta es ¿qué hacer para que cualquier usuario de nuestra aplicación web tenga permisos para usar recursos sin poner en peligro la seguridad?

Una respuesta (entre otras) sería la impersonalización. Cada aplicación web cuenta con su archivo de configuración (Web.config) dentro de este archivo definimos el usuario con el que se va a conectar la aplicación.

Con la etiqueta Identity del web.config podemos impersonar cada aplicación ASP.NET para que se ejecute con un usuario distinto al del framework. Tambien es posible indicar un usuario distinto al del IIS en la misma etiqueta Identity. Indicándole un nombre de usuario y contraseña podemos hacer que la aplicación ASP.NET arranque con este usuario.




Resumen:

**Si la impersonalización False está habilitada entonces la aplicación se ejecuta bajo el usuario definido en el processModel.


**Si la impersonalización está en TRUE, pero no hay definido un usuario perteneciente a una cuenta de Windows, ASP.NET impersona al usuario pasado por IIS.

**Si la impersonalización está en TRUE y hay definido un usuario de Windows, en este caso corre bajo la identidad del usuario definido en la entrada indentity