Patrones de seguridad y autenticación
Una aplicación web en producción vale lo que vale su seguridad. Este curso trata los patrones que protegen las aplicaciones Wisej.NET, desde la gestión de sesiones e identidad hasta los roles, OAuth y el refuerzo que debes aplicar antes de salir en producción. Trabajarás la autenticación y la identidad de sesión, la autorización basada en roles y claims, la integración de proveedores OAuth y una lista de comprobación práctica para reforzar el servidor en despliegues reales. Este curso está en producción: inscríbete ahora para recibir un aviso en cuanto esté disponible.
Sesiones, roles, OAuth y estrategias de refuerzo para aplicaciones Wisej en producción.
- Nivel: Advanced
- Duración: 6,6 h
- Módulos: 7
Este curso aún no está abierto. A continuación se muestra el temario previsto.
Temario
Módulo 1: El modelo de seguridad de Wisej.NET
Módulo 1 de Patrones de seguridad y autenticación — el itinerario de seguridad de Wisej.NET. Lee la guía de la lección y la guía del laboratorio / examen, mira el recorrido guiado sobre la superficie de ataque de AccessOps, supera la evaluación de conocimientos y completa después el laboratorio práctico en AccessOps.
- LecturaGuía de la lección · 14 min
Lo que el navegador puede y no puede ver en una interfaz de usuario del lado del servidor, el límite de sesión, el modelo de amenazas y dónde se ubica cada control. Qué significa esto para un desarrollador que protege una aplicación Wisej.NET en producción, y cómo leer este módulo.
- LecturaGuía del laboratorio / examen · 10 min
Qué construirás en el laboratorio práctico, el enfoque sugerido y los entregables requeridos.
- Lección en vídeoMapea la superficie de ataque de AccessOps · 14 min
Mapea la superficie de ataque de AccessOps: un recorrido guiado del Módulo 1, construido paso a paso en AccessOps. Se reproduce aquí mismo, en el reproductor.
Transcripción de la narración
Empiece por identificar qué debe proteger AccessOps y dónde entran las solicitudes. Los empleados, los documentos y las aprobaciones cruzan diferentes fronteras, por lo que una pantalla de inicio de sesión por sí sola no puede definir el modelo de seguridad.
Mantenga los valores confidenciales fuera de las propiedades de control incluso cuando un control esté oculto. La lógica empresarial del lado del servidor permanece en el servidor, pero el estado de la interfaz se puede transmitir al navegador.
Trace los límites entre el navegador, la sesión, el proceso y los servicios de datos. Un valor seguro dentro de una sesión puede quedar expuesto cuando un campo estático lo comparte entre usuarios.
Revise cada punto de entrada comparándolo con las categorías de amenazas y califique las consecuencias. La tabla conecta un posible ataque con el lugar donde debe operar un control defensivo.
Proyecte registros de empleados en los campos que el directorio realmente necesita. Ocultar una columna de salario no elimina su valor transmitido; Los datos de pago protegidos necesitan su propia recuperación comprobada.
Trate la visibilidad del botón solo como una presentación. El servicio de aprobación debe obtener a la persona que llama de la sesión, verificar el permiso y registrar la denegación independientemente de lo que muestre la pantalla.
Inspeccione los datos transmitidos junto a la cuadrícula visible. Los campos adicionales de salario y revisión demuestran por qué una captura de pantalla tranquilizadora no puede demostrar que los valores confidenciales permanecieron en el servidor.
Observe al coordinador invocando aprobación a pesar del control oculto. La solicitud sin cambios y la denegación registrada muestran que el límite del servicio, en lugar de la interfaz, hace cumplir la regla.
Cree el caparazón y documente los activos, los puntos de entrada, las amenazas y la ubicación del control. Estos entregables explican qué límites debe proteger cada característica de seguridad posterior.
- LecturaEjercicio de programación con IA · 20 min
Construye el ejemplo AccessOps de este módulo con ChatGPT o Claude a partir de un prompt listo para usar que dirige al modelo a la especificación del módulo, y después revisa, ejecuta y amplía lo que te devuelva.
- CuestionarioEvaluación de conocimientos — Módulo 1 · 10 min · Nota mínima 80%
- Laboratorio prácticoLaboratorio — Modelo de amenazas de AccessOps · 45 min
Objetivo: Crea la solución AccessOps y redacta su modelo de amenazas: dibuja los límites de confianza, enumera los activos (fichas de empleados, documentos, aprobaciones), identifica los puntos de entrada (inicio de sesión, subidas, descargas, endpoints personalizados, el asistente de IA), valora cada amenaza y asigna cada mitigación al módulo de este curso que la implementa. Construye el esqueleto de la aplicación con una página de inicio de sesión provisional. Entregables: solución AccessOps con una página de inicio de sesión provisional; diagrama de límites de confianza; inventario de activos y puntos de entrada; tabla de amenazas con probabilidad, impacto y mitigación; mapa de ubicación de los controles de seguridad.
Módulo 2: Autenticación e identidad de sesión
Módulo 2 de Patrones de seguridad y autenticación — el itinerario de seguridad de Wisej.NET. Lee la guía de la lección y la guía del laboratorio / examen, mira el recorrido guiado sobre autenticación e identidad de sesión, supera la evaluación de conocimientos y completa después el laboratorio práctico en AccessOps.
- LecturaGuía de la lección · 14 min
Flujos de inicio de sesión, tratamiento de contraseñas, un SessionContext con una identidad verificada, tiempos de expiración, cierre de sesión, «recordarme» y fijación de sesión. Qué significa esto para un desarrollador que protege una aplicación Wisej.NET en producción, y cómo leer este módulo.
- LecturaGuía del laboratorio / examen · 10 min
Qué construirás en el laboratorio práctico, el enfoque sugerido y los entregables requeridos.
- Lección en vídeoConstruye el inicio de sesión y la identidad de sesión de AccessOps · 14 min
Construye el inicio de sesión y la identidad de sesión de AccessOps: un recorrido guiado del Módulo 2, construido paso a paso en AccessOps. Se reproduce aquí mismo, en el reproductor.
Transcripción de la narración
Establezca una identidad de sesión verificada antes de proteger los registros y aprobaciones de AccessOps. Cada decisión de permiso posterior depende de saber a quién ha autenticado el servidor, en lugar de confiar en un valor de la pantalla.
No derive la identidad de un control oculto, indicador de ventana, selección de departamento o campo compartido de usuario actual. Esos valores están controlados por el cliente o tienen una vida útil incorrecta para la autenticación de sesión.
Siga la verificación de la contraseña en lugar de buscar el descifrado. El ejemplo deriva un valor utilizando la sal almacenada y el recuento de iteraciones, luego lo compara sin una salida temprana carácter por carácter.
Reemplace la sesión anónima después de una verificación exitosa para que su antiguo identificador no sobreviva al inicio de sesión. Advertir antes de que la inactividad caduque la sesión autenticada y luego liberar su estado asociado.
Compare el código de inicio de sesión rechazado con PasswordService.Verify. La sal almacenada y el factor de trabajo admiten la verificación, mientras que un mensaje de error externo evita revelar qué parte de las credenciales era incorrecta.
Siga la limitación, la verificación y la auditoría en la misma ruta de inicio de sesión. Los usuarios desconocidos aún incurren en trabajo de verificación y una rutina de cierre de sesión única proporciona una forma consistente de finalizar el estado autenticado.
Observe que los fallos repetidos producen el mismo mensaje de usuario antes del bloqueo. La auditoría distingue los resultados internamente; El momento oportuno también requiere atención porque la redacción por sí sola no puede evitar una diferencia observable.
Siga la advertencia de inactividad hasta la salida de la sesión. Los documentos y ventanas cargados pertenecen a esa duración, y regresar a través del historial del navegador debe generar un inicio de sesión en lugar de un acceso renovado.
Implemente el inicio y cierre de sesión como ciclos de vida completos, incluido el bloqueo, la verificación, la auditoría y el tiempo de espera. Cree la identidad de la sesión solo después de la verificación, luego pruebe cómo se comporta cada falla y salida.
- LecturaEjercicio de programación con IA · 20 min
Construye el ejemplo AccessOps de este módulo con ChatGPT o Claude a partir de un prompt listo para usar que dirige al modelo a la especificación del módulo, y después revisa, ejecuta y amplía lo que te devuelva.
- CuestionarioEvaluación de conocimientos — Módulo 2 · 10 min · Nota mínima 80%
- Laboratorio prácticoLaboratorio — Inicio de sesión e identidad de sesión · 45 min
Objetivo: Implementa la autenticación de AccessOps: una página de inicio de sesión con bloqueo de cuenta tras cinco fallos, verificación de contraseñas con un hash moderno con sal, un SessionContext creado solo tras la verificación y guardado en la sesión, una expiración por inactividad que devuelve al usuario al inicio de sesión y borra el estado, un Logout explícito que termina la sesión y un registro de auditoría por cada intento de inicio de sesión. Entregables: página de inicio de sesión con bloqueo de cuenta y mensajes de error genéricos; servicio de hash y verificación de contraseñas; SessionContext con identidad verificada; expiración por inactividad y cierre de sesión explícito; registros de auditoría de los inicios de sesión.
Módulo 3: Autorización: roles, claims y permisos
Módulo 3 de Patrones de seguridad y autenticación — el itinerario de seguridad de Wisej.NET. Lee la guía de la lección y la guía del laboratorio / examen, mira el recorrido guiado sobre la autorización a nivel de servicio, supera la evaluación de conocimientos y completa después el laboratorio práctico en AccessOps.
- LecturaGuía de la lección · 14 min
Comprobaciones basadas en roles y en claims, servicios de permisos, aplicación de las reglas en servicios y repositorios, y adaptación de la interfaz a lo que el usuario puede hacer. Qué significa esto para un desarrollador que protege una aplicación Wisej.NET en producción, y cómo leer este módulo.
- LecturaGuía del laboratorio / examen · 10 min
Qué construirás en el laboratorio práctico, el enfoque sugerido y los entregables requeridos.
- Lección en vídeoAplica los permisos en los servicios y refléjalos en la interfaz · 14 min
Aplica los permisos en los servicios y refléjalos en la interfaz: un recorrido guiado del Módulo 3, construido paso a paso en AccessOps. Se reproduce aquí mismo, en el reproductor.
Transcripción de la narración
Ahora separe conocer a la persona que llama de permitir la acción. Una sesión AccessOps autenticada aún necesita una regla que decida si ese empleado puede aprobar la solicitud en particular.
Proteger la operación comercial en sí, incluido el alcance del departamento y del gerente. Otra persona que llama puede omitir una verificación limitada a un botón, incluido un trabajo en segundo plano.
Resuelva roles y reclamos en permisos de sesión al iniciar sesión. Mantenga explícita la regla de precedencia: una denegación prevalece sobre una concesión, de modo que los aportes contradictorios no amplíen silenciosamente el acceso.
Coloque la guardia al inicio del método de aprobación. Los botones, tareas, trabajos y devoluciones de llamada deben pasarlo porque la operación tiene un límite de autorización independientemente de quién la llama.
Compare el código basado en visibilidad con los permisos resueltos por el servidor. Un conjunto de permisos inmutables y su tiempo de resolución describen la decisión del servidor; el botón puede reflejar esa decisión pero no puede establecerla.
Después de verificar el permiso, restrinja la consulta a las solicitudes que este administrador pueda aprobar. El permiso de operación y el alcance del registro responden a preguntas diferentes y ambos deben aplicarse antes de que se devuelvan los datos.
Compare las pantallas de Dana y Miriam para ver los permisos reflejados en la navegación y los comandos. La opción de aprobación del administrador también depende de la relación de la solicitud con sus propios informes.
Llame al servicio directamente con un identificador falsificado para probar el límite real. Una denegación, un registro del servidor y una solicitud sin cambios demuestran protección incluso cuando se omite la interfaz.
Guarde las operaciones de aprobación y documentos y alcance sus consultas de datos. Envíe una prueba negativa junto con la interfaz adaptada para demostrar que el servidor rechaza una solicitud no autorizada.
- LecturaEjercicio de programación con IA · 20 min
Construye el ejemplo AccessOps de este módulo con ChatGPT o Claude a partir de un prompt listo para usar que dirige al modelo a la especificación del módulo, y después revisa, ejecuta y amplía lo que te devuelva.
- CuestionarioEvaluación de conocimientos — Módulo 3 · 10 min · Nota mínima 80%
- Laboratorio prácticoLaboratorio — Autorización a nivel de servicio · 45 min
Objetivo: Añade autorización a AccessOps: un PermissionService que convierte roles y claims en permisos al iniciar sesión, una protección Authorize a la que llaman todos los métodos de DocumentService y ApprovalService, una regla a nivel de registro por la que los empleados solo ven su departamento y los responsables solo a sus subordinados, una interfaz que oculta las acciones de administración y desactiva los botones de aprobar que el usuario no puede usar, y una prueba que demuestra que el servicio rechaza una solicitud falsificada de alguien que no es responsable. Entregables: PermissionService que resuelve los permisos en el SessionContext; protección de autorización en cada método de servicio; reglas a nivel de registro por departamento y por responsable; adaptación de la interfaz según los permisos; prueba negativa con una solicitud falsificada.
Módulo 4: Integración con OAuth y OpenID Connect
Módulo 4 de Patrones de seguridad y autenticación — el itinerario de seguridad de Wisej.NET. Lee la guía de la lección y la guía del laboratorio / examen, mira el recorrido guiado sobre el inicio de sesión externo, supera la evaluación de conocimientos y completa después el laboratorio práctico en AccessOps.
- LecturaGuía de la lección · 14 min
Delegar el inicio de sesión en un proveedor de identidades, el flujo de código de autorización, la gestión de redirecciones en una aplicación Wisej.NET, la validación de tokens y la asignación de claims al SessionContext. Qué significa esto para un desarrollador que protege una aplicación Wisej.NET en producción, y cómo leer este módulo.
- LecturaGuía del laboratorio / examen · 10 min
Qué construirás en el laboratorio práctico, el enfoque sugerido y los entregables requeridos.
- Lección en vídeoInicia sesión en AccessOps con un proveedor de identidades externo · 14 min
Inicia sesión en AccessOps con un proveedor de identidades externo: un recorrido guiado del Módulo 4, construido paso a paso en AccessOps. Se reproduce aquí mismo, en el reproductor.
Transcripción de la narración
Reemplace la verificación de contraseña local con la identidad del proveedor corporativo. El navegador realiza el proceso de inicio de sesión, pero AccessOps debe validar el retorno antes de crear una sesión confiable.
La delegación centraliza el ciclo de vida de la cuenta y la política de inicio de sesión. También introduce un mensaje de identidad entrante que la aplicación debe tratar como no confiable hasta que se complete la validación.
Siga el redireccionamiento, el código de un solo uso y el intercambio de servidor por separado. State, nonce y el desafío de clave de prueba conectan el regreso con el intento de inicio de sesión que realmente lo inició.
Mantenga el verificador, el nonce y el destino en el servidor detrás de un identificador de corta duración. Hacer coincidir y consumir ese registro evita que el navegador defina este estado de inicio de sesión.
Decodificar un token de identidad sólo revela su contenido. Validar firma, emisor, audiencia, duración y nonce antes de utilizar reclamaciones; El contenido legible no es prueba de una identidad válida.
Mapa emisor validado y sujeto a un empleado. Las cuentas recién aprovisionadas comienzan sin derechos porque los permisos de las aplicaciones se resuelven localmente en lugar de otorgarse automáticamente con una identidad.
Intercambio de seguimiento, validación, mapeo y creación de sesiones juntos. Pruebe los casos rechazados con tanto cuidado como los casos exitosos, porque aceptar una devolución no válida es lo que este límite debe evitar.
Distinga las sesiones de la aplicación y del proveedor durante el cierre de sesión. Finalizar solo la sesión Wisej.NET puede permitir el inicio de sesión silencioso nuevamente; El flujo de fin de sesión del proveedor maneja su vida útil por separado.
Cree el cliente OpenID Connect con una clave de prueba para el intercambio y la validación de códigos. Incluya el aprovisionamiento, el respaldo de la cuenta de servicio especificada y el cierre de sesión dirigido a ambos propietarios de la sesión.
- LecturaEjercicio de programación con IA · 20 min
Construye el ejemplo AccessOps de este módulo con ChatGPT o Claude a partir de un prompt listo para usar que dirige al modelo a la especificación del módulo, y después revisa, ejecuta y amplía lo que te devuelva.
- CuestionarioEvaluación de conocimientos — Módulo 4 · 10 min · Nota mínima 80%
- Laboratorio prácticoLaboratorio — Inicio de sesión externo con OIDC · 45 min
Objetivo: Añade el inicio de sesión externo a AccessOps: un cliente OpenID Connect que usa el flujo de código de autorización con PKCE contra un proveedor de identidades de prueba, un controlador de callback que valida el token de ID y su nonce, una asignación de claims que rellena el SessionContext y aprovisiona una ficha de empleado local en el primer inicio de sesión, una alternativa de inicio de sesión local para las cuentas de servicio y un cierre de sesión que termina tanto la sesión local como la del proveedor. Entregables: configuración del cliente OIDC con PKCE; gestión del callback con validación del token y del nonce; asignación de claims y aprovisionamiento en el primer inicio de sesión; inicio de sesión local alternativo para cuentas de servicio; cierre de sesión que cubre ambas sesiones.
Módulo 5: Protección de datos, subidas, descargas y handlers
Módulo 5 de Patrones de seguridad y autenticación — el itinerario de seguridad de Wisej.NET. Lee la guía de la lección y la guía del laboratorio / examen, mira el recorrido guiado sobre los documentos confidenciales, supera la evaluación de conocimientos y completa después el laboratorio práctico en AccessOps.
- LecturaGuía de la lección · 14 min
Autorizar subidas y descargas de archivos, handlers HTTP personalizados seguros, validación de la entrada, codificación de la salida, e inyección y riesgos entre sitios en una interfaz de usuario del lado del servidor. Qué significa esto para un desarrollador que protege una aplicación Wisej.NET en producción, y cómo leer este módulo.
- LecturaGuía del laboratorio / examen · 10 min
Qué construirás en el laboratorio práctico, el enfoque sugerido y los entregables requeridos.
- Lección en vídeoProtege la función de documentos confidenciales · 14 min
Protege la función de documentos confidenciales: un recorrido guiado del Módulo 5, construido paso a paso en AccessOps. Se reproduce aquí mismo, en el reproductor.
Transcripción de la narración
Inspeccione los bytes reales que cruzan los límites de AccessOps. Un inicio de sesión verificado no protege automáticamente las cargas, los enlaces generados o los archivos servidos fuera de la ruta de autorización de la aplicación.
Identifique archivos estáticos, cargas confiables, controladores independientes y texto de usuario interpretado. Cada circunvalación cruza un límite diferente y, por lo tanto, necesita una verificación explícita allí.
Distinguir una dirección estática de una operación de documento autorizada. La recuperación protegida debe pasar controles de identificación, permisos y auditoría en el servicio antes de que la aplicación envíe el archivo.
Verifique el tamaño de carga, la extensión permitida y la firma del contenido antes de aceptar el almacenamiento. Un nombre elegido por el servidor y una cuarentena separan los archivos entrantes de los documentos escaneados listos para su publicación.
Trate el identificador del documento como una solicitud de autorización, no como una ruta del sistema de archivos. El servicio debe establecer permiso de lectura antes de abrir bytes, independientemente del valor de la grilla.
Autentique el contenido del enlace compartido y su vencimiento antes de entregar el documento. Desconfíe también de los valores entrantes en los comandos de la base de datos, las etiquetas interpretadas y las llamadas del navegador en lugar de confiar en su origen.
Siga el ejecutable renombrado a través de la validación. Un control de extensión es insuficiente: la firma lo rechaza, mientras que el documento original sigue la cuarentena y el escaneo antes de su almacenamiento.
Pruebe descargas falsificadas y enlaces alterados de otro departamento. El rechazo constante demuestra controles independientes en cada solicitud en lugar de confiar en botones ocultos o navegación en pantalla.
Complete las puertas de carga, las descargas autorizadas y los enlaces firmados que vencen, luego pruebe la falsificación. Revise también las consultas y las cadenas mostradas: los archivos son solo una ruta para valores que no son de confianza.
- LecturaEjercicio de programación con IA · 20 min
Construye el ejemplo AccessOps de este módulo con ChatGPT o Claude a partir de un prompt listo para usar que dirige al modelo a la especificación del módulo, y después revisa, ejecuta y amplía lo que te devuelva.
- CuestionarioEvaluación de conocimientos — Módulo 5 · 10 min · Nota mínima 80%
- Laboratorio prácticoLaboratorio — Función de documentos segura · 45 min
Objetivo: Protege la función de documentos de AccessOps: subidas limitadas por tamaño y tipo con análisis del contenido, almacenadas fuera de la raíz web con un nombre aleatorio y vinculadas al departamento propietario; descargas que pasan por la autorización de DocumentService y por Application.Download; un handler personalizado para un enlace compartido firmado que caduca en una hora; y una revisión de que todas las consultas están parametrizadas y de que toda cadena proporcionada por el usuario se codifica antes de mostrarse. Entregables: canal de subida validado con carpeta de cuarentena; descarga autorizada a través del servicio; handler de enlaces compartidos firmados y con caducidad; revisión de consultas parametrizadas y codificación de la salida; prueba con una solicitud de descarga falsificada.
Módulo 6: Auditoría, secretos y configuración
Módulo 6 de Patrones de seguridad y autenticación — el itinerario de seguridad de Wisej.NET. Lee la guía de la lección y la guía del laboratorio / examen, mira el recorrido guiado sobre el registro de auditoría y los secretos, supera la evaluación de conocimientos y completa después el laboratorio práctico en AccessOps.
- LecturaGuía de la lección · 14 min
Registros de auditoría para comandos sensibles, ID de correlación, gestión de secretos, configuración por entorno y logging sin filtrar datos. Qué significa esto para un desarrollador que protege una aplicación Wisej.NET en producción, y cómo leer este módulo.
- LecturaGuía del laboratorio / examen · 10 min
Qué construirás en el laboratorio práctico, el enfoque sugerido y los entregables requeridos.
- Lección en vídeoAñade registros de auditoría y saca los secretos del código · 14 min
Añade registros de auditoría y saca los secretos del código: un recorrido guiado del Módulo 6, construido paso a paso en AccessOps. Se reproduce aquí mismo, en el reproductor.
Transcripción de la narración
Tome decisiones de seguridad explicables después del evento. AccessOps necesita evidencia de acciones permitidas y denegadas, junto con una administración secreta que no exponga las credenciales a través de fuentes o registros.
Considere una investigación después de que los registros operativos hayan rotado. El estado de aprobación actual no puede explicar los actores o los intentos fallidos, y eliminar un secreto hoy no borra el historial del repositorio.
Registre juntos el actor, la acción, el objetivo, el tiempo, la fuente, el resultado y la correlación. El acceso de solo inserción y la integridad encadenada ayudan a detectar el historial faltante en lugar de simplemente preservar el estado comercial final.
Mueva las credenciales a una configuración apropiada para el entorno fuera de la fuente. Defina la rotación con credenciales válidas superpuestas para que el reemplazo se convierta en un procedimiento operativo planificado en lugar de una interrupción improvisada.
Cree una correlación en la entrada del comando y llévela a través del alcance del registro. Realizar la auditoría con aprobación para que sus registros describan la misma transacción completada.
Cargue la configuración a través de los proveedores previstos y restrinja las propiedades registradas. Redacte tokens, cookies y encabezados confidenciales en el destino del registro antes de que se conviertan en registros persistentes.
Inspeccione la aprobación exitosa y la descarga rechazada anteriormente. La acción denegada puede explicar la investigación, por lo que auditar sólo los cambios exitosos dejaría una brecha crítica.
Utilice un valor de correlación para reconstruir la acción entre servicios. La secuencia conectada no debe contener contraseñas, tokens, nombres personales ni credenciales de conexión.
Ofrezca auditoría de solo anexos, correlación propagada, secretos externos y un procedimiento de rotación. Revise la redacción para que la evidencia recopilada por motivos de seguridad no se convierta en otra fuente de divulgación.
- LecturaEjercicio de programación con IA · 20 min
Construye el ejemplo AccessOps de este módulo con ChatGPT o Claude a partir de un prompt listo para usar que dirige al modelo a la especificación del módulo, y después revisa, ejecuta y amplía lo que te devuelva.
- CuestionarioEvaluación de conocimientos — Módulo 6 · 10 min · Nota mínima 80%
- Laboratorio prácticoLaboratorio — Registro de auditoría y secretos · 45 min
Objetivo: Añade auditoría y gestión de secretos a AccessOps: un AuditService que registra aprobaciones, cambios de permisos y descargas de documentos con el usuario, la hora, la dirección y el ID de correlación; una tabla de auditoría de solo anexado; un ID de correlación creado por comando y escrito en cada línea de log; las cadenas de conexión y el secreto de cliente OIDC trasladados a la configuración del entorno con un procedimiento de rotación documentado; y una revisión de los logs que enmascara los campos sensibles. Entregables: AuditService y tabla de auditoría de solo anexado; ID de correlación en cada comando y cada línea de log; secretos trasladados a la configuración del entorno; procedimiento de rotación de secretos; revisión del enmascaramiento de los logs.
Módulo 7: Lista de comprobación de bastionado y proyecto final
Módulo 7 de Patrones de seguridad y autenticación — el itinerario de seguridad de Wisej.NET. Lee la guía de la lección y la guía del laboratorio / examen, mira el recorrido guiado sobre la lista de comprobación de bastionado, supera la evaluación de conocimientos y completa después el laboratorio práctico en AccessOps.
- LecturaGuía de la lección · 14 min
HTTPS y cabeceras de seguridad, atributos de las cookies, ajustes de sesión, actualización de dependencias, limitación de frecuencia, bastionado del despliegue y la revisión de seguridad de AccessOps. Qué significa esto para un desarrollador que protege una aplicación Wisej.NET en producción, y cómo leer este módulo.
- LecturaGuía del laboratorio / examen · 10 min
Qué construirás en el laboratorio práctico, el enfoque sugerido y los entregables requeridos.
- Lección en vídeoBastiona y publica AccessOps · 14 min
Bastiona y publica AccessOps: un recorrido guiado del Módulo 7, construido paso a paso en AccessOps. Se reproduce aquí mismo, en el reproductor.
Transcripción de la narración
Extiende la revisión desde el código de la aplicación hasta su host. Las comprobaciones de contraseñas y los permisos no pueden compensar un transporte débil, configuraciones de sesión o dependencias no revisadas en la implementación.
Inspeccione el transporte, las cookies, los marcos, los inicios de sesión repetidos y los avisos de dependencia. Estos problemas pueden existir con una lógica empresarial correcta, por lo que la implementación necesita su propia revisión de seguridad.
Aplique políticas de respuesta de manera consistente y evalúe la política de contenido antes de aplicarla. Restringen el comportamiento del navegador, incluido el encuadre y la interpretación del contenido, en las respuestas de la aplicación.
Configure protecciones de cookies junto con el tiempo de espera de la sesión, el tamaño de la solicitud y los límites de velocidad. Estos controles vinculaban diferentes recursos y exposiciones; una configuración no puede reemplazar a las demás.
Siga el orden del middleware desde los encabezados reenviados hasta las redirecciones y las políticas de protección. Registrarlos ante el controlador de la aplicación garantiza que sus respuestas pasen por las protecciones previstas.
Limite los enlaces compartidos en su límite de solicitud, pero limite el inicio de sesión dentro del servicio. Un punto final de evento compartido no puede distinguir la costosa acción de inicio de sesión simplemente por su dirección.
Inspeccione las respuestas cifradas reales, los atributos de las cookies y el controlador de enlaces compartidos independiente. La configuración por sí sola no prueba que cada respuesta tenga la protección requerida.
Ejecute la lista de verificación con la aplicación implementada y revise los hallazgos de dependencia con decisiones explícitas. Resuelva las lagunas demostradas antes de la aprobación en lugar de tratar los archivos de configuración como prueba.
Ofrezca políticas de transporte y respuesta, límites de sesiones, controles de tarifas específicos y una revisión de dependencias fechada. La lista de verificación completa debe reflejar el comportamiento observado en los siete módulos.
- LecturaEjercicio de programación con IA · 20 min
Construye el ejemplo AccessOps de este módulo con ChatGPT o Claude a partir de un prompt listo para usar que dirige al modelo a la especificación del módulo, y después revisa, ejecuta y amplía lo que te devuelva.
- CuestionarioEvaluación de conocimientos — Módulo 7 · 10 min · Nota mínima 80%
- Laboratorio prácticoLaboratorio — Revisión de bastionado y proyecto final · 45 min
Objetivo: Completa el proyecto final de AccessOps: impón HTTPS con HSTS y configura las cabeceras de seguridad, marca las cookies como Secure y HttpOnly con una política SameSite estricta, fija el tiempo de expiración de la sesión y los límites de tamaño de las solicitudes, añade limitación de frecuencia al inicio de sesión y a los enlaces compartidos, ejecuta una auditoría de dependencias y registra los resultados, y después recorre la lista de comprobación completa de este curso contra la aplicación y corrige cada hallazgo. Entregables: configuración de HTTPS, HSTS y cabeceras de seguridad; ajustes de bastionado de cookies y sesión; limitación de frecuencia en el inicio de sesión y los enlaces compartidos; informe de auditoría de dependencias; lista de comprobación de la revisión de seguridad completada con las correcciones.