如何使用Admin SDK以编程方式为新用户启用Gmail?

时间:2016-11-09 17:43:44

标签: php gmail google-admin-sdk

我可以在Google Directory中创建新用户(使用适用于php的Admin SDK),但我注意到当我以任何这些用户身份登录时,Gmail都未启用。

有没有办法为我的代码添加功能,以便为新用户启用Gmail?

如果这有用,这是我用来创建用户的功能

function createGoogleAccount($acc_user, $acc_password)
{
    $client = getClient();
    $service = new Google_Service_Directory($client);

    $userInstance = new Google_Service_Directory_User();
    $nameInstance = new Google_Service_Directory_UserName();

    $nameInstance -> setGivenName('Generic');
    $nameInstance -> setFamilyName('Account');

    $userInstance -> setName($nameInstance);
    $userInstance -> setHashFunction("MD5");
    $userInstance -> setPrimaryEmail($acc_user . '@sandbox.xxxxx.edu');
    $userInstance -> setPassword(hash("md5", $acc_password));
    $optParams = array( );

    $error_msg = null;
    try
    {
            $createUserResult = $service->users->insert($userInstance, $optParams);
            var_dump($createUserResult);
    }
    catch (Google_IO_Exception $gioe)
    {
            $error_msg =  "Error in connection: ".$gioe->getMessage();
    }
    catch (Google_Service_Exception $gse)
    {
            $error_msg = "Service Exception: ".$gse->getMessage();
    }

    return $error_msg;
}

1 个答案:

答案 0 :(得分:0)

正如KENdi在回复中指出的那样,用户必须在可以访问所需Google应用或服务的组织单位内创建。 在使用帐户管理员澄清这一点后,我能够通过在正确的OU下添加用户来使其工作。