Azure Active Directory跟踪作者和编辑器字段

时间:2018-03-24 01:29:12

标签: c# asp.net asp.net-core-mvc azure-active-directory

我最近提出了一个与此极为相似的问题,我等到我在回答问题之前解决了这个问题。

我有一个ASP.Net应用程序,我需要跟踪每个实体的编辑和作者字段。您可以在此处查看完整的问题:MVC tracking fields such as Author and Editor (Created By and Modified By)

我现在的变化是我要使用Azure AD。因此,我没有ApplicationUserDbSet <ApplicationUser>来查询。但是,我需要能够在实体的Author字段中保存用户SID,然后在页面上显示该实体时,拉出相应的显示名称。

有人能指出我需要如何存储字段的正确方向,以及最佳实践建议他们如何获取每个实体的用户显示名称。每次显示用户时是否需要查询Azure AD?

1 个答案:

答案 0 :(得分:4)

我会将SID存储在一个简单的字符串字段中。您可以查找SID长度定义,只需将其用作限制。

您可以考虑在保存其他列时添加显示名称,但我不建议这样做。显示名称可能会更改,并且根据您的数据和数据保护法律,它可能也会出现问题。

当您显示用户时,请在检索实体后解析显示名称,并构建内存缓存以将SID映射到显示名称,这样您就不必每次都调用AAD。

https://docs.microsoft.com/en-us/dotnet/framework/performance/caching-in-net-framework-applications