0

我正在将代码从 GDATA API 迁移到 Google ADMIN Directory API(用户配置)。迁移后的代码在新的 ADMIN API 中运行良好。我在 Developers Console 中创建了一个服务帐户,然后使用以下代码为其提供域范围的访问权限来创建 GoogleCredential 对象。我正在使用两条腿的 OAuth。GoogleCredential 负责自动“刷新”令牌,因此对于每个 API 调用,我都会获得一个新的访问令牌。我是否需要使用 Datastore 来保存访问令牌?使用 Datastore 的优势是什么?在使用 OAuth 2.0 时不使用 Datastore 有什么问题吗?

        GoogleCredential credential = new GoogleCredential.Builder()
        .setTransport(httpTransport)
        .setJsonFactory(jsonFactory)
        .setServiceAccountId(serviceAccountID)
        .setServiceAccountScopes(scopes)
        .setServiceAccountPrivateKeyFromP12File(new File(serciceAccountPKCSFilePath))
        .setServiceAccountUser(serviceAccountUser)
        .build();   

        // Create the Directory        
        Directory directory = new Directory.Builder(httpTransport, jsonFactory, credential)
        .setApplicationName(applicationName)
        .build();

        // Makes the actual call to google to create user       
        user = directory.users().insert(user).execute();
4

0 回答 0