Проверка подлинности клиентской библиотеки Firestore .NET в функции Azure - PullRequest
1 голос
/ 28 июня 2019

Я использую Google.Cloud.Firestore версии 1.0.0-beta22 в приложении C # Azure Function. В документации говорится, что необходимо создать файл json учетной записи службы и создать переменную среды GOOGLE_APPLICATION_CREDENTIALS, указывающую на этот файл json.

Моя проблема в том, что я не хочу добавлять файл json в мой исходный репозиторий, и даже если я это сделал, я не знаю путь к каталогу, в котором будет работать функция Azure, поэтому я не могу установить переменную среды.

Есть ли способ передать учетные данные в клиентскую библиотеку Firestore или любые другие обходные пути для решения этой проблемы?

1 Ответ

0 голосов
/ 29 июня 2019

После долгих поисков я обнаружил, что вы можете создать учетные данные из Json и использовать их для создания FirestoreClient, который вы затем передаете в FirestoreDb.

 var credential = GoogleCredential.FromJson(<JSON AS STRING>);
 var channelCredentials = credential.ToChannelCredentials();
 var channel = new Channel(FirestoreClient.DefaultEndpoint.ToString(), channelCredentials);
 var client = FirestoreClient.Create(channel);
 var firestoreDb = FirestoreDb.Create("project id", client);
...