Node.js 检查是否为使用rest api的用户启用了MFA
如何检查使用rest API loginWithServicePrincipalSecret为AD用户启用了MFA 有没有人可以帮我做这件事…我想用NodeSDK这样做Node.js 检查是否为使用rest api的用户启用了MFA,node.js,azure,azure-active-directory,restapi,Node.js,Azure,Azure Active Directory,Restapi,如何检查使用rest API loginWithServicePrincipalSecret为AD用户启用了MFA 有没有人可以帮我做这件事…我想用NodeSDK这样做 require(“同构提取”); const{UserAgentApplication}=require(“msal”); const{ImplicitMSALAuthenticationProvider}=require(@microsoft/microsoft-graph-client/lib/src/ImplicitMS
require(“同构提取”);
const{UserAgentApplication}=require(“msal”);
const{ImplicitMSALAuthenticationProvider}=require(@microsoft/microsoft-graph-client/lib/src/ImplicitMSALAuthenticationProvider”);
const{MSALAuthenticationProviderOptions}=require(@microsoft/microsoft-graph-client/lib/src/MSALAuthenticationProviderOptions”);
常量msalConfig={
认证:{
clientId:“bec52b71-dc94-4577-9f8d-b8536ed0e73d”,//已注册应用程序的客户端Id
},
};
const graphScopes=[“user.read”,“mail.send”];//图作用域数组
const msalApplication=新用户代理应用程序(msalConfig);
const Options=新的MSALAuthenticationProviderOptions(图形范围);
const authProvider=新隐式身份验证提供程序(
msalApplication,
选择权
);
常量选项={
授权提供者,
};
const Client=require(“@microsoft/microsoft图形客户端”);
const client=client.init(选项);
异步函数测试(){
试一试{
让res=等待客户
.api(“/reports/credentialUserRegistrationDetails”)
.版本(“测试版”)
.get();
console.log(“res:”,res);
}捕获(错误){
投掷误差;
}
}
test()代码>这可以通过
要获取已向MFA注册但尚未注册的用户的信息,我们可以在中使用ismFareRegistered属性
credentialUserRegistrationDetails
帮助我们获取
自助密码重置和多因素身份验证的使用
(MFA)适用于所有注册用户。详细信息包括用户信息,
注册状态和使用的身份验证方法。
这可以通过MS Graph以编程方式实现,在MS Graph中,您将获得一个JSON报告,该报告可以插入到其他报告中,也可以以编程方式表示自身
示例:
GET https://graph.microsoft.com/beta/reports/credentialUserRegistrationDetails
{
"id": "****************************",
"userPrincipalName": "NKS@nishantsingh.live",
"userDisplayName": "Nishant Singh",
"isRegistered": false,
"isEnabled": true,
"isCapable": false,
"isMfaRegistered": true,
"authMethods": [
"mobilePhone"
]
}
样本输出:
GET https://graph.microsoft.com/beta/reports/credentialUserRegistrationDetails
{
"id": "****************************",
"userPrincipalName": "NKS@nishantsingh.live",
"userDisplayName": "Nishant Singh",
"isRegistered": false,
"isEnabled": true,
"isCapable": false,
"isMfaRegistered": true,
"authMethods": [
"mobilePhone"
]
}
节点JS的示例代码,
const options = {
authProvider,
};
const client = Client.init(options);
let res = await client.api('/reports/credentialUserRegistrationDetails')
.version('beta')
.get();
要实现您的NodeJS代码,请阅读Hari Krishna中的分步指南--MSFT感谢您的回复。。。你能告诉我在authProvider const options={authProvider,};我真的不理解文档,这很难。Hi@KainatNaz,为了使用MS Graph,我们需要身份验证提供商提供的访问令牌。身份验证提供程序使用Microsoft身份验证库实现获取令牌所需的代码。请遵循我共享的分步教程。它包含满足您要求的所有步骤。谢谢,@Hari Krishna--MSFT-Identity我这样做是为了获取CredentialUserRegistration详细信息,但我得到了这个引用错误:窗口未定义**hi@Hari Krishna--MSFT-Identity这里是请查看我的代码我这样做对吗