Hello Slimane !
Thank you for posting on Microsoft Learn Q&A.
Your search service is calling Azure OpenAI from the multitenant processing plane for vectorization, so OpenAI sees a Microsoft egress IP, that’s why allow listing that IP fixes it.
So to keep everything private, switch vectorization to a shared private link + private execution environment and use a managed identity.
Integrated vectorization will use a Microsoft hosted processing plane unless you explicitly run the indexer in the private execution environment. From there it will call OpenAI over the public internet unless you set up a Shared Private Link to OpenAI.
https://free.blessedness.top/en-us/azure/search/search-indexer-howto-access-private
You need to create a shared private link from search in Azure OpenAI and pick your Azure OpenAI resource, group ID openai_account, and create the link and approve the pending private endpoint in the OpenAI resource.
https://free.blessedness.top/en-us/azure/search/search-indexer-howto-access-private
In the indexer definition set executionEnvironment: "Private". Without this, Search uses the multitenant plane and will still egress publicly.