본문으로 건너뛰기
hs-sql-agent

ASP.NET Core · NuGet

전체 제품 구성이 필요하면 Hosting, 맞춤 구성이 필요하면 Server를 사용하세요.

HsSqlAgent.Hosting은 공식 Docker 이미지와 같은 표준 구성을 .NET 호스트에 포함합니다. 기존 ASP.NET Core 애플리케이션이 인증, 미들웨어, 관리 UI, 텔레메트리 또는 승인 흐름을 직접 관리해야 한다면 HsSqlAgent.Server를 사용합니다.

01

전체 제품 포함

HsSqlAgent.Hosting은 Docker와 동일한 공식 표준 구성과 설정 계약을 제공합니다.

02

맞춤 통합

HsSqlAgent.Server에서는 런타임, 영속성, MCP, 관리 API, 인증, 텔레메트리와 승인 기능을 호스트가 직접 선택합니다.

03

호스트 경계 유지

기존 애플리케이션의 인증, 권한 부여, 프런트엔드, 예외 처리, 텔레메트리와 미들웨어 순서를 그대로 유지할 수 있습니다.

세 가지 사용 방식

독립 서비스는 공식 Docker 이미지를 배포합니다. .NET 애플리케이션에 같은 전체 제품 구성을 포함하려면 HsSqlAgent.Hosting을 사용하고, 일부 기능을 교체하거나 제외해야 할 때는 HsSqlAgent.Server를 사용합니다.

  • 독립 배포: 공식 Docker 이미지
  • 전체 제품 포함: HsSqlAgent.Hosting
  • 맞춤 ASP.NET Core 통합: HsSqlAgent.Server
표준 호스트 포함

            
              using HsSqlAgent.Hosting;

var builder = WebApplication.CreateBuilder(args);
builder.AddHsSqlAgentStandardHost();

var app = builder.Build();
app.UseHsSqlAgentStandardHost();
await app.RunAsync();
            
          

HsSqlAgent.Server로 기존 애플리케이션의 제어권 유지

기존 API는 AddHsSqlAgentCore()에서 시작해 필요한 기능만 추가합니다. 관리 API 권한 부여는 호스트의 기존 정책에 위임할 수 있고 DML 승인 공급자도 별도로 교체할 수 있습니다.

모듈식 통합

            
              var hs = builder.Services.AddHsSqlAgentCore();

hs.AddHsSqlAgentRuntime();
hs.AddHsSqlAgentAdminStore(options =>
{
    options.Provider = "Postgres";
    options.ConnectionString =
        builder.Configuration.GetConnectionString("HsSqlAgent")!;
});
hs.AddHsSqlAgentHostAuthorization("SqlAgentAdmin");
hs.AddHsSqlAgentAdminApi();
            
          

승인 시스템에 SQL 실행 권한을 넘기지 않음

MCP Elicitation이 기본 공식 승인 방식입니다. 표준 Hosting은 설정으로 공식 Webhook 어댑터를 선택할 수 있고, 모듈형 호스트는 HsSqlAgent.Approvals.Webhook 또는 자체 IDmlApprovalProvider를 등록할 수 있습니다. SQL 검증, 승인 증거 결합, 커밋 직전 재검증과 원자적 실행은 계속 HsSqlAgent가 담당합니다.