我想编写一个守护进程服务,通过应用程序标识访问客户办公室365资源,从文档中我发现有两种方法可以支持它,一种是https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-v2-protocols-oauth-client-creds,另一种是https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-certificate-credentials。我想知道它们之间的区别是什么,以及实现守护程序服务的节拍解决方案。
感谢
答案 0 :(得分:0)
根据我的理解,它们之间的唯一区别是证书凭证提供了更高级别的保证。例如,您可以控制灵活生成的client_assertion的过期时间。即使它被泄露,损坏也会根据client_assertion的生命周期进行最小化。(这只是假设HTTPS不是安全性)。如果泄露了共享密钥,我们将无法在检测到密码之前对其进行限制并禁用该秘密。
有关客户端凭据流的更多详细信息,您还可以参考以下链接:
Service to service calls using client credentials (shared secret or certificate)