Azure AD最新样本,授权过滤器

时间:2014-07-15 09:35:48

标签: asp.net-mvc-4 azure azure-active-directory

我正在尝试将我的代码从现在过时的Microsoft Helper类更新到用于Active Directory AD与MVC集成的新nuget包。样本在这里https://github.com/AzureADSamples

我的应用程序使用授权过滤器,因此代码不完全相同,我已经更新了大部分内容,但我坚持使用一种翻译。

在示例中,有一个请求助手类获取令牌。

通话方法

string accessToken = AuthUtils.GetAuthToken(Request, HttpContext);

帮手方法

public static string GetAuthToken(HttpRequestBase request, HttpContextBase httpContext)

在过滤器中,

    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        base.OnActionExecuting(filterContext);

正确的翻译是什么?请求'不存在于过滤器中,只存在于控制器上。

我试过这个,但它不起作用并返回一个空标记:

string accessToken = MVCGraphServiceHelper.GetAuthToken(filterContext.HttpContext.Request, filterContext.HttpContext);

1 个答案:

答案 0 :(得分:0)

这是一个相当大的挑战,最终我无法获得Windows示例中使用的代码。因此,我已经放弃了过滤器中的HTTP Context选项,并使用了Console App示例中的代码,该代码以不同的方式连接到Graph API,并且运行良好。此外,它确实看起来像WIF是必需的,因为它使用了.Net 4.5中的Microsoft.IdentityModel命名空间而不是System.IdentityModel。安装Nugetpackage的“Active Directory身份验证库”就可以了。

所有工作尽管比预期花了3天的时间。

希望这可以帮助其他人升级或者在他们的开发中升级。