SlideShare una empresa de Scribd logo
1 de 60
UNIDAD 2.
ENTORNO DE
PROGRAMACIÓN
DESARROLLO DE APLICACIONES WEB
UNIDAD 2. ENTORNO DE PROGRAMACIÓN
 2.1. Estructura de un programa Web.
 2.2. Lenguajes de scripts.
 2.2.1. Estructuras de control.
 2.2.2. Arreglos.
 2.3. Manipulación de formularios HTML mediante un
lenguaje de programación Web.
 2.4. Acceso a Bases de Datos.
 2.4.1. Conexiones.
 2.4.2. Manipulación y presentación de datos.
 2.5. Seguridad en una aplicación web.
2.1 ESTRUCTURA DE UN PROGRAMA WEB
Directivas
Piense en directivas o etiquetas como hablar con el browser, o sea es la manera de darle
instrucciones.
Abajo se dan los siguientes ejemplos de directivas:
<HTML>
</HTML>
La primera directiva es de inicio y la siguiente es una directiva del cierre.
Para hacer una directiva de cierre, simplemente agregan un signo / a la directiva de inicio.
La mayoría de directivas, pero no todas tienen una directiva del cierre.
Las directivas o comandos se pueden realizar en mayúsculas o minúsculas.
Estructura básica de una pagina web
<html>
<head>
<title> Titulo de la página</title>
</head>
<body>
</body>
</html>
 Directiva <HTML>
Indica a la computadora que se trata de un programa HTLM.
Todo programa HTML tiene dos partes El encabezado especificado por la directiva <HEAD> y
el cuerpo indicado por la directiva <BODY>
 Directiva <HEAD>
Dentro se colocan las directivas para proporcionar información de la página a los buscadores
robóticos de Internet y otras directivas como <TITLE>, <META>, <SCRIPT> y <STYLE> que a
continuación se describen:
Directiva <TITLE>
Enseña el nombre de la página que se muestra en la barra de título del navegador (Browser) y no el nombre con
que se guarda el archivo.
<TITLE>Titulo de la página</TITLE>
Estructura básica de una pagina web
Directiva <META>
Proporciona información para que los programas de búsqueda (como google.com,
yahoo.com, altavista.com) encuentren nuestra página.
Directiva <SCRIPT>
Es empleada cuando agregamos programas con el lenguaje JAVA SCRIP, para incluir efectos
visuales en la página y acciones.
Ejemplo: Las instrucciones descritas abajo, cambian el texto de los enlaces a rojo al pasar el
Mouse sobre ello.
<style>
<!--a:hover{color:RED; font-weight:; }-->
</style>
Estructura básica de una pagina web
Directiva <STYLE>
Se utiliza para colocar Hojas de Estilo en Cascada (CSS),
Ejemplo: Las instrucciones descritas abajo, indican los atributos y características de la fuente de los textos de una
página
<STYLE>
P {font-family:Arial; font-size:12pt; color:red; background-color:lime}
</STYLE>
Estructura básica de una pagina web
ESTRUCTURA DE UN SITIO WEB
 Un sitio web (en inglés:website) es un conjunto de páginas html
relacionadas entre sí por hiperenlaces, gestionadas por una única
entidad o persona, accesibles desde Internet a partir de una dirección
URL de su página índice (index) y con una unidad de contenido y de
estilo gráfico. Incluye textos, imágenes, archivos de audio, vídeo y
enlaces a otros sitios web.
 Normalmente no se diseña una página web aislada sino más bien un
sitio completo donde a partir de una página principal o índice se
enlazan el resto de páginas.
La estructura de archivos y carpetas
 Antes de iniciar el diseño de un sitio web es necesario preparar su
estructura de carpetas y archivos. Cuando el número de ficheros es
considerable, resulta muy útil ubicarlos en carpetas para facilitar su
localización y edición. Existen múltiples posibilidades de organizar el
sistema de ficheros.
 Con carácter general se proponen un modelo basado en la
organización por tipos de archivos.
 Las páginas HTML se guardarán en el directorio o carpeta principal
mientras que los elementos que utilizan (audios, vídeos, hojas de estilo,
imágenes, etc) se situarán en las subcarpetas correspondientes.
Los nombres de carpetas y archivos
 Con intención de evitar errores es interesante respetar las siguientes normas cuando se asigna nombre a
carpetas o archivos:
1. El nombre asignado estará formado por caracteres alfanuméricos: a-z y 0-9
2. No debe contener caracteres no alfanuméricos, signos de puntuación, espacios en blanco, caracteres
acentuados, eñes, etc.
3. Los únicos caracteres no alfanuméricos permitidos son el subrayado _ y el guión –
4. No debe superar los 20 caracteres.
5. Utilizar siempre letras minúsculas aunque se admitan mayúsculas. Hay servidores que distinguen entre
mayúsculas y minúsculas. Esto significa que la página INDEX.html no es la misma que la página
index.html.
6. Para las páginas HTML utilizar siempre la extensión: *.html aunque se admita la *.htm.
7. Reserva el nombre index.html para la página que deseamos se muestre por defecto cuando el usuario
navega hasta la carpeta sin indicar un archivo html concreto.
La estructura de navegación
 La estructura de navegación por un sitio web viene definida por la
experiencia de navegación del visitante en virtud de la cual puede
saltar de una página a otra dentro del sitio web utilizando el sistema de
hipervínculos.
 La estructura de navegación se suele elegir en función del tipo de
contenido.
 Existen distintos tipos de estructuras:
La estructura de navegación
 Jerárquica.
Estructura en árbol donde existe una página
índice o principal desde donde se accede al
resto de páginas. Desde estas subpáginas se
puede acceder a otras y así sucesivamente
creando distintos niveles o jerarquías. Es ideal
para sitios web de centros o proyectos.
No se aconseja utilizar más de 4 niveles para
evitar que el usuario se desoriente durante la
navegación. Conviene situar en todas las páginas
un menú que permita moverse de una forma fácil
y directa por los distintos niveles y páginas de
cada nivel.
 Lineal.
Es una estructura muy simple similar a las páginas de un libro. Desde una
página concreta se puede ir a la página siguiente o la página anterior. Es
especialmente útil si deseamos que el usuario siga un itinerario fijo y
guiado sin posibilidad de acceder a otras páginas que pudieran
distraerle.
Ejemplo: Guía o tutorial de aprendizaje. No es recomendable si el número
de páginas encadenadas es muy elevado porque produce sensación de
fatiga y no permite retomar fácilmente la secuencia allí donde se
abandonó en la última sesión.
La estructura de navegación
 Lineal con jerarquía.
Es una estructura híbrida que trata de
aprovechar las ventajas de las dos
estructuras anteriores.
Las páginas y subpáginas se organizan
de forma jerárquica pero también es
posible navegar de forma lineal por las
páginas de un mismo nivel. Los
contenidos web de este curso utilizan
esta estructura.
La estructura de navegación
 Red.
A partir de la página índice o principal se
puede navegar a otra u otras sin ningún
orden aparente.
Es una estructura más libre pero no es
aconsejable cuando el número de páginas
es elevado porque desorienta al usuario al
no saber dónde está ni disponer de recursos
para ir donde desea.
La estructura de navegación
2.2. Lenguajes de scripts
 JavaScript es un lenguaje de programación creado por Netscape con
el objetivo de integrarse a HTML y facilitar la creación de páginas
interactivas sin necesidad de utilizar scripts de CGI o Java.
 En 1997 los autores propusieron JavaScript para que fuera adoptado
como estándar de la ECMA(European Computer Manufacturers
Association) y en junio de 1997 fue adoptado como un estándar ECMA,
con el nombre de ECMAScript. Poco después también como un
estándar ISO.
 JavaScript es un lenguaje que funciona como extensión del HTML. Es un
lenguaje de programación orientado a objetos, diseñado para el
desarrollo de aplicaciones cliente-servidor través de internet.
2.2. Lenguajes de scripts
 El código de programa de JavaScript, llamado script, se introduce
directamente en el código HTML y no necesita ser compilado, es el propio
navegador el que se encarga de traducir dicho código.
 Gracias a JavaScript se pueden desarrollar programas que se ejecuten
directamente en el navegador (cliente) de manera que este pueda efectuar
determinadas operaciones o tomar decisiones sin necesidad de acceder al
servidor.
 Sabemos que un programa en JavaScript no debe ser compilado, ya que el
navegador se encarga de leerlo cuando se carga la página, pero esto no
quiere decir que todos los códigos JavaScript se ejecuten nada más cargarse
el documento HTML, algunas funciones permanecen en estado latente hasta
que el usuario realiza una acción determinada, como podría ser pulsar un
enlace.
JavaScript y HTML
 Las diferencias de los tipos de documentos XHTML son muy importantes
a la hora de escribir código JavaScript.
 El doctype HTML 1.0 Transitional es más flexible, por lo que la mayoría de
sintaxis y definiciones de elementos HTML son compatibles.
 El doctype HTML 1.0 Strict es más severo y nos v a obligar a realizar
algunos cambios en la definición de los scripts.
 Es importante validar todos los documentos antes de subirlos al servidor
con la finalidad de detectar y corregir los errores de compatibilidad a
tiempo. No importa el tipo de doctype, sino que cumpla al 100% con las
reglas de validación del doctype especificado al inicio del documento.
Definición script
Una vez definido el tipo de documento, debemos diferenciar dentro del
mismo lo que es JavaScript del resto del documento, para ello se dispone
de las etiquetas:
De inicio: <script lenguaje=“JavaScript” type=“text/javascript”>
El atributo lenguaje indica el tipo de lenguaje script utilizado, si se
omite el navegador asumirá que es javascript.
Final </script>
 Llaves o corchetes: Se utilizan para definir fragmentos de código de
manera que estos no se junten con el resto del programa.
 Punto y coma: Separa sentencias que se encuentran en una misma
línea o indicar el final de una sentencia que ocupa muchas líneas.
 Ficheros fuente: Se puede manejar un script externo mediante el
atributo scr aplicado a la etiqueta script.
El script debe estar en un archivo de texto sin las etiquetas de comienzo y
final del mismo <script> y </script>. Además, este deberá tener la
extensión *.js.
Definición script
Variables
Para declarar una variable en JavaScript se debe utilizar la palabra clave
var seguida del nombre de la variable, no siendo necesario declarar el
tipo.
El nombre de una variable:
 El primer carácter siempre debe ser una letra, el guion de subrayado(_) o el
símbolo $, los siguientes caracteres pueden ser letras, números o el guion
de subrayado pero sin dejar espacios entre ellos.
 No pueden utilizar nombres de palabras reservadas.
 Diferencia entre mayúsculas y minúsculas.
Definición script
 JavaScript decide el tipo de variable que deberá emplear durante la
ejecución del script.
 De cadena
 Numéricas
 Booleanas
 Undefined: variables creadas pero sin valor asignado.
 Nulos.
Contantes: Sin variables que no cambian, es decir siempre tienen el mismo valor.
Para indicar que se trata de una constante se debe anteponer la sentencia
const al nombre de la variable. No cambia de valor y no puede ser redefinida
en un mismo script.
Definición script
2.2.1 Estructuras de control
 Permiten que JavaScript tome decisiones comparando variables.
 JavaScript dispone de los siguientes comandos:
 If
 For
 While
 Do while
 Switch
2.2.1 Estructuras de control
 La Sentencia if
El comando if se emplea cuando es necesario ejecutar un fragmento
de código que depende de los valores de determinadas variables. Es
una estructura de control utilizada para tomar decisiones, un
condicional que realiza determinadas operaciones en función del
resultado de una expresión.
La estructura if tiene la siguiente sintaxis:
If (condición) // siempre se indica la condición entre paréntesis
{
Código del programa en caso de que la condición sea verdadera
}
2.2.1 Estructuras de control
La estructura if-else tiene la siguiente sintaxis:
if (condición)
{
código del programa en caso de que la sentencia sea verdadera
}
else
{
código del programa en caso de que no se cumpla la condición.
}
2.2.1 Estructuras de control
 Un bucle for permite repetir un bloque de código dependiendo de
unas condiciones concretas que siempre han de ser verdaderas. Un
bucle for tiene tres partes:
1. Inicialización
2. Condición
3. Ejecución y actualización
for
2.2.1 Estructuras de control
for (variable in objeto)
{ sentencias }
for
for (valor inicial; condición; actualización)
{ instrucciones a ejecutar en el bucle }
For … in
2.2.1 Estructuras de control
 Ejecuta de manera constante una
determinada secuencia de código
siempre que se cumpla una condición.
También puede ejecutar una secuencia
un determinado numero de veces.
Cuando la condición es falsa, el bucle se
detiene.
while
2.2.1 Estructuras de control
while (condición)
{
Instrucciones a ejecutar
con el bucle
}
Su misión es colocar una expresión
condicional después de las instrucciones
que deben ejecutarse, de esta manera,
seguro que las instrucciones del bucle son
ejecutadas por lo menos una vez
independientemente que la condición
sea verdadera o falsa.
Do while
do
{
código a ejecutar
}
while (condición);
2.2.1 Estructuras de control
Evalúa una expresión y la compara
con cada una de las etiquetas
asociadas . Cuando encuentra una
igualdad el programa evalúa la
expresión asociada a dicha etiqueta.
Esta expresión se utiliza cuando
tenemos múltiples posibilidades como
resultado de la evaluación de una
etiqueta.
switch
switch (expresión){
case valor1:
código a ejecutar;
break;
case valor2:
código a ejecutar;
break;
….
default: código a ejecutar; }
2.2.1 Estructuras de control
2.2.2 Arreglos.
Una matriz es un conjunto de datos de un mismo tipo identificados por un
índice.
En JavaScript para definir una matriz se utiliza el objeto Array().
asignaturas= new Array();
asignaturas[0]=“Literatura”
asignaturas[1]=“Dibujo”
asignaturas[2]=“Lenguaje”
asignaturas = new Array(“Literatura”,”Dibujo”,”Lenguaje”);
2.3. Manipulación de formularios HTML
mediante un lenguaje de programación Web.
ASP.NET es el nombre con el que se conoce la parte de la plataforma .NET
que permite el desarrollo y ejecución tanto de aplicaciones web como
de servicios web.
Igual que sucedía en ASP, ASP.NET se ejecuta en el servidor. En ASP.NET,
no obstante, las aplicaciones web se suelen desarrollar utilizando
formularios web, que están diseñados para hacer la creación de
aplicaciones web de forma sencilla.
La programación en ASP.NET está basada en el uso de controles y
eventos.
Las páginas ASP.NET, en vez de aceptar datos de entrada y generar su
salida en HTML como sucede en ASP, implementan su funcionalidad en
fragmentos de código que se ejecutan como respuesta a eventos
asociados a los controles de la interfaz con los que puede interactuar el
usuario. Esta forma de funcionar le proporciona a ASP.NET un mayor nivel
de abstracción, requiere menos código y permite crear aplicaciones más
modulares, legibles y mantenibles.
2.3. Manipulación de formularios HTML
mediante un lenguaje de programación Web.
APLICACIONES BASADAS EN WEB
 Son aplicaciones multinivel (aplicaciones de n niveles)
 Las aplicaciones multinivel dividen su funcionalidad en niveles
separados.
 Aunque los niveles pueden ubicarse en la misma computadora, por lo
general los niveles de las aplicaciones basadas en web residen en
computadoras separadas.
XHTML
Explorador
Nivel Superior
Interfaz de Usuario
Cliente
Nivel Intermedio
Lógica Comercial
ASP.NET
ADO.NET
Nivel Inferior
Datos
Información
APLICACIONES BASADAS EN WEB
NivelInferior
Mantiene los datos
pertenecientes a la
aplicación.
Por lo común,
almacena los datos en
un sistema de
administración de
base de datos
relacionales.
Puede contener varias
bases de datos, que
en conjunto
conforman los datos
necesarios para
nuestra aplicación.
NivelIntermedio
Implementa la lógica
comercial, de control
y de presentación
para controlar las
interacciones entre los
clientes de la
aplicación y los datos
de la misma.
NivelSuperior
Es la interfaz de
usuario de la
aplicación, la cual
recopila los datos de
entrada y visualiza los
resultados.
Interactúa con el nivel
intermedio para
realizar peticiones y
para recuperar datos
del nivel de
información.
Nivel de información Nivel ClienteNivel Intermedio
APLICACIONES BASADAS EN WEB
2.4. Acceso a Bases de Datos.
Una base de datos es una colección de datos y un
conjunto de programas para acceder a los mismos.
Los datos están clasificados y estructurados y son
guardados en uno varios ficheros.
Para crear y manipular bases de datos relacionales
existen en el mercado varios sistemas
administradores de base de datos; por ejemplo:
SQL Server, Access, Oracle y DB2. Otros sistemas
administradores de base de datos de interés y de
libre distribución son PostgreSQL y MSQL.
Muchas de las
aplicaciones
trabajan con base
de datos.
Por esta razón,
Microsoft decidió
crear una tecnología
de acceso a datos
potente y fácil de
utilizar: ADO.NET.
ASP.NET le proporciona flexibilidad a la hora de
conectarse a las bases de datos.
utilizar controles de origen de datos, que
permiten encapsular el acceso a los datos en
un control que se puede configurar con
información sobre la conexión y la consulta.
Escribir su propio código para realizar el
acceso a los datos mediante clases de
ADO.NET o consultas LINQ.
2.4. Acceso a Bases de Datos.
Componentes ADO.NET
ADO.NET es un conjunto de clases, pertenecientes al espacio de nombres
System.Data, para el acceso a los datos de un origen de datos.
Proporciona un conjunto de componentes para crear aplicaciones distribuidas
de uso compartido de datos. Dichos componentes están diseñados para separa
el acceso a los datos de la manipulación de los mismos y son:
 DataSet y el
 Proveedor de datos de .NET Framework, que es un conjunto de componentes
entre los que se incluyen los objetos de conexión (Connection), de órdenes
(Command), lector de datos(DataReader) y adaptador de datos
(DataAdapter).
Capa de Presentación Capa de DatosCapa de Lógica de Negocio
Formulario
Windows
Conjunto de
datos
Origen de datos
Adaptador
de datos
Conexión
de datos
Adaptador
de datos
Conexión
de datos
Mi Aplicación
Componentes ADO.NET
El trabajo de conexión con la base de datos o la ejecución de una
sentencia SQL determinada para recuperar datos de la base de datos
los realiza el proveedor de acceso a datos.
Y recuperar esos datos para tratarlos , manipularlos o volcarlos a un
determinado control o dispositivo es una acción ejecutada por una
capa superior formada por un conjunto de datos agrupados en tablas.
System.Data
Conjunto de datos
Proveedor de Acceso a Datos
Base de Datos
ASP.NET:
servicios web y
formularios web
Formularios
Windows
Componentes ADO.NET
2.4.1. Conexiones.
Para establecer una conexión con un origen de datos , ADO.NET proporciona el objeto
Connection. Por ejemplo, para establecer una conexión a Microsoft SQL Server utilizaremos el
objeto SqlConnection.
La función de un objeto conexión es presentar atributos y métodos para permitir establecer y
modificar las propiedades de la conexión (ejemplo, el identificador de usuario y la contraseña,
entre otras).
En el ejemplo siguiente se muestra como crear una conexión:
SqlConnection conexión= new SqlConnection(strConexion);
El argumento StrConexion hace referencia a la cadena de conexión. La cadena de conexión esta
compuesta por una serie de elementos nombre/valor separados por punto y coma. El orden de
estos elementos no es importante. En conjunto especifican la información básica necesaria para
crear una conexión.
Aunque las cadenas de conexión varían según el proveedor de SGBD que se este utilizando,
algunos elementos, como los citados a continuación, son casi siempre requeridos:
 El servidor donde se encuentra la base de datos
 La base de datos a utilizar
 La autenticación
Por ejemplo, la cadena de conexión siguiente se utiliza para conectarse a una base de datos Sql
Server denominada bd_telefonos en el equipo actual utilizando la seguridad integrada (se utiliza el
usuario actual de Windows para acceder a la BD):
StrConexion=“Data Source=.sqlexpress;”+”Initial Catalog=bd_telefonos; User name=*****;
Password=*****”;
2.4.1. Conexiones.
Modos de conexión
La acción más pesada cuando realizamos un acceso a una base de datos se
encuentra en la conexión con la base de datos. Esa tarea tan simple es la que mas
recursos del sistema consume. Por ello, es bueno tener presente las siguiente
recomendaciones:
 La conexión debe realizarse, siempre que se pueda, con los proveedores de
acceso a datos nativos, simplemente por que son más rápidos que los proveedores
del tipo OLE DB Y ODBC.
 La conexión debe abrirse lo más tarde posible. Es recomendable definir todas las
variables que podamos antes de realizar la conexión.
 La conexión debe cerrarse lo antes posible, siempre y cuando no tengan
necesidad de utilizarla posteriormente.
Hay 2 formas de
trabajar con los datos
de la base de datos:
 Conectado a la
base de datos
 Desconectado
DATA ADAPTER
BASE DE DATOS
CONNECTION
COMMAND
DATA READER
DATA SET
APLICACION
Modos de conexión
2.4.2. Manipulación y presentación de datos.
 Presentación de datos en distintos controles por medio de paginas
asp.net
2.5. Seguridad en una aplicación web.
ASP.NET proporciona una infraestructura de seguridad para autenticar y autorizar el
acceso de los usuarios, así como para realizar otras tareas relacionadas con la
seguridad.
 Puede autenticar los usuarios mediante la autenticación de Windows que
proporciona IIS.
 También puede administrar la autenticación mediante la autenticación de
formularios de ASP.NET y la pertenencia de ASP.NET.
 Además, puede administrar la autorización para el acceso a los recursos de la
aplicación web mediante grupos de Windows o bien mediante el uso de una base
de datos de funciones personalizada y las funciones de ASP.NET.
 Resulta fácil quitar, agregar o reemplazar estos esquemas dependiendo de las
necesidades de la aplicación.
ASP.NET funciona junto con Microsoft .NET Framework y Servicios de Microsoft Internet
Information Server (IIS) para ayudar a proporcionar aplicaciones Web seguras. Para
ayudar a proteger la seguridad de una aplicación ASP.NET, se deben llevar a cabo las
dos funciones principales que se describen en la siguiente tabla.
Función de seguridad Descripción
Autenticación
Ayuda a comprobar que el usuario es precisamente quien dice ser. La aplicación
obtiene las credenciales (diversas formas de identificación, como nombre y
contraseña) de un usuario, y las valida consultando a una autoridad determinada. Si
las credenciales son válidas, se considera a la entidad que ha enviado las
credenciales como una entidad autenticada.
Autorización
Limita los derechos de acceso mediante la concesión o negación de permisos
específicos a una identidad autenticada.
2.5. Seguridad en una aplicación web.
Administrar usuarios mediante suscripciones
La suscripción de ASP.NET proporciona un servicio integrado para validar y
almacenar las credenciales del usuario. La suscripción de ASP.NET facilita, por
tanto, la tarea de administrar la autenticación del usuario en los sitios Web.
Puede utilizar la suscripción de ASP.NET con la autenticación de formularios de
ASP.NET o con los controles de inicio de sesión de ASP.NET para crear un sistema
completo de autenticación de usuarios.
La suscripción de ASP.NET es compatible con los servicios para:
 Crear nuevos usuarios y contraseñas.
 Almacenar la información de la suscripción (nombres de usuario, contraseñas
y datos complementarios) en Microsoft SQL Server, Active Directory o un
almacén de datos alternativo.
 Autenticar a los usuarios que visitan el sitio. Puede autenticar los usuarios
mediante programación, o puede utilizar los controles de inicio de sesión de
ASP.NET para crear un sistema de autenticación completo sin apenas escribir
código o sin utilizar código alguno.
 Administrar las contraseñas, es decir, crearlas, modificarlas y restablecerlas. En
función de las opciones de suscripción que elija, el sistema de suscripciones
también puede proporcionar un sistema de restablecimiento de contraseñas
automatizado que utilice una pregunta y una respuesta proporcionadas por el
usuario.
 Utilizar una única identificación para los usuarios autenticados que podrá
utilizar en sus propias aplicaciones y que se integre también los sistemas de
personalización de ASP.NET y de administración de funciones (autorización).
 Especificar un proveedor de suscripciones personalizado que permita sustituir el
código propio para administrar la suscripción y mantener los datos de la
suscripción en un almacén de datos personalizado
Administrar autorizaciones con funciones
La administración de funciones facilita la administración de la autorización, ya que
permite especificar qué usuarios de la aplicación podrán obtener acceso a los recursos.
La administración de funciones permite tratar los grupos de usuarios como si fueran una
unidad mediante la asignación de usuarios a funciones, como administrador, ventas,
pertenencia, etc. En Windows, puede crear funciones asignando usuarios a grupos,
como Administradores, Usuarios avanzados, etc.
Tras definir las funciones, puede crear reglas de acceso en la aplicación. Por ejemplo, un
sitio podría contener un conjunto de páginas que sólo desea mostrar a los miembros. De
igual forma, quizás desee mostrar u ocultar una parte de una página en función de si el
usuario actual es un administrador. Mediante las funciones, puede establecer estos tipos
de reglas sin tener en cuenta a los usuarios individuales de la aplicación. Por ejemplo, no
tiene que conceder acceso a cada miembro individual del sitio para que puedan
consultar páginas destinadas únicamente a los miembros; en su lugar, puede conceder
acceso a la función de miembro y después agregar y quitar los usuarios de esa función
cuando éstos se suscriban o prescriba su suscripción como miembros.
Administrar autorizaciones con funciones
Los usuarios pueden pertenecer a varias funciones. Por ejemplo, si el sitio
es un foro de discusión, algunos usuarios podrían pertenecer tanto a la
función de miembro como a la función de moderador. Puede definir
cada función para que tenga privilegios diferentes en el sitio. De este
modo, un usuario que pertenezca a ambas funciones tendrá los dos
conjuntos de privilegios.
Aunque su aplicación tenga pocos usuarios, puede ser útil la creación de
funciones. Las funciones proporcionan flexibilidad para cambiar permisos,
así como agregar y quitar usuarios sin tener que realizar cambios en todo
el sitio. A medida que se van definiendo más reglas de acceso para la
aplicación, las funciones son un modo más conveniente de aplicar los
cambios a los grupos de usuarios.
Funciones y reglas de acceso
La finalidad principal al establecer funciones es proporcionar un modo
sencillo de administrar las reglas de acceso de los grupos de usuarios.
Cree los usuarios y, a continuación, asígneles funciones (en Windows, a
los grupos). Lo normal es crear un conjunto de páginas cuyo acceso
desea restringir a algunos usuarios. Para ello, lo más frecuente es aislar
estas páginas restringidas en una carpeta.
Puede utilizar la herramienta Administración de sitios Web para definir
reglas que concedan o denieguen el acceso a las carpetas restringidas.
Por ejemplo, puede configurar el sitio para que los miembros o los
administradores tengan acceso a las páginas de la carpeta restringida,
y denegar el acceso a los demás usuarios. Si un usuario sin autorización
intenta ver una página restringida, el usuario ve un mensaje de error o se
le redirige a la página especificada.
Funciones y reglas de acceso
Proveedor de autenticación mediante formularios
La autenticación de formularios permite autenticar el nombre de usuario y
la contraseña de los usuarios mediante un formulario de inicio de sesión
que haya creado.
Las solicitudes no autenticadas se redirigen a una página de inicio de
sesión, en la que el usuario proporciona las credenciales y envía el
formulario. Si la aplicación autentica la solicitud, el sistema emite un vale
que contiene una clave con el fin de restablecer la identidad para
posteriores solicitudes.

Más contenido relacionado

La actualidad más candente

ESTANDAR IEEE 802 x
ESTANDAR IEEE 802 xESTANDAR IEEE 802 x
ESTANDAR IEEE 802 xgchv
 
HTML & CSS: Chapter 04
HTML & CSS: Chapter 04HTML & CSS: Chapter 04
HTML & CSS: Chapter 04Steve Guinan
 
Transformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logicoTransformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logicojosecuartas
 
DIRECCIONES Y CLASES IP
DIRECCIONES Y CLASES IPDIRECCIONES Y CLASES IP
DIRECCIONES Y CLASES IPDiego Villacis
 
Diagramas de Clases, Secuencia, Patrones de Diseño MVC, Disño de Interfaces d...
Diagramas de Clases, Secuencia, Patrones de Diseño MVC, Disño de Interfaces d...Diagramas de Clases, Secuencia, Patrones de Diseño MVC, Disño de Interfaces d...
Diagramas de Clases, Secuencia, Patrones de Diseño MVC, Disño de Interfaces d...Oswaldo Hernández
 
03 Modelo Relacional
03 Modelo Relacional03 Modelo Relacional
03 Modelo RelacionalKudos S.A.S
 
Introducción a HTML5
Introducción a HTML5Introducción a HTML5
Introducción a HTML5maxfontana90
 
Introduccion a la programacion web
Introduccion a la programacion webIntroduccion a la programacion web
Introduccion a la programacion webRobert Rodriguez
 
Bibliotecas o libreria de c++
Bibliotecas o libreria de c++Bibliotecas o libreria de c++
Bibliotecas o libreria de c++Idalia Tristan
 
Arboles En Estructura de Datos
Arboles En Estructura de DatosArboles En Estructura de Datos
Arboles En Estructura de DatosDARKGIRL93
 
NoSQL bases de datos no relacionales
NoSQL bases de datos no relacionalesNoSQL bases de datos no relacionales
NoSQL bases de datos no relacionalesAndrés Londoño
 
Que es CSS? Presentacion Basica para CSS
Que es CSS? Presentacion Basica para CSSQue es CSS? Presentacion Basica para CSS
Que es CSS? Presentacion Basica para CSSjosuew2013
 
Css types internal, external and inline (1)
Css types internal, external and inline (1)Css types internal, external and inline (1)
Css types internal, external and inline (1)Webtech Learning
 
Direccionamiento ip
Direccionamiento ipDireccionamiento ip
Direccionamiento ipfelicita
 
Modelo de computacion distribuida
Modelo de computacion distribuidaModelo de computacion distribuida
Modelo de computacion distribuidaFabian Ortiz
 

La actualidad más candente (20)

ESTANDAR IEEE 802 x
ESTANDAR IEEE 802 xESTANDAR IEEE 802 x
ESTANDAR IEEE 802 x
 
HTML & CSS: Chapter 04
HTML & CSS: Chapter 04HTML & CSS: Chapter 04
HTML & CSS: Chapter 04
 
Arquitectura centralizada
Arquitectura centralizadaArquitectura centralizada
Arquitectura centralizada
 
Javascript
JavascriptJavascript
Javascript
 
Transformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logicoTransformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logico
 
Tipos Datos y Operadores en Visual C# (C sharp)
Tipos Datos y Operadores en Visual C# (C sharp)Tipos Datos y Operadores en Visual C# (C sharp)
Tipos Datos y Operadores en Visual C# (C sharp)
 
1. introducción a c#
1.  introducción a c#1.  introducción a c#
1. introducción a c#
 
DIRECCIONES Y CLASES IP
DIRECCIONES Y CLASES IPDIRECCIONES Y CLASES IP
DIRECCIONES Y CLASES IP
 
Diagramas de Clases, Secuencia, Patrones de Diseño MVC, Disño de Interfaces d...
Diagramas de Clases, Secuencia, Patrones de Diseño MVC, Disño de Interfaces d...Diagramas de Clases, Secuencia, Patrones de Diseño MVC, Disño de Interfaces d...
Diagramas de Clases, Secuencia, Patrones de Diseño MVC, Disño de Interfaces d...
 
03 Modelo Relacional
03 Modelo Relacional03 Modelo Relacional
03 Modelo Relacional
 
Introducción a HTML5
Introducción a HTML5Introducción a HTML5
Introducción a HTML5
 
Introduccion a la programacion web
Introduccion a la programacion webIntroduccion a la programacion web
Introduccion a la programacion web
 
Bibliotecas o libreria de c++
Bibliotecas o libreria de c++Bibliotecas o libreria de c++
Bibliotecas o libreria de c++
 
Arboles En Estructura de Datos
Arboles En Estructura de DatosArboles En Estructura de Datos
Arboles En Estructura de Datos
 
NoSQL bases de datos no relacionales
NoSQL bases de datos no relacionalesNoSQL bases de datos no relacionales
NoSQL bases de datos no relacionales
 
Que es CSS? Presentacion Basica para CSS
Que es CSS? Presentacion Basica para CSSQue es CSS? Presentacion Basica para CSS
Que es CSS? Presentacion Basica para CSS
 
Css types internal, external and inline (1)
Css types internal, external and inline (1)Css types internal, external and inline (1)
Css types internal, external and inline (1)
 
Direccionamiento ip
Direccionamiento ipDireccionamiento ip
Direccionamiento ip
 
Modelo de computacion distribuida
Modelo de computacion distribuidaModelo de computacion distribuida
Modelo de computacion distribuida
 
Cuestionario Preparatorio Html, css y html 5
Cuestionario Preparatorio Html, css y html 5Cuestionario Preparatorio Html, css y html 5
Cuestionario Preparatorio Html, css y html 5
 

Destacado (12)

Lenguaje script
Lenguaje scriptLenguaje script
Lenguaje script
 
Lenguajes script
Lenguajes scriptLenguajes script
Lenguajes script
 
Conexion a bases de datos
Conexion a bases de datosConexion a bases de datos
Conexion a bases de datos
 
Tic tarea 6
Tic tarea 6Tic tarea 6
Tic tarea 6
 
¿Qué es y cómo instalar un entorno de desarrollo de programación?
¿Qué es y cómo instalar un entorno de desarrollo de programación?¿Qué es y cómo instalar un entorno de desarrollo de programación?
¿Qué es y cómo instalar un entorno de desarrollo de programación?
 
ENTORNOS DE DESARROLLO: INSTALACIÓN Y USO
ENTORNOS DE DESARROLLO: INSTALACIÓN Y USO ENTORNOS DE DESARROLLO: INSTALACIÓN Y USO
ENTORNOS DE DESARROLLO: INSTALACIÓN Y USO
 
Unidad 6 entornos virtuales de aprendizaje
Unidad 6   entornos virtuales de aprendizajeUnidad 6   entornos virtuales de aprendizaje
Unidad 6 entornos virtuales de aprendizaje
 
Entornos De Desarrollo Integrados
Entornos De Desarrollo IntegradosEntornos De Desarrollo Integrados
Entornos De Desarrollo Integrados
 
Manipulacion de Bases de Datos
Manipulacion de Bases de DatosManipulacion de Bases de Datos
Manipulacion de Bases de Datos
 
Google web designer
Google web designerGoogle web designer
Google web designer
 
HISTORIA DEL LENGUAJE DE PROGRAMACIÓN C++
HISTORIA DEL LENGUAJE DE PROGRAMACIÓN C++HISTORIA DEL LENGUAJE DE PROGRAMACIÓN C++
HISTORIA DEL LENGUAJE DE PROGRAMACIÓN C++
 
Procesamiento de datos
Procesamiento de datosProcesamiento de datos
Procesamiento de datos
 

Similar a Entorno de Programacion (20)

Html
HtmlHtml
Html
 
Html
HtmlHtml
Html
 
Servicio internet
Servicio internetServicio internet
Servicio internet
 
Html
HtmlHtml
Html
 
HTML.pdf
HTML.pdfHTML.pdf
HTML.pdf
 
Html
HtmlHtml
Html
 
Qué es el html
Qué es el htmlQué es el html
Qué es el html
 
Html
HtmlHtml
Html
 
Tecnologías web.pptx
Tecnologías web.pptxTecnologías web.pptx
Tecnologías web.pptx
 
"Publicar en Internet"
"Publicar en Internet""Publicar en Internet"
"Publicar en Internet"
 
html5
html5html5
html5
 
los-diferentes-lenguajes-de-programacion-para-la-web
 los-diferentes-lenguajes-de-programacion-para-la-web los-diferentes-lenguajes-de-programacion-para-la-web
los-diferentes-lenguajes-de-programacion-para-la-web
 
los diferentes lenguajes de programación para-la-web
 los diferentes lenguajes de programación para-la-web los diferentes lenguajes de programación para-la-web
los diferentes lenguajes de programación para-la-web
 
Programacion web-Lenguajes del lado del servidor
Programacion web-Lenguajes del lado del servidorProgramacion web-Lenguajes del lado del servidor
Programacion web-Lenguajes del lado del servidor
 
EQUIPO 2,LAS AGUILAS
EQUIPO 2,LAS AGUILASEQUIPO 2,LAS AGUILAS
EQUIPO 2,LAS AGUILAS
 
Clase 1
Clase 1Clase 1
Clase 1
 
Ekipo 2
Ekipo 2Ekipo 2
Ekipo 2
 
Revision de tecnologias web
Revision de tecnologias webRevision de tecnologias web
Revision de tecnologias web
 
Consulta sobre acces, HMTL
Consulta sobre acces, HMTLConsulta sobre acces, HMTL
Consulta sobre acces, HMTL
 
introducción tecnologías web
introducción tecnologías webintroducción tecnologías web
introducción tecnologías web
 

Más de Jose Hernandez Landa

Sistema farmapp estructura_proyecto
Sistema farmapp estructura_proyectoSistema farmapp estructura_proyecto
Sistema farmapp estructura_proyectoJose Hernandez Landa
 
Mapa conceptual tipos de distribuciones de probabilidad
Mapa conceptual   tipos de distribuciones de probabilidadMapa conceptual   tipos de distribuciones de probabilidad
Mapa conceptual tipos de distribuciones de probabilidadJose Hernandez Landa
 
Fases del diseño del modelo de simulacion
Fases del diseño del modelo de simulacionFases del diseño del modelo de simulacion
Fases del diseño del modelo de simulacionJose Hernandez Landa
 
Conceptos relacionados con la simulacion
Conceptos relacionados con la simulacionConceptos relacionados con la simulacion
Conceptos relacionados con la simulacionJose Hernandez Landa
 
1.2 definiciòn de simulaciòn exposicion
1.2 definiciòn de simulaciòn   exposicion1.2 definiciòn de simulaciòn   exposicion
1.2 definiciòn de simulaciòn exposicionJose Hernandez Landa
 
4.5.3 operacion y seguridad seguridad en capas
4.5.3 operacion y seguridad   seguridad en capas4.5.3 operacion y seguridad   seguridad en capas
4.5.3 operacion y seguridad seguridad en capasJose Hernandez Landa
 
1.4 planeación y supervisión del trabajo de auditoria
1.4 planeación y supervisión del trabajo de auditoria1.4 planeación y supervisión del trabajo de auditoria
1.4 planeación y supervisión del trabajo de auditoriaJose Hernandez Landa
 
Linea del tiempo historia de la calidad
Linea del tiempo   historia de la calidadLinea del tiempo   historia de la calidad
Linea del tiempo historia de la calidadJose Hernandez Landa
 
Funcion de la tabla de enrutamiento
Funcion de la tabla de enrutamientoFuncion de la tabla de enrutamiento
Funcion de la tabla de enrutamientoJose Hernandez Landa
 

Más de Jose Hernandez Landa (20)

Sistema farmapp estructura_proyecto
Sistema farmapp estructura_proyectoSistema farmapp estructura_proyecto
Sistema farmapp estructura_proyecto
 
Preguntas de examen
Preguntas de examenPreguntas de examen
Preguntas de examen
 
Practica unidad 3
Practica unidad 3Practica unidad 3
Practica unidad 3
 
Mapa conceptual tipos de distribuciones de probabilidad
Mapa conceptual   tipos de distribuciones de probabilidadMapa conceptual   tipos de distribuciones de probabilidad
Mapa conceptual tipos de distribuciones de probabilidad
 
Tipos de datos cuadro sinoptico
Tipos de datos   cuadro sinopticoTipos de datos   cuadro sinoptico
Tipos de datos cuadro sinoptico
 
Guia de uso del software arena
Guia de uso del software arenaGuia de uso del software arena
Guia de uso del software arena
 
Reporte general de arena
Reporte general de arenaReporte general de arena
Reporte general de arena
 
Fases del diseño del modelo de simulacion
Fases del diseño del modelo de simulacionFases del diseño del modelo de simulacion
Fases del diseño del modelo de simulacion
 
Conceptos relacionados con la simulacion
Conceptos relacionados con la simulacionConceptos relacionados con la simulacion
Conceptos relacionados con la simulacion
 
Manual de instalaciòn arena
Manual de instalaciòn   arenaManual de instalaciòn   arena
Manual de instalaciòn arena
 
1.2 definiciòn de simulaciòn exposicion
1.2 definiciòn de simulaciòn   exposicion1.2 definiciòn de simulaciòn   exposicion
1.2 definiciòn de simulaciòn exposicion
 
4.5.3 operacion y seguridad seguridad en capas
4.5.3 operacion y seguridad   seguridad en capas4.5.3 operacion y seguridad   seguridad en capas
4.5.3 operacion y seguridad seguridad en capas
 
1.4 planeación y supervisión del trabajo de auditoria
1.4 planeación y supervisión del trabajo de auditoria1.4 planeación y supervisión del trabajo de auditoria
1.4 planeación y supervisión del trabajo de auditoria
 
Seguridad fisica
Seguridad fisicaSeguridad fisica
Seguridad fisica
 
Seguridad fisica
Seguridad fisicaSeguridad fisica
Seguridad fisica
 
Inteligencia de negocios
Inteligencia de negociosInteligencia de negocios
Inteligencia de negocios
 
Linea del tiempo historia de la calidad
Linea del tiempo   historia de la calidadLinea del tiempo   historia de la calidad
Linea del tiempo historia de la calidad
 
Comunicacion punto a punto
Comunicacion punto a puntoComunicacion punto a punto
Comunicacion punto a punto
 
Funcion de la tabla de enrutamiento
Funcion de la tabla de enrutamientoFuncion de la tabla de enrutamiento
Funcion de la tabla de enrutamiento
 
Enrutamiento y Direccionamiento
Enrutamiento y Direccionamiento Enrutamiento y Direccionamiento
Enrutamiento y Direccionamiento
 

Último

metodos de fitomejoramiento en la aolicacion de plantas
metodos de fitomejoramiento en la aolicacion de plantasmetodos de fitomejoramiento en la aolicacion de plantas
metodos de fitomejoramiento en la aolicacion de plantasGraciaMatute1
 
Balance materia y energia procesos de Secado
Balance materia y energia procesos de SecadoBalance materia y energia procesos de Secado
Balance materia y energia procesos de SecadoGualbertoLopez2
 
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdfNTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdfELIZABETHCRUZVALENCI
 
Cuestionario 20222222222222222222222224.pdf
Cuestionario 20222222222222222222222224.pdfCuestionario 20222222222222222222222224.pdf
Cuestionario 20222222222222222222222224.pdffredyflores58
 
Arquitecto cambio de uso de suelo Limache
Arquitecto cambio de uso de suelo LimacheArquitecto cambio de uso de suelo Limache
Arquitecto cambio de uso de suelo LimacheJuan Luis Menares
 
TAIICHI OHNO, historia, obras, reconocimientos
TAIICHI OHNO, historia, obras, reconocimientosTAIICHI OHNO, historia, obras, reconocimientos
TAIICHI OHNO, historia, obras, reconocimientoscuentaparainvestigac
 
Practica_Calificada_03333333333333333.pdf
Practica_Calificada_03333333333333333.pdfPractica_Calificada_03333333333333333.pdf
Practica_Calificada_03333333333333333.pdffredyflores58
 
S06_s2+-+Centro.pdf qiieiejanahshsjsnndjd
S06_s2+-+Centro.pdf qiieiejanahshsjsnndjdS06_s2+-+Centro.pdf qiieiejanahshsjsnndjd
S06_s2+-+Centro.pdf qiieiejanahshsjsnndjdaeapolinarez
 
Sistema de alumbrado.pptx fjhhgghrhgghhuughuh
Sistema de alumbrado.pptx fjhhgghrhgghhuughuhSistema de alumbrado.pptx fjhhgghrhgghhuughuh
Sistema de alumbrado.pptx fjhhgghrhgghhuughuhFoxy963
 
1 CENTROIDES 2°Computohhhhhhhhhhhhhhhh.pdf
1 CENTROIDES 2°Computohhhhhhhhhhhhhhhh.pdf1 CENTROIDES 2°Computohhhhhhhhhhhhhhhh.pdf
1 CENTROIDES 2°Computohhhhhhhhhhhhhhhh.pdfJlnParada
 
seminario-de-plc- controladores logicos programables
seminario-de-plc- controladores logicos programablesseminario-de-plc- controladores logicos programables
seminario-de-plc- controladores logicos programablesLuisLobatoingaruca
 
ATS-FORMATOa.pdf PARA MANTENIMIENTO MECANICO
ATS-FORMATOa.pdf PARA MANTENIMIENTO MECANICOATS-FORMATOa.pdf PARA MANTENIMIENTO MECANICO
ATS-FORMATOa.pdf PARA MANTENIMIENTO MECANICOalejandrocrisostomo2
 
auditoria fiscalizacion inspecciones de seguridad
auditoria fiscalizacion inspecciones de seguridadauditoria fiscalizacion inspecciones de seguridad
auditoria fiscalizacion inspecciones de seguridadNELSON QUINTANA
 
portafolio final manco 2 1816827 portafolio de evidencias
portafolio final manco 2 1816827 portafolio de evidenciasportafolio final manco 2 1816827 portafolio de evidencias
portafolio final manco 2 1816827 portafolio de evidenciasIANMIKELMIRANDAGONZA
 
Trabajo practico N°14 - Despacho Economico de Cargas - Campus 2022.pdf
Trabajo practico N°14 - Despacho Economico de Cargas - Campus 2022.pdfTrabajo practico N°14 - Despacho Economico de Cargas - Campus 2022.pdf
Trabajo practico N°14 - Despacho Economico de Cargas - Campus 2022.pdfChristianMOntiveros1
 
Auditoría de Sistemas de Gestión
Auditoría    de   Sistemas     de GestiónAuditoría    de   Sistemas     de Gestión
Auditoría de Sistemas de GestiónYanet Caldas
 
Trabajos Preliminares en Obras de Construcción..pdf
Trabajos Preliminares en Obras de Construcción..pdfTrabajos Preliminares en Obras de Construcción..pdf
Trabajos Preliminares en Obras de Construcción..pdfLimbergleoMamaniIsit
 
ARMADURAS METODO NODOS.pptx......................
ARMADURAS METODO NODOS.pptx......................ARMADURAS METODO NODOS.pptx......................
ARMADURAS METODO NODOS.pptx......................Juan293605
 
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf  PARA TRABAJO SEGUROATS-FORMATO cara.pdf  PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf PARA TRABAJO SEGUROalejandrocrisostomo2
 
GUIA DE SEGURIDAD PARA VENTILACION DE MINAS-POSITIVA.pdf
GUIA DE SEGURIDAD PARA VENTILACION DE MINAS-POSITIVA.pdfGUIA DE SEGURIDAD PARA VENTILACION DE MINAS-POSITIVA.pdf
GUIA DE SEGURIDAD PARA VENTILACION DE MINAS-POSITIVA.pdfWILLIAMSTAYPELLOCCLL1
 

Último (20)

metodos de fitomejoramiento en la aolicacion de plantas
metodos de fitomejoramiento en la aolicacion de plantasmetodos de fitomejoramiento en la aolicacion de plantas
metodos de fitomejoramiento en la aolicacion de plantas
 
Balance materia y energia procesos de Secado
Balance materia y energia procesos de SecadoBalance materia y energia procesos de Secado
Balance materia y energia procesos de Secado
 
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdfNTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
 
Cuestionario 20222222222222222222222224.pdf
Cuestionario 20222222222222222222222224.pdfCuestionario 20222222222222222222222224.pdf
Cuestionario 20222222222222222222222224.pdf
 
Arquitecto cambio de uso de suelo Limache
Arquitecto cambio de uso de suelo LimacheArquitecto cambio de uso de suelo Limache
Arquitecto cambio de uso de suelo Limache
 
TAIICHI OHNO, historia, obras, reconocimientos
TAIICHI OHNO, historia, obras, reconocimientosTAIICHI OHNO, historia, obras, reconocimientos
TAIICHI OHNO, historia, obras, reconocimientos
 
Practica_Calificada_03333333333333333.pdf
Practica_Calificada_03333333333333333.pdfPractica_Calificada_03333333333333333.pdf
Practica_Calificada_03333333333333333.pdf
 
S06_s2+-+Centro.pdf qiieiejanahshsjsnndjd
S06_s2+-+Centro.pdf qiieiejanahshsjsnndjdS06_s2+-+Centro.pdf qiieiejanahshsjsnndjd
S06_s2+-+Centro.pdf qiieiejanahshsjsnndjd
 
Sistema de alumbrado.pptx fjhhgghrhgghhuughuh
Sistema de alumbrado.pptx fjhhgghrhgghhuughuhSistema de alumbrado.pptx fjhhgghrhgghhuughuh
Sistema de alumbrado.pptx fjhhgghrhgghhuughuh
 
1 CENTROIDES 2°Computohhhhhhhhhhhhhhhh.pdf
1 CENTROIDES 2°Computohhhhhhhhhhhhhhhh.pdf1 CENTROIDES 2°Computohhhhhhhhhhhhhhhh.pdf
1 CENTROIDES 2°Computohhhhhhhhhhhhhhhh.pdf
 
seminario-de-plc- controladores logicos programables
seminario-de-plc- controladores logicos programablesseminario-de-plc- controladores logicos programables
seminario-de-plc- controladores logicos programables
 
ATS-FORMATOa.pdf PARA MANTENIMIENTO MECANICO
ATS-FORMATOa.pdf PARA MANTENIMIENTO MECANICOATS-FORMATOa.pdf PARA MANTENIMIENTO MECANICO
ATS-FORMATOa.pdf PARA MANTENIMIENTO MECANICO
 
auditoria fiscalizacion inspecciones de seguridad
auditoria fiscalizacion inspecciones de seguridadauditoria fiscalizacion inspecciones de seguridad
auditoria fiscalizacion inspecciones de seguridad
 
portafolio final manco 2 1816827 portafolio de evidencias
portafolio final manco 2 1816827 portafolio de evidenciasportafolio final manco 2 1816827 portafolio de evidencias
portafolio final manco 2 1816827 portafolio de evidencias
 
Trabajo practico N°14 - Despacho Economico de Cargas - Campus 2022.pdf
Trabajo practico N°14 - Despacho Economico de Cargas - Campus 2022.pdfTrabajo practico N°14 - Despacho Economico de Cargas - Campus 2022.pdf
Trabajo practico N°14 - Despacho Economico de Cargas - Campus 2022.pdf
 
Auditoría de Sistemas de Gestión
Auditoría    de   Sistemas     de GestiónAuditoría    de   Sistemas     de Gestión
Auditoría de Sistemas de Gestión
 
Trabajos Preliminares en Obras de Construcción..pdf
Trabajos Preliminares en Obras de Construcción..pdfTrabajos Preliminares en Obras de Construcción..pdf
Trabajos Preliminares en Obras de Construcción..pdf
 
ARMADURAS METODO NODOS.pptx......................
ARMADURAS METODO NODOS.pptx......................ARMADURAS METODO NODOS.pptx......................
ARMADURAS METODO NODOS.pptx......................
 
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf  PARA TRABAJO SEGUROATS-FORMATO cara.pdf  PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
 
GUIA DE SEGURIDAD PARA VENTILACION DE MINAS-POSITIVA.pdf
GUIA DE SEGURIDAD PARA VENTILACION DE MINAS-POSITIVA.pdfGUIA DE SEGURIDAD PARA VENTILACION DE MINAS-POSITIVA.pdf
GUIA DE SEGURIDAD PARA VENTILACION DE MINAS-POSITIVA.pdf
 

Entorno de Programacion

  • 2. UNIDAD 2. ENTORNO DE PROGRAMACIÓN  2.1. Estructura de un programa Web.  2.2. Lenguajes de scripts.  2.2.1. Estructuras de control.  2.2.2. Arreglos.  2.3. Manipulación de formularios HTML mediante un lenguaje de programación Web.  2.4. Acceso a Bases de Datos.  2.4.1. Conexiones.  2.4.2. Manipulación y presentación de datos.  2.5. Seguridad en una aplicación web.
  • 3. 2.1 ESTRUCTURA DE UN PROGRAMA WEB Directivas Piense en directivas o etiquetas como hablar con el browser, o sea es la manera de darle instrucciones. Abajo se dan los siguientes ejemplos de directivas: <HTML> </HTML> La primera directiva es de inicio y la siguiente es una directiva del cierre. Para hacer una directiva de cierre, simplemente agregan un signo / a la directiva de inicio. La mayoría de directivas, pero no todas tienen una directiva del cierre. Las directivas o comandos se pueden realizar en mayúsculas o minúsculas.
  • 4. Estructura básica de una pagina web <html> <head> <title> Titulo de la página</title> </head> <body> </body> </html>
  • 5.  Directiva <HTML> Indica a la computadora que se trata de un programa HTLM. Todo programa HTML tiene dos partes El encabezado especificado por la directiva <HEAD> y el cuerpo indicado por la directiva <BODY>  Directiva <HEAD> Dentro se colocan las directivas para proporcionar información de la página a los buscadores robóticos de Internet y otras directivas como <TITLE>, <META>, <SCRIPT> y <STYLE> que a continuación se describen: Directiva <TITLE> Enseña el nombre de la página que se muestra en la barra de título del navegador (Browser) y no el nombre con que se guarda el archivo. <TITLE>Titulo de la página</TITLE> Estructura básica de una pagina web
  • 6. Directiva <META> Proporciona información para que los programas de búsqueda (como google.com, yahoo.com, altavista.com) encuentren nuestra página. Directiva <SCRIPT> Es empleada cuando agregamos programas con el lenguaje JAVA SCRIP, para incluir efectos visuales en la página y acciones. Ejemplo: Las instrucciones descritas abajo, cambian el texto de los enlaces a rojo al pasar el Mouse sobre ello. <style> <!--a:hover{color:RED; font-weight:; }--> </style> Estructura básica de una pagina web
  • 7. Directiva <STYLE> Se utiliza para colocar Hojas de Estilo en Cascada (CSS), Ejemplo: Las instrucciones descritas abajo, indican los atributos y características de la fuente de los textos de una página <STYLE> P {font-family:Arial; font-size:12pt; color:red; background-color:lime} </STYLE> Estructura básica de una pagina web
  • 8. ESTRUCTURA DE UN SITIO WEB  Un sitio web (en inglés:website) es un conjunto de páginas html relacionadas entre sí por hiperenlaces, gestionadas por una única entidad o persona, accesibles desde Internet a partir de una dirección URL de su página índice (index) y con una unidad de contenido y de estilo gráfico. Incluye textos, imágenes, archivos de audio, vídeo y enlaces a otros sitios web.  Normalmente no se diseña una página web aislada sino más bien un sitio completo donde a partir de una página principal o índice se enlazan el resto de páginas.
  • 9. La estructura de archivos y carpetas  Antes de iniciar el diseño de un sitio web es necesario preparar su estructura de carpetas y archivos. Cuando el número de ficheros es considerable, resulta muy útil ubicarlos en carpetas para facilitar su localización y edición. Existen múltiples posibilidades de organizar el sistema de ficheros.  Con carácter general se proponen un modelo basado en la organización por tipos de archivos.  Las páginas HTML se guardarán en el directorio o carpeta principal mientras que los elementos que utilizan (audios, vídeos, hojas de estilo, imágenes, etc) se situarán en las subcarpetas correspondientes.
  • 10. Los nombres de carpetas y archivos  Con intención de evitar errores es interesante respetar las siguientes normas cuando se asigna nombre a carpetas o archivos: 1. El nombre asignado estará formado por caracteres alfanuméricos: a-z y 0-9 2. No debe contener caracteres no alfanuméricos, signos de puntuación, espacios en blanco, caracteres acentuados, eñes, etc. 3. Los únicos caracteres no alfanuméricos permitidos son el subrayado _ y el guión – 4. No debe superar los 20 caracteres. 5. Utilizar siempre letras minúsculas aunque se admitan mayúsculas. Hay servidores que distinguen entre mayúsculas y minúsculas. Esto significa que la página INDEX.html no es la misma que la página index.html. 6. Para las páginas HTML utilizar siempre la extensión: *.html aunque se admita la *.htm. 7. Reserva el nombre index.html para la página que deseamos se muestre por defecto cuando el usuario navega hasta la carpeta sin indicar un archivo html concreto.
  • 11. La estructura de navegación  La estructura de navegación por un sitio web viene definida por la experiencia de navegación del visitante en virtud de la cual puede saltar de una página a otra dentro del sitio web utilizando el sistema de hipervínculos.  La estructura de navegación se suele elegir en función del tipo de contenido.  Existen distintos tipos de estructuras:
  • 12. La estructura de navegación  Jerárquica. Estructura en árbol donde existe una página índice o principal desde donde se accede al resto de páginas. Desde estas subpáginas se puede acceder a otras y así sucesivamente creando distintos niveles o jerarquías. Es ideal para sitios web de centros o proyectos. No se aconseja utilizar más de 4 niveles para evitar que el usuario se desoriente durante la navegación. Conviene situar en todas las páginas un menú que permita moverse de una forma fácil y directa por los distintos niveles y páginas de cada nivel.
  • 13.  Lineal. Es una estructura muy simple similar a las páginas de un libro. Desde una página concreta se puede ir a la página siguiente o la página anterior. Es especialmente útil si deseamos que el usuario siga un itinerario fijo y guiado sin posibilidad de acceder a otras páginas que pudieran distraerle. Ejemplo: Guía o tutorial de aprendizaje. No es recomendable si el número de páginas encadenadas es muy elevado porque produce sensación de fatiga y no permite retomar fácilmente la secuencia allí donde se abandonó en la última sesión. La estructura de navegación
  • 14.  Lineal con jerarquía. Es una estructura híbrida que trata de aprovechar las ventajas de las dos estructuras anteriores. Las páginas y subpáginas se organizan de forma jerárquica pero también es posible navegar de forma lineal por las páginas de un mismo nivel. Los contenidos web de este curso utilizan esta estructura. La estructura de navegación
  • 15.  Red. A partir de la página índice o principal se puede navegar a otra u otras sin ningún orden aparente. Es una estructura más libre pero no es aconsejable cuando el número de páginas es elevado porque desorienta al usuario al no saber dónde está ni disponer de recursos para ir donde desea. La estructura de navegación
  • 16. 2.2. Lenguajes de scripts  JavaScript es un lenguaje de programación creado por Netscape con el objetivo de integrarse a HTML y facilitar la creación de páginas interactivas sin necesidad de utilizar scripts de CGI o Java.  En 1997 los autores propusieron JavaScript para que fuera adoptado como estándar de la ECMA(European Computer Manufacturers Association) y en junio de 1997 fue adoptado como un estándar ECMA, con el nombre de ECMAScript. Poco después también como un estándar ISO.  JavaScript es un lenguaje que funciona como extensión del HTML. Es un lenguaje de programación orientado a objetos, diseñado para el desarrollo de aplicaciones cliente-servidor través de internet.
  • 17. 2.2. Lenguajes de scripts  El código de programa de JavaScript, llamado script, se introduce directamente en el código HTML y no necesita ser compilado, es el propio navegador el que se encarga de traducir dicho código.  Gracias a JavaScript se pueden desarrollar programas que se ejecuten directamente en el navegador (cliente) de manera que este pueda efectuar determinadas operaciones o tomar decisiones sin necesidad de acceder al servidor.  Sabemos que un programa en JavaScript no debe ser compilado, ya que el navegador se encarga de leerlo cuando se carga la página, pero esto no quiere decir que todos los códigos JavaScript se ejecuten nada más cargarse el documento HTML, algunas funciones permanecen en estado latente hasta que el usuario realiza una acción determinada, como podría ser pulsar un enlace.
  • 18. JavaScript y HTML  Las diferencias de los tipos de documentos XHTML son muy importantes a la hora de escribir código JavaScript.  El doctype HTML 1.0 Transitional es más flexible, por lo que la mayoría de sintaxis y definiciones de elementos HTML son compatibles.  El doctype HTML 1.0 Strict es más severo y nos v a obligar a realizar algunos cambios en la definición de los scripts.  Es importante validar todos los documentos antes de subirlos al servidor con la finalidad de detectar y corregir los errores de compatibilidad a tiempo. No importa el tipo de doctype, sino que cumpla al 100% con las reglas de validación del doctype especificado al inicio del documento.
  • 19. Definición script Una vez definido el tipo de documento, debemos diferenciar dentro del mismo lo que es JavaScript del resto del documento, para ello se dispone de las etiquetas: De inicio: <script lenguaje=“JavaScript” type=“text/javascript”> El atributo lenguaje indica el tipo de lenguaje script utilizado, si se omite el navegador asumirá que es javascript. Final </script>
  • 20.  Llaves o corchetes: Se utilizan para definir fragmentos de código de manera que estos no se junten con el resto del programa.  Punto y coma: Separa sentencias que se encuentran en una misma línea o indicar el final de una sentencia que ocupa muchas líneas.  Ficheros fuente: Se puede manejar un script externo mediante el atributo scr aplicado a la etiqueta script. El script debe estar en un archivo de texto sin las etiquetas de comienzo y final del mismo <script> y </script>. Además, este deberá tener la extensión *.js. Definición script
  • 21. Variables Para declarar una variable en JavaScript se debe utilizar la palabra clave var seguida del nombre de la variable, no siendo necesario declarar el tipo. El nombre de una variable:  El primer carácter siempre debe ser una letra, el guion de subrayado(_) o el símbolo $, los siguientes caracteres pueden ser letras, números o el guion de subrayado pero sin dejar espacios entre ellos.  No pueden utilizar nombres de palabras reservadas.  Diferencia entre mayúsculas y minúsculas. Definición script
  • 22.  JavaScript decide el tipo de variable que deberá emplear durante la ejecución del script.  De cadena  Numéricas  Booleanas  Undefined: variables creadas pero sin valor asignado.  Nulos. Contantes: Sin variables que no cambian, es decir siempre tienen el mismo valor. Para indicar que se trata de una constante se debe anteponer la sentencia const al nombre de la variable. No cambia de valor y no puede ser redefinida en un mismo script. Definición script
  • 23. 2.2.1 Estructuras de control  Permiten que JavaScript tome decisiones comparando variables.  JavaScript dispone de los siguientes comandos:  If  For  While  Do while  Switch
  • 24. 2.2.1 Estructuras de control  La Sentencia if El comando if se emplea cuando es necesario ejecutar un fragmento de código que depende de los valores de determinadas variables. Es una estructura de control utilizada para tomar decisiones, un condicional que realiza determinadas operaciones en función del resultado de una expresión.
  • 25. La estructura if tiene la siguiente sintaxis: If (condición) // siempre se indica la condición entre paréntesis { Código del programa en caso de que la condición sea verdadera } 2.2.1 Estructuras de control
  • 26. La estructura if-else tiene la siguiente sintaxis: if (condición) { código del programa en caso de que la sentencia sea verdadera } else { código del programa en caso de que no se cumpla la condición. } 2.2.1 Estructuras de control
  • 27.  Un bucle for permite repetir un bloque de código dependiendo de unas condiciones concretas que siempre han de ser verdaderas. Un bucle for tiene tres partes: 1. Inicialización 2. Condición 3. Ejecución y actualización for 2.2.1 Estructuras de control
  • 28. for (variable in objeto) { sentencias } for for (valor inicial; condición; actualización) { instrucciones a ejecutar en el bucle } For … in 2.2.1 Estructuras de control
  • 29.  Ejecuta de manera constante una determinada secuencia de código siempre que se cumpla una condición. También puede ejecutar una secuencia un determinado numero de veces. Cuando la condición es falsa, el bucle se detiene. while 2.2.1 Estructuras de control while (condición) { Instrucciones a ejecutar con el bucle }
  • 30. Su misión es colocar una expresión condicional después de las instrucciones que deben ejecutarse, de esta manera, seguro que las instrucciones del bucle son ejecutadas por lo menos una vez independientemente que la condición sea verdadera o falsa. Do while do { código a ejecutar } while (condición); 2.2.1 Estructuras de control
  • 31. Evalúa una expresión y la compara con cada una de las etiquetas asociadas . Cuando encuentra una igualdad el programa evalúa la expresión asociada a dicha etiqueta. Esta expresión se utiliza cuando tenemos múltiples posibilidades como resultado de la evaluación de una etiqueta. switch switch (expresión){ case valor1: código a ejecutar; break; case valor2: código a ejecutar; break; …. default: código a ejecutar; } 2.2.1 Estructuras de control
  • 32. 2.2.2 Arreglos. Una matriz es un conjunto de datos de un mismo tipo identificados por un índice. En JavaScript para definir una matriz se utiliza el objeto Array(). asignaturas= new Array(); asignaturas[0]=“Literatura” asignaturas[1]=“Dibujo” asignaturas[2]=“Lenguaje” asignaturas = new Array(“Literatura”,”Dibujo”,”Lenguaje”);
  • 33. 2.3. Manipulación de formularios HTML mediante un lenguaje de programación Web. ASP.NET es el nombre con el que se conoce la parte de la plataforma .NET que permite el desarrollo y ejecución tanto de aplicaciones web como de servicios web. Igual que sucedía en ASP, ASP.NET se ejecuta en el servidor. En ASP.NET, no obstante, las aplicaciones web se suelen desarrollar utilizando formularios web, que están diseñados para hacer la creación de aplicaciones web de forma sencilla.
  • 34. La programación en ASP.NET está basada en el uso de controles y eventos. Las páginas ASP.NET, en vez de aceptar datos de entrada y generar su salida en HTML como sucede en ASP, implementan su funcionalidad en fragmentos de código que se ejecutan como respuesta a eventos asociados a los controles de la interfaz con los que puede interactuar el usuario. Esta forma de funcionar le proporciona a ASP.NET un mayor nivel de abstracción, requiere menos código y permite crear aplicaciones más modulares, legibles y mantenibles. 2.3. Manipulación de formularios HTML mediante un lenguaje de programación Web.
  • 35.
  • 36.
  • 37. APLICACIONES BASADAS EN WEB  Son aplicaciones multinivel (aplicaciones de n niveles)  Las aplicaciones multinivel dividen su funcionalidad en niveles separados.  Aunque los niveles pueden ubicarse en la misma computadora, por lo general los niveles de las aplicaciones basadas en web residen en computadoras separadas.
  • 38. XHTML Explorador Nivel Superior Interfaz de Usuario Cliente Nivel Intermedio Lógica Comercial ASP.NET ADO.NET Nivel Inferior Datos Información APLICACIONES BASADAS EN WEB
  • 39. NivelInferior Mantiene los datos pertenecientes a la aplicación. Por lo común, almacena los datos en un sistema de administración de base de datos relacionales. Puede contener varias bases de datos, que en conjunto conforman los datos necesarios para nuestra aplicación. NivelIntermedio Implementa la lógica comercial, de control y de presentación para controlar las interacciones entre los clientes de la aplicación y los datos de la misma. NivelSuperior Es la interfaz de usuario de la aplicación, la cual recopila los datos de entrada y visualiza los resultados. Interactúa con el nivel intermedio para realizar peticiones y para recuperar datos del nivel de información. Nivel de información Nivel ClienteNivel Intermedio APLICACIONES BASADAS EN WEB
  • 40.
  • 41. 2.4. Acceso a Bases de Datos. Una base de datos es una colección de datos y un conjunto de programas para acceder a los mismos. Los datos están clasificados y estructurados y son guardados en uno varios ficheros. Para crear y manipular bases de datos relacionales existen en el mercado varios sistemas administradores de base de datos; por ejemplo: SQL Server, Access, Oracle y DB2. Otros sistemas administradores de base de datos de interés y de libre distribución son PostgreSQL y MSQL.
  • 42. Muchas de las aplicaciones trabajan con base de datos. Por esta razón, Microsoft decidió crear una tecnología de acceso a datos potente y fácil de utilizar: ADO.NET. ASP.NET le proporciona flexibilidad a la hora de conectarse a las bases de datos. utilizar controles de origen de datos, que permiten encapsular el acceso a los datos en un control que se puede configurar con información sobre la conexión y la consulta. Escribir su propio código para realizar el acceso a los datos mediante clases de ADO.NET o consultas LINQ. 2.4. Acceso a Bases de Datos.
  • 43. Componentes ADO.NET ADO.NET es un conjunto de clases, pertenecientes al espacio de nombres System.Data, para el acceso a los datos de un origen de datos. Proporciona un conjunto de componentes para crear aplicaciones distribuidas de uso compartido de datos. Dichos componentes están diseñados para separa el acceso a los datos de la manipulación de los mismos y son:  DataSet y el  Proveedor de datos de .NET Framework, que es un conjunto de componentes entre los que se incluyen los objetos de conexión (Connection), de órdenes (Command), lector de datos(DataReader) y adaptador de datos (DataAdapter).
  • 44. Capa de Presentación Capa de DatosCapa de Lógica de Negocio Formulario Windows Conjunto de datos Origen de datos Adaptador de datos Conexión de datos Adaptador de datos Conexión de datos Mi Aplicación
  • 45. Componentes ADO.NET El trabajo de conexión con la base de datos o la ejecución de una sentencia SQL determinada para recuperar datos de la base de datos los realiza el proveedor de acceso a datos. Y recuperar esos datos para tratarlos , manipularlos o volcarlos a un determinado control o dispositivo es una acción ejecutada por una capa superior formada por un conjunto de datos agrupados en tablas.
  • 46. System.Data Conjunto de datos Proveedor de Acceso a Datos Base de Datos ASP.NET: servicios web y formularios web Formularios Windows Componentes ADO.NET
  • 47. 2.4.1. Conexiones. Para establecer una conexión con un origen de datos , ADO.NET proporciona el objeto Connection. Por ejemplo, para establecer una conexión a Microsoft SQL Server utilizaremos el objeto SqlConnection. La función de un objeto conexión es presentar atributos y métodos para permitir establecer y modificar las propiedades de la conexión (ejemplo, el identificador de usuario y la contraseña, entre otras). En el ejemplo siguiente se muestra como crear una conexión: SqlConnection conexión= new SqlConnection(strConexion); El argumento StrConexion hace referencia a la cadena de conexión. La cadena de conexión esta compuesta por una serie de elementos nombre/valor separados por punto y coma. El orden de estos elementos no es importante. En conjunto especifican la información básica necesaria para crear una conexión.
  • 48. Aunque las cadenas de conexión varían según el proveedor de SGBD que se este utilizando, algunos elementos, como los citados a continuación, son casi siempre requeridos:  El servidor donde se encuentra la base de datos  La base de datos a utilizar  La autenticación Por ejemplo, la cadena de conexión siguiente se utiliza para conectarse a una base de datos Sql Server denominada bd_telefonos en el equipo actual utilizando la seguridad integrada (se utiliza el usuario actual de Windows para acceder a la BD): StrConexion=“Data Source=.sqlexpress;”+”Initial Catalog=bd_telefonos; User name=*****; Password=*****”; 2.4.1. Conexiones.
  • 49. Modos de conexión La acción más pesada cuando realizamos un acceso a una base de datos se encuentra en la conexión con la base de datos. Esa tarea tan simple es la que mas recursos del sistema consume. Por ello, es bueno tener presente las siguiente recomendaciones:  La conexión debe realizarse, siempre que se pueda, con los proveedores de acceso a datos nativos, simplemente por que son más rápidos que los proveedores del tipo OLE DB Y ODBC.  La conexión debe abrirse lo más tarde posible. Es recomendable definir todas las variables que podamos antes de realizar la conexión.  La conexión debe cerrarse lo antes posible, siempre y cuando no tengan necesidad de utilizarla posteriormente.
  • 50. Hay 2 formas de trabajar con los datos de la base de datos:  Conectado a la base de datos  Desconectado DATA ADAPTER BASE DE DATOS CONNECTION COMMAND DATA READER DATA SET APLICACION Modos de conexión
  • 51. 2.4.2. Manipulación y presentación de datos.  Presentación de datos en distintos controles por medio de paginas asp.net
  • 52. 2.5. Seguridad en una aplicación web. ASP.NET proporciona una infraestructura de seguridad para autenticar y autorizar el acceso de los usuarios, así como para realizar otras tareas relacionadas con la seguridad.  Puede autenticar los usuarios mediante la autenticación de Windows que proporciona IIS.  También puede administrar la autenticación mediante la autenticación de formularios de ASP.NET y la pertenencia de ASP.NET.  Además, puede administrar la autorización para el acceso a los recursos de la aplicación web mediante grupos de Windows o bien mediante el uso de una base de datos de funciones personalizada y las funciones de ASP.NET.  Resulta fácil quitar, agregar o reemplazar estos esquemas dependiendo de las necesidades de la aplicación.
  • 53. ASP.NET funciona junto con Microsoft .NET Framework y Servicios de Microsoft Internet Information Server (IIS) para ayudar a proporcionar aplicaciones Web seguras. Para ayudar a proteger la seguridad de una aplicación ASP.NET, se deben llevar a cabo las dos funciones principales que se describen en la siguiente tabla. Función de seguridad Descripción Autenticación Ayuda a comprobar que el usuario es precisamente quien dice ser. La aplicación obtiene las credenciales (diversas formas de identificación, como nombre y contraseña) de un usuario, y las valida consultando a una autoridad determinada. Si las credenciales son válidas, se considera a la entidad que ha enviado las credenciales como una entidad autenticada. Autorización Limita los derechos de acceso mediante la concesión o negación de permisos específicos a una identidad autenticada. 2.5. Seguridad en una aplicación web.
  • 54. Administrar usuarios mediante suscripciones La suscripción de ASP.NET proporciona un servicio integrado para validar y almacenar las credenciales del usuario. La suscripción de ASP.NET facilita, por tanto, la tarea de administrar la autenticación del usuario en los sitios Web. Puede utilizar la suscripción de ASP.NET con la autenticación de formularios de ASP.NET o con los controles de inicio de sesión de ASP.NET para crear un sistema completo de autenticación de usuarios. La suscripción de ASP.NET es compatible con los servicios para:  Crear nuevos usuarios y contraseñas.  Almacenar la información de la suscripción (nombres de usuario, contraseñas y datos complementarios) en Microsoft SQL Server, Active Directory o un almacén de datos alternativo.
  • 55.  Autenticar a los usuarios que visitan el sitio. Puede autenticar los usuarios mediante programación, o puede utilizar los controles de inicio de sesión de ASP.NET para crear un sistema de autenticación completo sin apenas escribir código o sin utilizar código alguno.  Administrar las contraseñas, es decir, crearlas, modificarlas y restablecerlas. En función de las opciones de suscripción que elija, el sistema de suscripciones también puede proporcionar un sistema de restablecimiento de contraseñas automatizado que utilice una pregunta y una respuesta proporcionadas por el usuario.  Utilizar una única identificación para los usuarios autenticados que podrá utilizar en sus propias aplicaciones y que se integre también los sistemas de personalización de ASP.NET y de administración de funciones (autorización).  Especificar un proveedor de suscripciones personalizado que permita sustituir el código propio para administrar la suscripción y mantener los datos de la suscripción en un almacén de datos personalizado
  • 56. Administrar autorizaciones con funciones La administración de funciones facilita la administración de la autorización, ya que permite especificar qué usuarios de la aplicación podrán obtener acceso a los recursos. La administración de funciones permite tratar los grupos de usuarios como si fueran una unidad mediante la asignación de usuarios a funciones, como administrador, ventas, pertenencia, etc. En Windows, puede crear funciones asignando usuarios a grupos, como Administradores, Usuarios avanzados, etc. Tras definir las funciones, puede crear reglas de acceso en la aplicación. Por ejemplo, un sitio podría contener un conjunto de páginas que sólo desea mostrar a los miembros. De igual forma, quizás desee mostrar u ocultar una parte de una página en función de si el usuario actual es un administrador. Mediante las funciones, puede establecer estos tipos de reglas sin tener en cuenta a los usuarios individuales de la aplicación. Por ejemplo, no tiene que conceder acceso a cada miembro individual del sitio para que puedan consultar páginas destinadas únicamente a los miembros; en su lugar, puede conceder acceso a la función de miembro y después agregar y quitar los usuarios de esa función cuando éstos se suscriban o prescriba su suscripción como miembros.
  • 57. Administrar autorizaciones con funciones Los usuarios pueden pertenecer a varias funciones. Por ejemplo, si el sitio es un foro de discusión, algunos usuarios podrían pertenecer tanto a la función de miembro como a la función de moderador. Puede definir cada función para que tenga privilegios diferentes en el sitio. De este modo, un usuario que pertenezca a ambas funciones tendrá los dos conjuntos de privilegios. Aunque su aplicación tenga pocos usuarios, puede ser útil la creación de funciones. Las funciones proporcionan flexibilidad para cambiar permisos, así como agregar y quitar usuarios sin tener que realizar cambios en todo el sitio. A medida que se van definiendo más reglas de acceso para la aplicación, las funciones son un modo más conveniente de aplicar los cambios a los grupos de usuarios.
  • 58. Funciones y reglas de acceso La finalidad principal al establecer funciones es proporcionar un modo sencillo de administrar las reglas de acceso de los grupos de usuarios. Cree los usuarios y, a continuación, asígneles funciones (en Windows, a los grupos). Lo normal es crear un conjunto de páginas cuyo acceso desea restringir a algunos usuarios. Para ello, lo más frecuente es aislar estas páginas restringidas en una carpeta.
  • 59. Puede utilizar la herramienta Administración de sitios Web para definir reglas que concedan o denieguen el acceso a las carpetas restringidas. Por ejemplo, puede configurar el sitio para que los miembros o los administradores tengan acceso a las páginas de la carpeta restringida, y denegar el acceso a los demás usuarios. Si un usuario sin autorización intenta ver una página restringida, el usuario ve un mensaje de error o se le redirige a la página especificada. Funciones y reglas de acceso
  • 60. Proveedor de autenticación mediante formularios La autenticación de formularios permite autenticar el nombre de usuario y la contraseña de los usuarios mediante un formulario de inicio de sesión que haya creado. Las solicitudes no autenticadas se redirigen a una página de inicio de sesión, en la que el usuario proporciona las credenciales y envía el formulario. Si la aplicación autentica la solicitud, el sistema emite un vale que contiene una clave con el fin de restablecer la identidad para posteriores solicitudes.