.Net: Update AI Clients to defend against URL injection attacks #11088
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation and Context
This change adds security validation tests for URL injection attempts in various client constructors across the Google and Pinecone connectors. It helps prevent potential security vulnerabilities where malicious URLs could be injected through location or environment parameters.
Description
Added URL injection validation tests for:
GeminiChatCompletionClient
GeminiTokenCounterClient
VertexAIEmbeddingClient
PineconeClient
Each test suite includes:
The tests ensure that:
ArgumentException
This change improves the security posture of the connectors by ensuring proper input validation and maintaining consistent validation behavior across different client implementations.
Tests