使用Google API .NET Client v1.3.0-beta.
我创建了一个控制台应用程序,用于从服务帐户的示例代码中测试Google Admin Directory的基础知识.这应该给我一个域中所有电子邮件地址的计数.
using System;
using System.Collections.Generic;
using DotNetOpenAuth.OAuth2;
using Google.Apis.Admin.directory_v1;
using Google.Apis.Admin.directory_v1.Data;
using System.Security.Cryptography.X509Certificates;
using Google.Apis.Authentication.OAuth2;
using Google.Apis.Authentication.OAuth2.DotNetOpenAuth;
using Google.Apis.Services;
using Google.Apis.Util;
namespace ConsoleApplication1
{
class Program
{
private const string SERVICE_ACCOUNT_EMAIL = "012345678901@developer.gserviceaccount.com";
private const string SERVICE_ACCOUNT_ID = "012345678901.apps.googleusercontent.com";
private const string SERVICE_ACCOUNT_PKCS12_FILE_PATH = @"C:\ConsoleApplication1\randomlyassigned-privatekey.p12";
static void Main(string[] args)
{
X509Certificate2 certificate = new X509Certificate2(SERVICE_ACCOUNT_PKCS12_FILE_PATH, "notasecret", X509KeyStorageFlags.Exportable);
var provider = new AssertionFlowClient(GoogleAuthenticationServer.Description, certificate)
{
ServiceAccountId = SERVICE_ACCOUNT_EMAIL,
Scope = AdminService.Scopes.AdminDirectoryUser.GetStringValue()
}; …Run Code Online (Sandbox Code Playgroud)