使用用户名和密码直接获取令牌(通常称为资源所有者密码凭据流程)是不推荐的,因为它具有潜在的安全风险,可能导致令牌被滥用或泄露。
Microsoft不推荐在生产环境中使用这种流程。相反,Microsoft建议使用更安全的授权流程,如Authorization Code Flow 或 Device Code Flow。这些流程更安全,因为它们不需要直接使用用户名和密码。
但是,如果您仍然想使用用户名和密码直接获取令牌,可以在MSAL中使用acquireTokenByUsernamePassword方法。请注意,这种方法存在一些限制和风险,因此在实际应用中,最好避免使用它。下面是一个示例:
import {
PublicClientApplication } from '@azure/msal-browser';
const msalConfig = {
auth: {