Considerações sobre Segurança

Escopo: Este artigo aborda considerações de segurança relacionadas ao SDK Python da Memória do Agente. Aplica-se a aplicativos que usam os recursos de memória ativa do SDK ou apenas a camada de armazenamento.

Por que é importante: A Memória do Agente pode persistir o conteúdo do thread e os registros de memória no Oracle AI Database e, quando os recursos suportados por LLM estiverem ativados, enviar conteúdo para pontos finais de modelo configurados para resumo, extração de memória ou incorporações. Portanto, a implantação segura depende do tratamento cuidadoso dos dados do aplicativo, do escopo de recuperação, do acesso ao banco de dados, dos pontos finais do modelo externo e das políticas de retenção.

Considerações Sobre o Processamento de Memória Suportado por LLM

A Memória do Agente suporta recursos de memória ativa, como resumo de thread e extração automática de memória. Quando esses recursos estão ativados, o SDK pode enviar mensagens recentes, resumos de threads, memórias recuperadas ou texto de pesquisa para o LLM configurado ou o ponto final de incorporação.

Observação: só envie conteúdo para a Memória do Agente que seja apropriado para o ponto final do modelo configurado e suas políticas de implantação. Valide e minimize o conteúdo antes de entrar no pipeline de memória e evite incluir segredos, credenciais ou dados confidenciais desnecessários em mensagens ou memórias. Trate memórias extraídas, resumos, cartões de contexto e outros textos derivados do modelo como uma saída não confiável que deve ser revisada e tratada com segurança pelo aplicativo de integração.

Siga estas recomendações ao usar recursos de memória ativa:

Considerações sobre Persistência e Minimização de Dados

A Memória do Agente foi projetada para persistir mensagens, memórias, metadados e incorporações no Oracle AI Database quando o armazenamento suportado pelo BD é usado. Isso permite a recuperação durável e a memória entre sessões, mas também significa que o aplicativo deve planejar quais dados são apropriados para reter.

A seguinte orientação ajuda a manter as implantações alinhadas com práticas seguras de tratamento de dados:

Considerações Sobre o Escopo de Recuperação e o Controle de Acesso

A Memória do Agente usa valores user_id, agent_id e thread_id fornecidos pelo chamador para recuperar o escopo. Este é um modelo de filtragem poderoso, mas não deve ser o único controle no qual seu aplicativo depende ao decidir como o conteúdo recuperado é usado ou mostrado.

Por padrão, a recuperação no escopo do thread usa correspondência exata para user_id e agent_id e uma correspondência mais ampla para thread_id para que os resultados relevantes possam abranger threads anteriores para o mesmo par usuário-agente. As chamadas de nível superior OracleAgentMemory.search() e search_async() também exigem uma correspondência de usuário exata e user_id concreta. Eles rejeitam o escopo do usuário omitido, user_id=None e exact_user_match=False para que a API do cliente público não pesquise acidentalmente em vários usuários.

Use as seguintes práticas ao projetar recuperação:

Considerações sobre Integração de Aplicativos e Confiança do Chamador

A Memória do Agente deve ser chamada pelo aplicativo de integração ou outro código de backend confiável, não diretamente pelos usuários finais. Ele não é um limite de segurança voltado para o usuário final e não executa a autenticação ou autorização do usuário final por conta própria. O pacote confia no chamador para fornecer o escopo correto de user_id, agent_id, thread_id e recuperação para cada operação.

Observação: O aplicativo de integração é responsável por autenticar o usuário final, autorizar o acesso e derivar o user_id e o escopo corretos antes de chamar APIs de Memória do Agente. Um user_id fornecido pelo chamador é um valor de escopo, não uma prova de identidade.

Use as seguintes práticas ao integrar o SDK em um aplicativo agentic:

Considerações Sobre Acesso ao Banco de Dados, Gerenciamento de Esquema e Segredos

A Memória do Agente usa uma conexão ou pool do Oracle AI Database fornecido pelo chamador. O pacote não cria nem gerencia as próprias credenciais do banco de dados. Ele também não cria, negocia ou atualiza a criptografia de rede do banco de dados em nome do chamador.

Observação:

As seguintes práticas de implantação são recomendadas:

Considerações sobre Comunicação de Rede e Pontos Finais Externos

A Memória do Agente pode se comunicar com serviços externos quando a implantação configura provedores remotos de LLM ou incorporação. O SDK encaminha prompts e solicita parâmetros por meio do caminho do cliente configurado, mas o aplicativo e a implantação adjacentes permanecem responsáveis por proteger essas conexões.

Recomendamos o seguinte:

Considerações sobre os vetores de exaustão de recursos

Os fluxos de trabalho de memória podem aumentar o uso do banco de dados, incorporar tráfego e consumo de token de LLM ao longo do tempo. Isso é verdade tanto para o uso excessivo malicioso quanto para erros inocentes de implementação, como mensagens de grandes dimensões ou padrões de recuperação excessivamente amplos.

Use estes controles como parte de sua proteção de produção: