ViennaNET.KasperskyScanEngine.Client 8.0.8

dotnet add package ViennaNET.KasperskyScanEngine.Client --version 8.0.8                
NuGet\Install-Package ViennaNET.KasperskyScanEngine.Client -Version 8.0.8                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="ViennaNET.KasperskyScanEngine.Client" Version="8.0.8" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add ViennaNET.KasperskyScanEngine.Client --version 8.0.8                
#r "nuget: ViennaNET.KasperskyScanEngine.Client, 8.0.8"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install ViennaNET.KasperskyScanEngine.Client as a Cake Addin
#addin nuget:?package=ViennaNET.KasperskyScanEngine.Client&version=8.0.8

// Install ViennaNET.KasperskyScanEngine.Client as a Cake Tool
#tool nuget:?package=ViennaNET.KasperskyScanEngine.Client&version=8.0.8                

ViennaNET.KasperskyScanEngine.Client

Библиотека предоставляет API HTTP-клиента, реализующего протокол KAV версии 3, позволяющий взаимодействовать в режиме HTTP с службой Kaspersky Scan Engine, для сканирования файлов на наличие вирусов.

Оглавление

Введение

Клиент использует протокол KAV для взаимодействия с Kaspersky Scan Engine посредством HTTP-запросов, и осуществления сканирования файлов или url адресов, передаваемых пользователем, на наличие вирусов, а так же выполнения других, поддерживаемых KAV операций. HTTP клиент, создан с использованием ViennaNET.Extensions.Http поддерживает все параметры конфигурации определённые ClientOptionsBase, в томчисле политики повтора.

Установка

Добавьте в проект сслыку на пакте ViennaNET.KasperskyScanEngine.Client.

dotnet add package ViennaNET.KasperskyScanEngine.Client

Руководство пользователя

Добавьте IKasperskyScanEngineApi в коллекцию служб.

builder.Services.AddKasperskyScanEngineApi(builder.Configuration);

Определите конфигурацию в appsettings.json или с использованием любого другого поставщика конфигурации, по умолчанию конфигурация ожидается в секции: Endpoints:KasperskyScanEngine, как определено в KseClientOption.SectionName.

{
    "Endpoints": {
        "KasperskyScanEngine": {
            "BaseAddress": "https://kse.example.ru/api/v3.0/"
        }
    }
}

⚠️ Cуффикс api/{ver}/ должен быть указан.

Вы можете указать другую секцию из которой необходимо считывать параметры конфигурации.

builder.Services.AddKasperskyScanEngineApi(builder.Configuration, 
    opt => builder.Configuration.GetSection("MyKseOptions").Bind(opt));

Когда конфигурация определена, внедрите IKasperskyScanEngineApi в конструкторе целевого класса и отправьте запрос, например:

var content = Convert.ToBase64String(File.ReadAllBytes("test.txt"));
var response = await api.PostScanMemoryAsync(new ScanMemoryRequest(content, "test.txt"));

if(response.IsDetect)
{
    // предпринимаем меры.
}

if(response.IsClean)
{
    // Всё хорошо.
}

Если KSE требует аутентификации и авторизации с помощью токена определите его в конфигурации.

{
    "Endpoints": {
        "KasperskyScanEngine": {
            "BaseAddress": "https://kse.example.ru/api/v3.0/",
            "AuthorizationToken": "SldYQTUyOUNVMnE3VWR2N3Izamk2QkVNc2hhLTV5dTBLcVUzeXZLdGYtNkkrVFUyQUVRQUNLQUFCSWdwRUlJTQ=="
        }
    }
}

После указание параметра AuthorizationToken, все запросы к KSE будут включать заголовок Authorization: Bearer {ваш токен}.

Остальные параметры HTTP-клиента смотрите в ViennaNET.Extensions.Http.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
8.0.8 126 4/23/2024