Reactjs 尝试为Gmail启用IMAP时,委派被拒绝
我正在尝试使用npm的GoogleAuth库创建一个用户帐户,然后启用IMAP。从我所读到的,我有一个组织谷歌工作区,创建了一个服务帐户,并为相关范围启用了域范围的委托。然后,我成功地创建了一个用户帐户,但启用IMAP会导致以下错误Reactjs 尝试为Gmail启用IMAP时,委派被拒绝,reactjs,google-api,Reactjs,Google Api,我正在尝试使用npm的GoogleAuth库创建一个用户帐户,然后启用IMAP。从我所读到的,我有一个组织谷歌工作区,创建了一个服务帐户,并为相关范围启用了域范围的委托。然后,我成功地创建了一个用户帐户,但启用IMAP会导致以下错误 { "error": { "code": 403, "message": "Delegation denied for myadmin@myorganization.com&q
{
"error": {
"code": 403,
"message": "Delegation denied for myadmin@myorganization.com",
"errors": [
{
"message": "Delegation denied for myadmin@myorganization.com",
"domain": "global",
"reason": "forbidden"
}
],
"status": "PERMISSION_DENIED"
}
}
下面是我正在使用的代码片段
enableImapForUser(useremail: string) {
const auth = new GoogleAuth({
credentials: JSON.parse(process.env.GOOGLE_CREDENTIALS),
scopes: ["https://www.googleapis.com/auth/gmail.settings.basic"],
clientOptions: {
subject: "myadmin@myorganization.com",
},
});
const requestOptions: GaxiosOptions = {
url:
"https://gmail.googleapis.com/gmail/v1/users/" +
useremail +
"/settings/imap",
method: "PUT",
headers: { "Content-type": "application/json" },
body: JSON.stringify({ enabled: true }),
};
return auth.request(requestOptions);
}
useremail变量包含新创建的用户的电子邮件地址。从这里的其他答案来看,很多人建议使用“我”而不是传递电子邮件地址,但这会为我的帐户打开IMAP,即。myadmin@myorganization.com. 这是否意味着我需要对新创建的帐户进行身份验证,然后尝试启用IMAP?似乎与域范围的授权,这应该是可能的,如果我使用我的管理电子邮件。我重新检查了权限,它们看起来都很好,我遗漏了什么