다음을 통해 공유


사용자 관리 ID를 사용하여 새 네트워크 보안 환경 만들기

Azure AI Foundry 에이전트 서비스는 프라이빗 네트워킹 환경 설정이 포함된 표준 설정을 제공하여 BYO(사용자 고유의) 프라이빗 가상 네트워크를 가져올 수 있도록 합니다. 이 설정은 네트워크 인프라에 대한 모든 권한을 유지하면서 데이터에 안전하게 액세스하고 작업을 수행할 수 있는 격리된 네트워크 환경을 만듭니다. 이 가이드에서는 설치 프로세스의 단계별 연습을 제공하고 필요한 모든 요구 사항을 간략하게 설명합니다.

보안 기능

기본적으로 프라이빗 네트워크 격리를 사용하는 표준 설정은 다음을 보장합니다.

  • 공용 송신 없음: 기본 인프라는 신뢰할 수 있는 서비스 바이패스를 수행하지 않고도 에이전트 및 도구에 대한 올바른 인증 및 보안을 보장합니다.

  • 컨테이너 주입: 플랫폼 네트워크에서 API를 호스트하고 서브넷을 네트워크에 삽입하여 동일한 가상 네트워크 내에서 Azure 리소스의 로컬 통신을 사용하도록 설정할 수 있습니다.

  • 프라이빗 리소스 액세스: 리소스가 인터넷에서 비공개로 표시되고 검색할 수 없는 것으로 표시된 경우 필요한 자격 증명 및 권한 부여가 있는 경우 플랫폼 네트워크에서 계속 액세스할 수 있습니다.

기존 가상 네트워크가 없는 고객의 경우 프라이빗 네트워킹 템플릿을 사용한 표준 설정은 필요한 네트워크 인프라를 자동으로 프로비전하여 배포를 간소화합니다.

아키텍처 다이어그램

가상 네트워크 아키텍처를 보여 주는 다이어그램입니다.

알려진 제한 사항

  • 서브넷 IP 주소 제한: B 및 C 클래스만 지원됩니다.
  • Azure Blob Storage: 파일 검색 도구와 함께 Azure Blob Storage 파일을 사용하는 것은 지원되지 않습니다.

필수 조건

  • Azure 구독 – 무료로 만드세요.

  • 계정 및 프로젝트를 만드는 개인에게 구독 범위에서 Azure AI 계정 소유자 역할이 있는지 확인합니다.

  • 템플릿을 배포하는 사용자에게 필요한 리소스(Cosmos DB, Search, Storage)에 역할을 할당할 수 있는 권한도 있어야 합니다.

    • 필요한 기본 제공 역할은 역할 기반 액세스 관리자입니다.
    • 또는 구독 수준에서 소유자 역할을 갖는 것도 이 요구 사항을 충족합니다.
    • 필요한 키 권한은 다음과 같습니다. Microsoft.Authorization/roleAssignments/write
  • Python 3.8 이상

  • 에이전트 환경이 구성되면 에이전트 플레이그라운드 또는 SDK를 사용하여 에이전트를 만들거나 편집하려는 각 팀 구성원에게 프로젝트에 대한 기본 제공 Azure AI 사용자RBAC 역할이 할당되었는지 확인합니다.

    • 필요한 최소 권한 집합은 다음과 같습니다. agents/*/read, agents/*/action, agents/*/delete
  • 공급자를 등록합니다. 다음 공급자를 등록해야 합니다.

    • Microsoft.KeyVault
    • Microsoft.CognitiveServices
    • Microsoft.Storage
    • Microsoft.MachineLearningServices
    • Microsoft.Search
    • Microsoft.Network
    • Microsoft.App
    • Microsoft.ContainerService
    • Bing Search 도구를 사용하려면 다음을 수행합니다. Microsoft.Bing
       az provider register --namespace 'Microsoft.KeyVault'
       az provider register --namespace 'Microsoft.CognitiveServices'
       az provider register --namespace 'Microsoft.Storage'
       az provider register --namespace 'Microsoft.MachineLearningServices'
       az provider register --namespace 'Microsoft.Search'
       # only to use Grounding with Bing Search tool
       az provider register --namespace 'Microsoft.Bing'
    

새 네트워크 보안 환경 구성

네트워크 보안 설정: 에이전트는 고객 소유의 단일 테넌트 검색 및 스토리지 리소스를 사용합니다. 이 설정을 사용하면 이러한 리소스에 대한 완벽한 제어권과 표시 여부를 확보할 수 있지만 사용량에 따라 비용이 발생합니다. 다음 Bicep 템플릿은 다음을 제공합니다.

  • 계정 및 프로젝트가 만들어집니다.
  • gpt-4o 모델이 배포됩니다.
  • 고객 데이터를 저장하기 위한 Azure 리소스(Azure Storage, Azure Cosmos DB 및 Azure AI Search)는 기존 리소스가 제공되지 않으면 자동으로 만들어집니다.
  • 이러한 리소스는 파일, 스레드 및 벡터 데이터를 저장하기 위해 프로젝트에 연결됩니다.
  • 기본적으로 Microsoft에서 관리하는 키 자격 증명 모음이 사용됩니다.

Bicep 템플릿을 수동으로 배포하십시오.

비고

Bicep 템플릿을 사용하는 것은 Azure AI Foundry 에이전트 서비스에 대한 네트워크 보안 환경을 배포하는 유일한 방법입니다.

  1. bicep 템플릿을 배포하고 사용자 지정하려면 템플릿을 GitHub에서 다운로드합니다. 폴더에서 다음을 다운로드합니다 private-network-standard-agent-setup .

    1. main-create.bicep
    2. azuredeploy.parameters.json
    3. modules-network-secured folder
  2. Azure CLI에서 Azure 구독에 인증하려면 다음 명령을 사용합니다.

    az login
    
  3. 리소스 그룹을 만듭니다.

    az group create --name {my_resource_group} --location eastus
    

    만든 리소스 그룹에 대한 Azure AI 개발자 역할이 있는지 확인합니다.

  4. 이전 단계에서 만든 리소스 그룹과 템플릿 파일(private-network-standard-agent-setup) 중 하나를 사용하여 다음 명령 중 하나를 실행합니다.

    1. 기본 리소스 이름을 사용하려면 다음을 실행합니다.

      az deployment group create --resource-group {my_resource_group} --template-file main-create.bicep
      
  5. CheckCapabilityHostReadiness.ps1 실행하고 명령을 편집하여 구독 ID, 리소스 그룹 이름 및 새로 배포된 AI Services 계정 리소스 이름을 추가합니다.

    .\CheckCapabilityHostReadiness.ps1 -subscriptionId "<your-sub-id>" -resourcegroup "<new-rg-name>" -accountname "<your-aiservices-name>"
    

    PowerShell 스크립트를 실행하지 않으려면 파일 CheckCapabilityHostReadiness.sh 대신 bash 스크립트를 실행할 수 있습니다. 다음 두 명령을 실행합니다.

    chmod +x CheckCapabilityHostReadiness.sh
    ./CheckCapabilityHostReadiness.sh "<your-sub-id>" "<new-rg-name>" "<your-aiservices-name>"
    
  6. main-project-caphost-create.bicep를 배포하다

    az deployment group create --resource-group <new-rg-name> --template-file main-project-caphost-create.bicep
    

    이 스크립트를 실행한 후에는 다음 값을 입력해야 합니다.

    Please provide string value for 'accountName' (? for help): <your-account-name>
    Please provide string value for 'projectName' (? for help): <your-project-name>
    Please provide string value for 'aiSearchName' (? for help): <your-search-name>
    Please provide string value for 'azureStorageName' (? for help): <your-storage-name>
    Please provide string value for 'cosmosDBName' (? for help): <your-cosmosdb-name>
    

자세한 내용은 추가 정보를 참조하세요.

비고

보안 네트워크 설정으로 Foundry 리소스 및 표준 에이전트를 삭제하려면 AI Foundry 리소스 및 가상 네트워크를 마지막으로 삭제합니다. 가상 네트워크를 삭제하기 전에 AI Foundry 리소스를 삭제하고 제거해야 합니다. 삭제된 리소스 관리로 이동한 다음, 제거하려는 구독 및 Foundry 리소스를 선택합니다.

프라이빗 네트워킹 템플릿을 사용하여 심층 분석 표준 설정

프라이빗 네트워킹 에이전트 템플릿에서 표준 설치 프로그램을 사용하는 경우 사용자가 직접 가져오지 않는 한 다음이 자동으로 프로비전됩니다.

네트워크 인프라

  • Virtual Network(192.168.0.0/16)가 만들어집니다.
  • 에이전트 서브넷(192.168.0.0/24): 호스트 에이전트 클라이언트
  • 프라이빗 엔드포인트 서브넷(192.168.1.0/24): 프라이빗 엔드포인트를 호스트합니다.

프라이빗 DNS 영역 다음 DNS 영역이 구성됩니다.

  • privatelink.blob.core.windows.net
  • privatelink.cognitiveservices.azure.com
  • privatelink.documents.azure.com
  • privatelink.file.core.windows.net
  • privatelink.openai.azure.com
  • privatelink.search.windows.net
  • privatelink.services.ai.azure.com

Vnet(가상 네트워크) 기능

가상 네트워크를 사용하면 리소스에 대한 API 호출을 수행할 수 있는 엔드포인트를 지정할 수 있습니다. Azure 서비스는 정의된 네트워크 외부의 디바이스에서 API 호출을 자동으로 거부합니다. 수식 기반 정의를 사용하거나 허용되는 엔드포인트의 전체 목록을 만들어 허용된 네트워크를 설정할 수 있습니다. 이 보안 계층은 향상된 보호를 위한 다른 보안 조치와 결합될 수 있습니다.

네트워크 규칙

모든 계정 및 해당 프로젝트는 기본적으로 거부-기본 네트워크 규칙으로 보호되므로 프라이빗 엔드포인트를 통한 액세스를 허용하도록 명시적 구성이 필요합니다.

이러한 규칙은 REST 및 WebSocket 을 비롯한 모든 프로토콜에 적용됩니다. Azure Portal의 테스트 콘솔과 같은 내부 테스트 도구에도 계정 및 해당 자식 리소스에 액세스할 수 있는 명시적 권한이 필요하므로 모든 에이전트 프로젝트에서 완전한 보안을 보장합니다.

프라이빗 엔드포인트

에이전트의 경우 프라이빗 엔드포인트는 다음 Azure 리소스에 대한 안전한 내부 전용 연결을 보장합니다.

  • Azure AI Foundry (에이아이 파운드리)
  • Azure AI 검색
  • Azure Storage
  • Azure Cosmos DB (애저 코스모스 DB)

DNS 영역 구성 요약

Private Link 리소스 종류 하위 리소스 프라이빗 DNS 영역 이름 공용 DNS 영역 전달자
Azure AI Foundry 어카운트 privatelink.cognitiveservices.azure.com
privatelink.openai.azure.com
privatelink.services.ai.azure.com
cognitiveservices.azure.com
openai.azure.com
services.ai.azure.com
Azure AI 검색 검색서비스 privatelink.search.windows.net search.windows.net
Azure Cosmos DB Sql (에스큐엘) privatelink.documents.azure.com documents.azure.com
Azure Storage 덩어리 privatelink.blob.core.windows.net blob.core.windows.net

DNS 서버에서 Azure DNS Virtual Server에 대한 조건부 전달자를 만들려면 위의 표에 언급된 영역 목록을 사용합니다. Azure DNS 가상 서버 IP 주소는 168.63.129.16입니다.

보안된 에이전트에 액세스하세요.

템플릿 배포가 완료되면 다음 방법 중 하나를 사용하여 가상 네트워크 뒤에 있는 Foundry 프로젝트에 액세스할 수 있습니다.

  • Azure VPN Gateway: 프라이빗 연결을 통해 온-프레미스 네트워크를 가상 네트워크에 연결합니다. 공용 인터넷을 통해 연결됩니다. 사용할 수 있는 두 가지 유형의 VPN 게이트웨이가 있습니다.
    • 지점 및 사이트 간: 각 클라이언트 컴퓨터는 VPN 클라이언트를 사용하여 가상 네트워크에 연결합니다.
    • 사이트 간: VPN 디바이스는 가상 네트워크를 온-프레미스 네트워크에 연결합니다.
  • ExpressRoute: 프라이빗 연결을 통해 온-프레미스 네트워크를 클라우드에 연결합니다. 연결 공급자를 사용하여 연결합니다.
  • Azure Bastion: 이 시나리오에서는 가상 네트워크 내에 Azure Virtual Machine(점프 상자라고도 함)을 만듭니다. 그런 다음, Azure Bastion을 사용하여 VM에 연결합니다. Bastion을 사용하면 로컬 웹 브라우저에서 RDP 또는 SSH 세션을 사용하여 VM에 연결할 수 있습니다. 그런 다음, 점프 상자를 개발 환경으로 사용합니다. 가상 네트워크 내부에 있기 때문에 작업 영역에 직접 액세스할 수 있습니다.

요약

표준 에이전트 설치를 위한 프라이빗 네트워킹 은 엔터프라이즈급 격리 및 제어를 제공합니다.

  • ✅ 모든 인바운드 및 아웃바운드 트래픽은 공용 인터넷에서 격리 상태로 유지됩니다.
  • ✅ 전용 프라이빗 엔드포인트는 모든 고객 데이터를 보호합니다.
  • ✅ 원활한 내부 액세스를 위한 자동 프라이빗 DNS 확인
  • ✅ 최대 보안을 위한 엄격한 기본 거부 네트워크 규칙

이 설정을 통해 AI 에이전트는 격리된 전용 가상 네트워크 내에서 완전히 작동할 수 있습니다. 조직은 BYO VNet(프라이빗 네트워크 격리)을 활용하여 사용자 지정 보안 정책을 적용하여 AI 에이전트가 신뢰할 수 있는 인프라 내에서 작동하도록 할 수 있습니다.

우리의 목표는 중요한 보안 요구 사항을 손상시키지 않고 AI 에이전트의 개발 및 배포를 가속화하는 것입니다. bicep 및 ARM 템플릿을 사용하면 네트워킹 및 데이터에 대한 모든 권한을 유지하면서 에이전트 환경을 신속하게 설정할 수 있습니다.

다음 단계는 무엇인가요?

이제 네트워크 보안 계정 및 프로젝트를 성공적으로 구성했으며 빠른 시작을 사용하여 첫 번째 에이전트를 만듭니다.