Skip to content

JhersonHuacho/MusicStoreApi

Repository files navigation

Api .Net 8.0

Autenticación y Autorización

Páginación CORS Delegados

Identity Server 4 (https://identityserver.io/) es una herramienta de código abierto que se utiliza para gestionar la autenticación y la autorización en aplicaciones web y móviles. * es una implementación de OpenID Connect y OAuth 2.0, que son protocolos de autenticación y autorización estándar en la industria. * proporciona una solución centralizada para la autenticación y la autorización, lo que facilita la implementación de la seguridad en las aplicaciones.

Qué otras herramientas para autenticación y autorización existe aparte de Identity Server?

  • Auth0 => Auth0 es una plataforma de identidad en la nube que se utiliza para gestionar la autenticación y la autorización en aplicaciones web y móviles.
  • Okta => Okta es una plataforma de identidad en la nube que se utiliza para gestionar la autenticación y la autorización en aplicaciones web y móviles.
  • Keycloak es una herramienta de código abierto que se utiliza para gestionar la autenticación y la autorización en aplicaciones web y móviles.
  • AWS Cognito es un servicio de autenticación y autorización de AWS que se utiliza para gestionar la autenticación y la autorización en aplicaciones web y móviles.
  • Firebase Authentication es un servicio de autenticación de Firebase que se utiliza para gestionar la autenticación y la autorización en aplicaciones web y móviles.
  • OAuth.io es una plataforma de autenticación y autorización que se utiliza para gestionar la autenticación y la autorización en aplicaciones web y móviles.
  • Stormpath, Ping Identity, ForgeRock, Gluu, Shibboleth, SimpleSAMLphp

Diferencias entre Identity y Identity Server 4

Identity es una herramienta de Microsoft que se utiliza para gestionar la autenticación y la autorización en aplicaciones web y móviles. Identity Server 4 es una herramienta de código abierto que se utiliza para gestionar la autenticación y la autorización en aplicaciones web y móviles.

Paginación parte II

Para trabajar con HttpContext en .NET Core, primero debemos agregar el paquete Microsoft.AspNetCore.Http a nuestro proyecto.

Vamos a implementar CORS. CORS (Cross-Origin Resource Sharing) es un mecanismo que permite a los navegadores realizar solicitudes a un servidor desde un origen diferente al del propio servidor. CORS es un mecanismo de seguridad que protege a los usuarios de sitios web maliciosos que intentan robar información de los usuarios.

Búsqueda con predicados

Un delegado es un tipo de referencia que se utiliza para almacenar una referencia a un método. En c# hay varios tipos de delegados:

  • Action: representa un método que no devuelve un valor.
  • Func: representa un método que devuelve un valor.
  • Predicate: representa un método que devuelve un valor booleano.

Delegados en C# son similares a los punteros a funciones en C y C++, pero son más seguros y fáciles de usar. Ejemplo de delegado en C#:

using System;

Result Pattern es un patrón de diseño que se utiliza para representar el resultado de una operación que puede tener éxito o fallar. Es una forma de manejar los errores de una manera más segura y eficiente que las excepciones. Es una alternativa a las excepciones que se utiliza en algunos lenguajes de programación, como Rust y F#.

Ejemplo de Result Pattern en C#:

using System;

Autenticación y Autorización

Identity es una herramienta de Microsoft que se utiliza para gestionar la autenticación y la autorización en aplicaciones web y móviles. Vamos a instalar Identity en nuestro proyecto de .NET Core.

Para instalar Identity en nuestro proyecto de .NET Core, primero debemos agregar el paquete Microsoft.AspNetCore.Identity.EntityFrameworkCore a nuestro proyecto. Y luego el paquete Microsoft.AspNetCore.Authentication.JwtBear a nuestro proyecto. Microsoft.AspNetCore.Authentication.JwtBear es un paquete que se utiliza para implementar la autenticación basada en tokens JWT en aplicaciones web y móviles.

Migraciones automáticas y seed data

Seed Data es un conjunto de datos que se utiliza para inicializar una base de datos con datos de prueba.

Register y Login (uso de options pattern)

Reset y change password feature

Refactorizando Sales (con el uso de los claims)

Probando con swagger y postmam

Trabajando con archivos y validaciones personalizadas

Guardar archivos en la nube con Azure Storage y en local

Azure Storage es un servicio de almacenamiento en la nube de Microsoft que se utiliza para almacenar datos de forma segura y escalable.

Minimal APIs, Healthcheck y Excepciones globales

Preparando proyecto para subir a producción y UnitTest

Subiendo proyecto a la nube de Azure: AppService, SQL Server, SQL Database

App Service es un servicio de Azure que se utiliza para implementar aplicaciones web y móviles en la nube.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages