README.md
se agrego readme.md
This commit is contained in:
@@ -0,0 +1,79 @@
|
||||
|
||||
# Integración de la Biblioteca AuditLogs
|
||||
|
||||
## Configuración y Uso de AuditLogs
|
||||
|
||||
Este documento es una guia para la utilización de la biblioteca `AuditLogs` en aplicaciones .NET que requieren funcionalidades de auditoría mediante MongoDB.
|
||||
|
||||
### Configuración Inicial
|
||||
|
||||
#### 1. Configuración en `appsettings.json`
|
||||
|
||||
Agregue la siguiente configuración para la conexión a la base de MongoDB que usara la biblioteca, esto se pone en el archivo `appsettings.json`:
|
||||
|
||||
```json
|
||||
"DatabaseConfigurationAudit": {
|
||||
"ConnectionString": "mongodb://usuario:contraseña@host:puerto/?authSource=base_de_datos_autenticación",
|
||||
"DatabaseName": "AuditMeddisPlanUciPanel"
|
||||
}
|
||||
```
|
||||
|
||||
#### 2. Instalación de la Biblioteca
|
||||
|
||||
Instale la biblioteca `AuditLogs` a través de NuGet con el siguiente comando:
|
||||
|
||||
```bash
|
||||
dotnet add package AuditLogs
|
||||
```
|
||||
previamente se tuvo que haber configurado esta fuente https://smacs-nuget.epigramdev.com/v3/index.json
|
||||
|
||||
#### 3. Configuración en `Program.cs`
|
||||
|
||||
Para configurar los servicios de la biblioteca en el archivo Program.cs, se debe incluir el espacio de nombres audit_logs.Extensions y ejecutar el método AddAuditServices:
|
||||
|
||||
```csharp
|
||||
using audit_logs.Extensions;
|
||||
|
||||
var builder = WebApplication.CreateBuilder(args);
|
||||
|
||||
// Configuración de servicios de auditoría
|
||||
builder.Services.AddAuditServices(builder.Configuration);
|
||||
builder.Services.AddHttpContextAccessor();
|
||||
```
|
||||
|
||||
### Uso en Servicios
|
||||
|
||||
Implemente `IAuditService` en los servicios donde se requiera registrar eventos de auditoría.
|
||||
El servicio de admisiones, por ejemplo, puede configurarse de la siguiente manera, donde se inyecta IAuditService y IHttpContextAccessor para registrar eventos de auditoría relacionados con las admisiones de pacientes:
|
||||
|
||||
#### Ejemplo en el Servicio de Admisiones
|
||||
|
||||
```csharp
|
||||
public class AdmissionService : IAdmissionService
|
||||
{
|
||||
private readonly IAuditService _auditService;
|
||||
private readonly IHttpContextAccessor _httpContextAccessor;
|
||||
// Inyección de otros servicios necesarios...
|
||||
|
||||
public AdmissionService(IAuditService auditService, IHttpContextAccessor httpContextAccessor, /* otros parámetros */)
|
||||
{
|
||||
_auditService = auditService;
|
||||
_httpContextAccessor = httpContextAccessor;
|
||||
// Inicialización de otros servicios...
|
||||
}
|
||||
|
||||
public async Task AdmitPatient(Patient patient)
|
||||
{
|
||||
var httpContext = _httpContextAccessor.HttpContext;
|
||||
var insertedAdmission = /* lógica para admitir al paciente */;
|
||||
|
||||
// Registro de evento de auditoría
|
||||
await _auditService.CreateAuditLogAsync(httpContext.User, null, insertedAdmission);
|
||||
}
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
### Resumen
|
||||
|
||||
Los pasos anteriores permiten la integración de la biblioteca `AuditLogs` para la captura y registro de eventos de auditoría de manera eficiente. Es recomendable realizar pruebas exhaustivas en el entorno de desarrollo antes de desplegar en producción para asegurar la correcta configuración y funcionamiento.
|
||||
Reference in New Issue
Block a user