使用 Google API 特殊字符目录更改密码

Change password with Google API Directory with special characters

我已经在使用 Google API 目录来更改用户密码,但一位用户在他的密码中添加了“ñ”。 当他尝试登录时,他收到一条错误消息,提示密码不正确。 字母 "ñ" 是一个扩展的 ASCII 字符。

API 目录文档说:

A password can contain any combination of ASCII characters

我的问题是:密码可以包含扩展 ASCII 字符还是只能包含基本字符?

我使用此代码对密码进行编码(密码采用 utf-8 编码):

$user_obj = new Google_Service_Directory_User();
$service = new Google_Service_Directory($client);

//Asci conversion
$dades["password"] = mb_convert_encoding($dades["password"], "ASCII", mb_detect_encoding($dades["password"]));
$user_obj->setHashFunction("SHA-1");        //SHA1 hash
$user_obj->setPassword(hash("sha1", $dades["password"]));

//Execute
try{
    $service->users->update($dades["emailg"],$user_obj);
                
} catch (Exception $e) { 
    $errors = $e->getMessage();
}

答案:

否,不允许扩展字符集。

更多信息:

来自 creating passwords 上的 Google 帐户帮助文章(强调我自己的):

Meet password requirements

Create your password using 12 characters or more. It can be any combination of letters, numbers, and symbols (ASCII-standard characters only). Accents and accented characters aren't supported.