View a markdown version of this page

웹 봇 인증을 사용하여 CAPTCHAs 감소 - Amazon Bedrock AgentCore

웹 봇 인증을 사용하여 CAPTCHAs 감소

참고

Amazon Bedrock AgentCore 브라우저 웹 봇 인증(미리 보기)은 초안 IETF 웹 봇 인증 프로토콜을 기반으로 하며, 사양이 마무리 단계로 진행됨에 따라 변경될 수 있습니다.

+ 현재 구현:

+ * 구현 세부 정보, API 파라미터 및 서명 메커니즘은 최종 프로토콜 사양에 따라 변경될 수 있습니다. * WAF 공급자 지원 및 정책은 다양합니다. 모든 웹 사이트가 서명된 에이전트 트래픽을 인식하거나 허용하는 것은 아닙니다. * 도메인 소유자는 봇 정책을 완전히 제어하며 암호화 서명과 관계없이 에이전트 트래픽을 차단, 모니터링 또는 속도 제한할 수 있습니다.

+ 최신 프로토콜 사양은 IETF 초안을 참조하세요.

Amazon Bedrock AgentCore Browser는 웹 사이트 및 봇 제어 공급업체에 대한 AI 에이전트를 암호화 방식으로 식별하는 초안 IETF 프로토콜인 Web Bot Auth를 통해 CAPTCHA 문제를 줄입니다.

개요

AI 에이전트는 웹 사이트를 탐색할 때 CAPTCHA 문제, 속도 제한, 요청 차단 등 봇 방지 메커니즘을 자주 접합니다. 이러한 보안 조치는 악의적인 자동 트래픽을 방지하도록 설계되었지만 합법적인 AI 에이전트도 차단하는 경우가 많습니다.

웹 사이트는 합법적인 에이전트와 악의적인 봇을 안정적으로 구별할 수 없기 때문에 이러한 방어를 구현합니다. IP 주소 또는 User-Agent 문자열과 같은 기존 식별 방법은 쉽게 스푸핑할 수 있으며 확인 가능한 자격 증명을 제공하지 않습니다.

Web Bot Auth는 자동화된 트래픽 아키텍처 초안 프로토콜을 위한 IETF HTTP 메시지 서명을 구현하여이 문제를 해결합니다. 이 프로토콜을 사용하면 AI 에이전트가 HTTP 요청에 암호화 방식으로 서명하여 웹 사이트에 에이전트의 자격 증명을 확인할 수 있는 증거를 제공할 수 있습니다.

웹 봇 인증이 활성화되면 Amazon Bedrock AgentCore 브라우저는 프라이빗 키로 각 HTTP 요청에 자동으로 서명하고 확인 헤더를 포함합니다. 봇 제어 공급업체(예: Cloudflare, Akamai Technologies 및 HUMAN Security)는 퍼블릭 키 디렉터리에 대해 이러한 서명을 확인하고 웹 사이트 소유자가 구성한 적절한 정책을 적용할 수 있습니다.

이 접근 방식은 합법적인 자동화가 액세스 정책에 대한 웹 사이트 소유자의 제어를 유지하면서 자신을 식별할 수 있는 표준화된 방법을 제공합니다.

작동 방식

Web Bot Auth는 IETF HTTP 메시지 서명 표준을 사용하여 HTTP 요청에 암호화 방식으로 서명합니다.

  1. 에이전트 등록: Amazon Bedrock AgentCore가 봇 제어 공급업체(Cloudflare, reCAPTCHA 등)에 등록하고 확인을 위한 퍼블릭 키를 제공합니다.

  2. 요청 서명: 활성화되면 브라우저 도구가 프라이빗 키를 사용하여 각 HTTP 요청에 자동으로 서명합니다.

  3. 서명 헤더: 각 요청에 세 개의 헤더가 추가됩니다.

    • Signature : 암호화 서명

    • Signature-Agent : 확인을 위해 퍼블릭 키 디렉터리를 가리킵니다.

    • Signature-Input : 서명된 구성 요소를 지정합니다.

  4. 확인 : 웹 사이트의 봇 제어 시스템이 퍼블릭 키를 가져오고 서명을 확인하여 요청이 Amazon Bedrock AgentCore에서 왔는지 확인합니다.

  5. 정책 애플리케이션: 확인된 자격 증명에 따라 웹 사이트는 적절한 정책을 적용할 수 있습니다. 도메인 소유자는 봇 제어 시스템을 다음과 같이 구성할 수 있습니다.

    • 모든 트래픽 차단: 인증에 관계없이 모든 자동 요청 거부

    • 서명된 봇만 허용: 유효한 웹 봇 인증 서명이 있는 확인된 에이전트의 요청만 수락

    • 특정 디렉터리의 서명된 봇 허용: 인증된 에이전트가 웹 사이트의 특정 경로 또는 리소스에만 액세스하도록 허용

웹 봇 인증 활성화

웹 봇 인증을 활성화하려면 브라우저 도구를 생성할 때 웹 봇 인증을 구성해야 합니다.

AWS CLI
  1. AWS CLI를 사용하여 웹 봇 인증이 활성화된 브라우저 도구를 생성하려면

    aws bedrock-agentcore-control create-browser \ --region <Region> \ --name "my-browser-with-auth" \ --description "Browser with Web Bot Auth enabled" \ --network-configuration '{"networkMode": "PUBLIC"}' \ --execution-role-arn "arn:aws:iam::<account-id>:role/<execution-role>" \ --browser-signing '{"enabled": true}'
Boto3
  1. Boto3를 사용하여 웹 봇 인증이 활성화된 브라우저 도구를 생성하려면:

    import boto3 client = boto3.client('bedrock-agentcore-control', region_name='us-west-2') response = client.create_browser( name='my-browser-with-auth', description='Browser with Web Bot Auth enabled', networkConfiguration={ 'networkMode': 'PUBLIC' }, executionRoleArn='arn:aws:iam::<account-id>:role/<execution-role>', browserSigning={ 'enabled': True } )
Console
  1. ====== 콘솔에서 웹 봇 인증을 활성화하려면

  2. https://console.aws.amazon.com/bedrock-agentcore/home AgentCore 콘솔을 엽니다.

  3. 탐색 창에서 기본 제공 도구를 선택합니다.

  4. 브라우저 도구 생성을 선택합니다.

  5. 고유한 도구 이름과 선택적 설명을 제공합니다.

  6. 네트워크 설정에서 퍼블릭 네트워크를 선택합니다.

  7. 웹 봇 인증 구성 섹션에서 웹 봇 인증 사용 확인란을 선택합니다.

  8. 권한에서 브라우저 도구가 액세스할 수 있는 AWS 리소스를 정의하는 IAM 실행 역할을 지정합니다.

  9. 필요에 따라 다른 브라우저 설정을 구성하고 생성을 선택합니다.

중요

웹 봇 인증에는 신뢰 정책이 있는 실행 역할이 필요하지만 관리형 또는 인라인 정책은 필요하지 않습니다. 이 기능은 기본적으로 비활성화되어 있으므로 브라우저 생성 중에 명시적으로 활성화해야 합니다. 실행 역할에 다음 신뢰 정책을 추가해야 합니다. [source,json,subs="verbatim,attributes"] ---- { "Version":"2012-10-17", "Statement": [{ "Sid": "BedrockAgentCoreBuiltInTools", "Effect": "Allow", "Principal": { "Service": "bedrock-agentcore.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { aws:SourceAccount"111122223333" }, "ArnLike": "aws:SourceArn": "arn:agents:111122223333

지원되는 Bot Control 공급업체

Amazon Bedrock AgentCore는 현재 다음 봇 제어 공급업체에서 웹 봇 인증을 지원합니다.

  • Cloudflare

  • 인적 보안

  • Akamai 기술

  • DataDome

  • F5

파트너십이 설정되면 추가 봇 제어 공급업체가 지원됩니다. 인증은 투명하게 작동합니다. 일단 활성화되면 에이전트는 마찰을 줄이면서 이러한 서비스로 보호되는 웹 사이트를 찾아볼 수 있습니다.

고려 사항

  • 투명한 작업: 웹 봇 인증은 활성화되면 자동으로 작동합니다. 에이전트 애플리케이션에서는 코드를 추가로 변경할 필요가 없습니다.

  • 성능 영향: 요청에 서명하면 HTTP 요청에 지연 시간이 최소화됩니다.

  • 공급업체 적용 범위:이 기능은 지원되는 봇 제어 공급업체를 사용하는 웹 사이트에서만 작동합니다. 다른 봇 방지 솔루션을 사용하는 웹 사이트에서는 여전히 문제가 발생할 수 있습니다.

  • 정책 종속성: 인증이 있더라도 웹 사이트 소유자는 봇 정책을 제어합니다. 일부 사이트는 여전히 특정 요구 사항에 따라 에이전트 트래픽을 제한하거나 모니터링할 수 있습니다.