小编New*_*vRo的帖子

使用 azure devops 管道将控制台 webjob 应用程序部署到包含 webapi 的 azure 应用程序服务

我有 2 个用 .net core 2.2 编写的 webAPI。这 2 个 web api 是由 web 作业触发的,它们是 .netcore 2.2 中的控制台应用程序。它们都是不同的项目,并且位于 Azure DevOps 中的不同存储库中。

我正在尝试使用 Azure DevOps 构建和发布管道将 Web Api 与 webjob 一起部署到 Azure 中的 2 个 Web 应用服务(例如:WebApi1 + Web job1 到 App service1 和 WebApi2 + Web job2 到 App service2)中。

我可以从 Azure 门户将 webjobs 手动添加到应用服务中,并且工作正常。但我想使用 Azure DevOps 管道部署它。

我尝试了不同的方法来使用应用服务中的 web api 发布 web 作业(控制台应用程序),例如尝试将其从 Azure DevOps 发布到 App_Data 文件夹。

我主要关注下面的博客。

https://www.andrewhoefling.com/Blog/Post/deploying-dotnet-core-webjobs-to-azure-using-azure-pipelines

但是当我尝试发布 webjob 时,它会覆盖 web api 代码(所有 4 个项目都有单独的构建/发布管道)。webjob 代码部署在 …

azure .net-core azure-devops azure-pipelines

5
推荐指数
1
解决办法
1014
查看次数

使用 AcquireTokenSilent 刷新 access_token

我有一个 asp.netcore MVC 应用程序,它将 access_token 传递给下游 API。

经过一番努力,我弄清楚了如何使用 MSAL.Net 获取 access_token。但访问令牌每小时都会过期,因此我必须刷新它。所以我使用 AcquireTokenSilent 接受帐户作为参数。

我的 Startup.cs

public void ConfigureServices(IServiceCollection services)
    {
        services.Configure<CookiePolicyOptions>(options =>
        {
            options.CheckConsentNeeded = context => true;
            options.MinimumSameSitePolicy = SameSiteMode.None;
        });

        services.AddAuthentication(options =>
            {
                options.DefaultAuthenticateScheme = CookieAuthenticationDefaults.AuthenticationScheme;
                options.DefaultChallengeScheme = OpenIdConnectDefaults.AuthenticationScheme;
                options.DefaultSignInScheme = CookieAuthenticationDefaults.AuthenticationScheme;
            })
            .AddCookie(options =>
            {
                options.Events= new CookieAuthenticationEvents()
                {
                    OnValidatePrincipal = OnValidatePrincipal
                };
            })
            .AddOpenIdConnect(options =>
            {
                options.Authority = "https://login.microsoftonline.com/{tenantId}/v2.0";
                options.ClientId = Configuration["AzureAD:ClientId"];
                options.ClientSecret = Configuration["AzureAD:ClientSecret"];
                options.CallbackPath = Configuration["AzureAD:CallbackPath"];
                options.ResponseType = "code id_token";
                options.Scope.Add("openid");
                options.Scope.Add("profile");
                options.Scope.Add("offline_access");
                options.Scope.Add("api://{ClientidOfAPI}/user_impersonation"); …
Run Code Online (Sandbox Code Playgroud)

c# oauth-2.0 azure-active-directory asp.net-core

5
推荐指数
1
解决办法
2012
查看次数

以编程方式从 Azure AD 获取用户组和角色

我是天蓝色 AD 的新手。

我有一个第三方 API,它为我提供了 userId。我编写了一个 .NET Core API,它应该采用此用户 ID 并获取该特定用户的角色和组。

我读过有关 microsoft graph API 的内容。不确定这在我的场景中是否有用。

还有其他方法可以以编程方式访问 AD 用户的角色和组吗?

azure azure-active-directory microsoft-graph-api

3
推荐指数
1
解决办法
5846
查看次数