我有许多需要在每个用户上载的SMIME证书。现在,我手动进行操作,一个接一个。问题是,是否可以使用Apps脚本或其他工具上传多个SMIME证书?
我尝试浏览GSuite管理员,但在那里找不到上传的多个证书。
感谢您的帮助。
答案 0 :(得分:1)
是的,Gmail API支持将S / MIME证书上传到用户。因此,在Appscripts中,您可以使用smimeInfo()方法。 您需要您的userId(或输入“ me”)和将接收证书的用户的电子邮件地址。 您还必须设置S / MIME电子邮件config。
此脚本改编自Quickstart,以遍历您域中的所有用户并将证书上载到每个用户:
function main() {
var optionalArgs = {
customer: 'my_customer',
orderBy: 'email'
};
//Change the string, boolean etc to the parameters of the certificate you have been using.
var smimeObj = {"id": string,
"issuerCn": string,
"isDefault": boolean,
"expiration": long,
"pem": string,
"pkcs12": bytes,
"encryptedKeyPassword": string
};
var userId = 'me';
var response = AdminDirectory.Users.list(optionalArgs);
var users = response.users;
if (users && users.length > 0) {
for (i = 0; i < users.length; i++) {
var user = users[i];
var sendAsEmail = user.primaryEmail;
Gmail.Users.Settings.SendAs.SmimeInfo.insert(smimeObj, userId, sendAsEmail)
}
} else {
Logger.log('No users found.');
}
}