보안 고려사항

범위: 이 문서에서는 에이전트 메모리 Python SDK와 관련된 보안 고려 사항을 다룹니다. SDK의 활성 메모리 기능 또는 저장소 계층만 사용하는 애플리케이션에 적용됩니다.

중요한 이유: 에이전트 메모리는 Oracle AI Database에서 스레드 콘텐츠 및 메모리 레코드를 보관할 수 있으며, LLM 지원 기능이 사용으로 설정된 경우 요약, 메모리 추출 또는 임베딩을 위해 구성된 모델 엔드포인트로 콘텐츠를 전송할 수 있습니다. 따라서 보안 배포는 애플리케이션 데이터, 검색 범위, 데이터베이스 액세스, 외부 모델 엔드포인트 및 보존 정책의 신중한 처리에 따라 달라집니다.

LLM 지원 메모리 처리에 대한 고려 사항

에이전트 메모리는 스레드 요약 및 자동 메모리 추출과 같은 활성 메모리 기능을 지원합니다. 이러한 기능이 사용으로 설정되면 SDK는 최근 메시지, 스레드 요약, 검색된 메모리를 전송하거나 구성된 LLM 또는 포함 끝점으로 텍스트를 검색할 수 있습니다.

주: 구성된 모델 끝점 및 배치 정책에 적합한 에이전트 메모리로만 콘텐츠를 전송합니다. 메모리 파이프라인에 들어가기 전에 콘텐츠를 검증하고 최소화하며 메시지나 메모리에 비밀, 자격 증명 또는 불필요한 민감한 데이터를 포함하지 마십시오. 추출된 메모리, 요약, 컨텍스트 카드 및 기타 모델 파생 텍스트를 통합 응용 프로그램에서 안전하게 검토하고 처리해야 하는 신뢰할 수 없는 출력으로 처리합니다.

active-memory 기능을 사용할 때는 다음 권장 사항을 따르십시오.

지속성 및 데이터 최소화에 대한 고려 사항

에이전트 메모리는 DB 지원 저장소가 사용될 때 Oracle AI Database에 메시지, 메모리, 메타데이터 및 임베딩을 지속하도록 설계되었습니다. 이를 통해 내구성이 뛰어난 검색 및 세션 간 메모리를 사용할 수 있지만, 애플리케이션은 보유하기에 적합한 데이터를 계획해야 합니다.

다음 지침은 안전한 데이터 처리 관행에 맞춰 배포를 유지하는 데 도움이 됩니다.

검색 범위 및 액세스 제어 관련 고려 사항

에이전트 메모리는 호출자가 제공한 user_id, agent_idthread_id 값을 사용하여 검색 범위를 지정합니다. 이는 강력한 필터링 모델이지만 검색된 콘텐츠가 사용되거나 표시되는 방법을 결정할 때 애플리케이션이 사용하는 유일한 제어는 아니어야 합니다.

기본적으로 스레드 범위 검색은 user_idagent_id에 대한 정확한 일치와 thread_id에 대한 광범위한 일치를 사용하므로 관련 결과가 동일한 사용자 에이전트 쌍에 대한 과거 스레드로 확장될 수 있습니다. 최상위 레벨 OracleAgentMemory.search()search_async() 호출에는 구체적인 user_id 및 정확한 사용자 일치도 필요합니다. 생략된 사용자 범위 user_id=Noneexact_user_match=False를 거부하므로 공용 클라이언트 API가 실수로 여러 사용자를 검색하지 않습니다.

검색을 설계할 때 다음 연습을 사용합니다.

애플리케이션 통합 및 호출자 신뢰 관련 고려 사항

에이전트 메모리는 최종 사용자가 직접 호출하지 않고 통합 애플리케이션 또는 다른 신뢰할 수 있는 백엔드 코드로 호출됩니다. 최종 사용자 대면 보안 경계가 아니며 최종 사용자 인증 또는 권한 부여를 자체적으로 수행하지 않습니다. 패키지는 호출자를 신뢰하여 각 작업에 대해 올바른 user_id, agent_id, thread_id 및 검색 범위를 제공합니다.

주: 통합 애플리케이션은 일반 사용자를 인증하고, 액세스 권한을 부여하고, 에이전트 메모리 API를 호출하기 전에 올바른 user_id 및 범위를 파생합니다. 호출자가 제공한 user_id는 ID 증명이 아닌 범위 지정 값입니다.

SDK를 에이전트 응용 프로그램에 통합하는 경우 다음 연습을 사용합니다.

데이터베이스 액세스, 스키마 관리 및 암호 관련 고려 사항

에이전트 메모리는 호출자가 제공한 Oracle AI Database 연결 또는 풀을 사용합니다. 패키지는 데이터베이스 인증서 자체를 생성하거나 관리하지 않습니다. 또한 호출자 대신 데이터베이스 네트워크 암호화를 생성, 협상 또는 업그레이드하지 않습니다.

참고:

권장되는 배치 방식은 다음과 같습니다.

네트워크 통신 및 외부 끝점에 대한 고려 사항

에이전트 메모리는 배치가 원격 LLM 또는 임베딩 제공자를 구성할 때 외부 서비스와 통신할 수 있습니다. SDK는 구성된 클라이언트 경로를 통해 프롬프트 및 요청 매개변수를 전달하지만 주변 애플리케이션 및 배치는 이러한 연결 보안을 유지합니다.

다음을 권장합니다.

리소스 소진 벡터에 대한 고려 사항

메모리 워크플로는 시간 경과에 따라 데이터베이스 사용량, 임베딩 트래픽, LLM 토큰 사용량을 늘릴 수 있습니다. 이는 악의적인 과도한 사용과 지나치게 큰 메시지 또는 지나치게 광범위한 검색 패턴과 같은 무고한 구현 실수에 모두 해당됩니다.

생산 경화의 일부로 다음 컨트롤을 사용합니다.