⚖️ AI 규제/윤리

시장 감시 당국

Market Surveillance Authority

EU AI Act 준수를 감독하고 위반 시 제재를 부과하는 국가 기관.

상세 설명

시장 감시 당국(Market Surveillance Authority)은 EU AI Act 제70조에 따라 각 회원국이 지정하는 국가 기관으로, AI 시스템의 EU AI Act 준수를 감독하고 위반 시 제재를 부과하는 권한을 가진 규제 기관입니다. 각 회원국은 최소 하나의 시장 감시 당국을 지정해야 합니다.

시장 감시 당국의 권한은 제74-79조에 명시되어 있습니다. 주요 권한으로는 적합성 평가 문서 요청, 소스 코드 접근 요청, 현장 점검 실시, AI 시스템 테스트, 시정 조치 명령, 시장 철수 및 리콜 명령, 과징금 부과 등이 있습니다. 특히 제78조는 당국이 필요시 AI 시스템의 소스 코드에 접근할 수 있도록 규정합니다.

고위험 AI 시스템의 경우, 시장 감시 당국은 더욱 강화된 감독을 수행합니다. 부속서 III에 나열된 고위험 분야(생체인식, 교육, 고용, 신용 등)의 AI 시스템에 대해서는 사전 등록 확인, 적합성 선언서 검토, 실제 운영 환경에서의 성능 검증 등을 실시합니다.

각 국가별 시장 감시 당국의 예시로는 독일 BfDI(연방 데이터보호감독관), 프랑스 CNIL, 네덜란드 Autoriteit Persoonsgegevens, 이탈리아 Garante 등이 있습니다. 이들은 자국 내 AI Act 집행을 담당하며, EU AI Office와 협력하여 회원국 간 일관된 집행을 보장합니다.

코드 예제

# 시장 감시 당국 대응 관리 시스템
from dataclasses import dataclass, field
from datetime import datetime, timedelta
from typing import List, Dict, Optional
from enum import Enum

class AuthorityAction(Enum):
    DOCUMENT_REQUEST = "document_request"
    SOURCE_CODE_ACCESS = "source_code_access"
    ON_SITE_INSPECTION = "on_site_inspection"
    SYSTEM_TESTING = "system_testing"
    CORRECTIVE_ORDER = "corrective_action_order"
    MARKET_WITHDRAWAL = "market_withdrawal_order"
    PENALTY = "administrative_penalty"

@dataclass
class MarketSurveillanceAuthority:
    """EU 회원국 시장 감시 당국 정보"""
    country: str
    authority_name: str
    authority_code: str
    contact_email: str
    ai_act_competent: bool = True

# 주요 EU 시장 감시 당국 목록
EU_AUTHORITIES = {
    "DE": MarketSurveillanceAuthority("Germany", "BfDI", "DE-MSA", "info@bfdi.bund.de"),
    "FR": MarketSurveillanceAuthority("France", "CNIL", "FR-MSA", "cnil@cnil.fr"),
    "NL": MarketSurveillanceAuthority("Netherlands", "AP", "NL-MSA", "info@autoriteitpersoonsgegevens.nl"),
    "IT": MarketSurveillanceAuthority("Italy", "Garante", "IT-MSA", "garante@garanteprivacy.it"),
}

@dataclass
class AuthorityRequest:
    """시장 감시 당국 요청 추적"""
    request_id: str
    authority: MarketSurveillanceAuthority
    action_type: AuthorityAction
    received_date: datetime
    legal_basis: str  # EU AI Act 조항
    deadline_days: int = 15
    status: str = "pending"

    @property
    def response_deadline(self) -> datetime:
        return self.received_date + timedelta(days=self.deadline_days)

    @property
    def days_remaining(self) -> int:
        return (self.response_deadline - datetime.now()).days

    def get_risk_level(self) -> str:
        """대응 긴급도 평가"""
        if self.action_type in [AuthorityAction.PENALTY, AuthorityAction.MARKET_WITHDRAWAL]:
            return "CRITICAL"
        elif self.days_remaining <= 3:
            return "HIGH"
        elif self.days_remaining <= 7:
            return "MEDIUM"
        return "LOW"

# 사용 예시
request = AuthorityRequest(
    request_id="BfDI-2025-AI-0078",
    authority=EU_AUTHORITIES["DE"],
    action_type=AuthorityAction.DOCUMENT_REQUEST,
    received_date=datetime.now(),
    legal_basis="EU AI Act Article 74(5)"
)

print(f"당국: {request.authority.authority_name} ({request.authority.country})")
print(f"요청 유형: {request.action_type.value}")
print(f"대응 기한: {request.response_deadline.strftime('%Y-%m-%d')}")
print(f"긴급도: {request.get_risk_level()}")

실무 대화

법무팀: 여러 EU 국가에 서비스하는데, 어느 나라 시장 감시 당국에 등록해야 하나요?

규제담당: 모든 서비스 대상 국가의 시장 감시 당국에서 감독받을 수 있습니다. 다만 주 사업장 소재국을 '주 당국'으로 지정하고 그곳을 통해 소통하는 것이 효율적이에요.

법무팀: 소스 코드 접근 요청이 올 수 있다고요?

규제담당: 네, 제78조에 따라 시장 감시 당국은 필요시 소스 코드 접근을 요청할 수 있습니다. 거부하면 과징금 대상이 될 수 있어요.

면접관: EU AI Act상 시장 감시 당국의 주요 권한을 설명해주세요.

지원자: 시장 감시 당국은 제74-79조에 따라 문서 요청, 소스 코드 접근, 현장 점검, AI 시스템 테스트 권한을 가집니다. 위반 발견 시 시정 명령, 시장 철수 명령, 리콜 명령을 내릴 수 있고, 제99조에 따라 최대 3,500만 유로 또는 연간 매출 7%까지 과징금을 부과할 수 있습니다.

시니어: 시장 감시 당국 요청 대응 워크플로우에 SLA가 없네요.

주니어: 법정 기한이 있나요?

시니어: 보통 15일 내 응답이 요구됩니다. 소스 코드 접근 같은 민감한 요청은 법무팀과 협의 절차가 필요하니, 자동 에스컬레이션 로직을 추가하세요.

주의사항

더 배우기