Прокси и Firebase Xamarin

По причине политики информационной безопасности на предприятии, нет возможности напрямую подключиться к сервисам google на сервере с бекэндом приложения. Перерыл кучу информации, но не нашел ответа, возможно ли работать с firebase через прокси? На данный момент, все попытке приводят к мало понятному ексепшену

Microsoft.AspNetCore.Antiforgery.Internal.DefaultAntiforgery[7] An exception was thrown while deserializing the token. Microsoft.AspNetCore.Antiforgery.AntiforgeryValidationException: The antiforgery token could not be decrypted. ---> System.Security.Cryptography.CryptographicException: The key {bd6398ba-00ae-4547-b1a0-b2eee62eb322} was not found in the key ring.

if (!string.IsNullOrEmpty(proxy_host) && !string.IsNullOrEmpty(proxy_port) && !string.IsNullOrEmpty(proxy_usr) && !string.IsNullOrEmpty(proxy_psw))
{
  WebProxy proxy = new WebProxy
  {
     Address = new Uri($"http://{proxy_host}:{proxy_port}"),
                                UseDefaultCredentials = false,
                                Credentials = new NetworkCredential(userName: proxy_usr, password: proxy_psw)
                            };

                            FirebaseApp.Create(new AppOptions
                            {
                                Credential = GoogleCredential.FromFile(fileName),
                                HttpClientFactory = new ProxyHttpClientFactory(proxy)
                            });
                        }
                        else
                        {
                            FirebaseApp.Create(new AppOptions
                            {
                                Credential = GoogleCredential.FromFile(fileName)
                            });
                        }

Ответы (1 шт):

Автор решения: Winteriscoming

Данный способ помог решить проблему доступа к firebase через прокси.

   public class ProxyHttpClientFactory : Google.Apis.Http.HttpClientFactory
        {
            WebProxy _proxy;
            public ProxyHttpClientFactory(WebProxy proxy)
            {
                _proxy = proxy;
            }

            protected override HttpMessageHandler CreateHandler(CreateHttpClientArgs args)
            { 
                var webRequestHandler = new HttpClientHandler()
                {
                    Proxy = _proxy
                };
                return webRequestHandler;
            }
        }
→ Ссылка