我正在尝试将nodejs应用程序与mongodb atlas集群链接,并且我需要能够使用AtlasDB API添加和删除用户。该API需要摘要式身份验证才能访问,并且该API在如何实际编写此标头方面非常含糊。 这是我目前的尝试:
export async function createUser(userData) {
const options = {
roles: [
{
roleName: "readWrite",
databaseName: process.env.MONGO_DBNAME
}
]
}
const url = `${process.env.MONGO_API_BASEURL}/groups/${process.env.MONGO_PROJECT_ID}/databaseUsers`
const result = await axios({
method: 'POST',
url,
headers: {'WWW-Authenticate': `Digest ${process.env.MONGO_USERNAME}:${process.env.MONGO_APIKEY}},
data: {
databaseName: "admin",
username: userData.username,
password: userData.password,
roles: options.roles,
groupId: process.env.MONGO_PROJECT_ID
}
})
return result}
毫不奇怪,我收到401响应,这意味着身份验证失败。关于编写Digest Auth Header的信息很少,我对如何执行它感到有些困惑。
任何帮助将不胜感激。 谢谢!