小编Sam*_*Sam的帖子

从ASP.NET Core 2.0 API中获取JWT令牌的声明

我在ASP.NET Core 2.0 Web和API应用程序中使用混合身份验证.这意味着饼干和现在添加JWT token.

应用程序的Web部分使用cookie,在API部分中,我想使用JWT令牌.

我的问题是如何获得索赔JWT token?在我的网络控制器中,我可以简单地HttpContext.User;用来获取存储在cookie中的声明.如何在我想要使用的API方法中处理它JWT token

这是我的AuthenticationBuilder:

public static void MyAuthenticationConfig(IServiceCollection services, IConfiguration configuration)
{
   services.AddAuthentication(options =>
   {
      options.DefaultAuthenticateScheme = "myApp_cookie";
      options.DefaultChallengeScheme = "myApp_cookie";
    })
    .AddCookie("myApp_cookie", options =>
    {
      options.AccessDeniedPath = "/Unauthorized";
      options.LoginPath = "/Login";
    })
    .AddCookie("social_auth_cookie")
    .AddOAuth("LinkedIn", options =>
    {
      options.SignInScheme = "social_auth_cookie";

      options.ClientId = "my_client_id";
      options.ClientSecret = "my_secret";

      options.CallbackPath = "/linkedin-callback";

      options.AuthorizationEndpoint = "https://www.linkedin.com/oauth/v2/authorization";
      options.TokenEndpoint = "https://www.linkedin.com/oauth/v2/accessToken";
      options.UserInformationEndpoint = "https://api.linkedin.com/v1/people/~:(id,first-name,last-name,email-address,picture-url,picture-urls::(original))";

      options.Scope.Add("r_basicprofile");
      options.Scope.Add("r_emailaddress");

      options.Events = new OAuthEvents
      { …
Run Code Online (Sandbox Code Playgroud)

asp.net jwt asp.net-web-api asp.net-core asp.net-core-2.0

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

T-SQL事务语法

我执行,将执行关键任务的存储过程UPDATE,DELETE并且INSERT我想确保我TRANSACTION是正确形成.

我已经看到了一些TRANSACTION声明,每个步骤后都有一个检查.我也看到过这种情况,整个步骤简单地放在一个TRANSACTION区块内,一路上没有任何"检查点".

这是一个很好形成TRANSACTION,将即回滚一切UPDATE,DELETE并且INSERT,如果在任何时候任何的错误.

这是TRANSACTION:

BEGIN TRANSACTION

BEGIN TRY

   UPDATE SomeTable
   SET SomeColumnValue = 123
   WHERE Id = 123456

   DELETE FROM SomeOtherTable
   WHERE Id = 789

   INSERT INTO ThirdTable
      (Column1, Column2)
   VALUE
      ('Hello World', 1234567)  

END TRY
BEGIN CATCH

   ROLLBACK TRANSACTION

END CATCH
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server azure-sql-database

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

LinkedIn身份验证停止返回格式化图片

我的应用程序使用LinkedIn身份验证以及其他几个社交网络登录.

即使身份验证工作正常,LinkedIn突然停止返回格式化的配置文件图片,即picture-url.然而,我继续收到原始图像,即picture-urls- 见下文: 在此输入图像描述

在我的身份验证请求中,我请求r_basicprofiler_emailaddress根据此链接,我应该接收格式化和原始图像. https://developer.linkedin.com/docs/fields/basic-profile

直到10天前左右,我收到了两张图片.我没有对我的代码进行任何更改,但由于某种原因,格式化的图像不再显示.知道为什么以及如何解决这个问题?

更新:突然间我又开始重新获取两个图像 - 而不对代码进行任何更改.

我还注意到图像URL现在已经改变,我在那里看到所有类型的参数 - 例如图像大小,看起来像API版本类型(下例中的alpha)以及可能的时间戳指示符:

https://media.licdn.com/dms/image/{image-id}/profile-displayphoto-shrink_100_100/0?e=123456789&v=alpha&t={sometypeofid}
Run Code Online (Sandbox Code Playgroud)

我不记得在图像URL中看到任何这些参数,它们根本不是URL,而是看起来像是返回图像的API调用.

我不知道LinkedIn是否宣布了我错过的这些更改,或者只是决定在不让开发人员进入循环的情况下进行这些更改.我希望不是后者,我只是错过了宣布.

oauth linkedin linkedin-api asp.net-core

5
推荐指数
0
解决办法
199
查看次数

将 CSV 导入 SQL Server 时无法在输入文件中找到模式

我正在尝试将一些非常简单的数据从csv文件导入到我的 SQL Server 2014 中。

csv文件中,我只有一列包含数字数据。

我正在使用 SQL Server Management Studio 17.6,连接到我的数据库,然后使用任务Import Flat File功能。

这是我选择文件并单击“下一步”时看到的错误: 在此输入图像描述

知道问题是什么以及如何解决它吗?

更新:

与提供实际文件不太一样,但这是文件的屏幕截图。它包含电话号码。我混淆了实际数字,这样我们就不会危害任何人的隐私。

在此输入图像描述

sql-server csv excel sql-server-2014

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

Azure AD B2C 注册页面链接(未登录)

msal.js在我的 React 应用程序中使用 Azure AD B2C。

目前,当用户尝试进入我的应用程序的受保护区域时,msal.js会将用户重定向到登录页面,该页面提供指向注册页面的链接。

有没有办法让我直接将用户发送到注册页面?在某些情况下,我知道用户尚未注册,因此首先将用户发送到登录页面,然后让他们单击并转到注册页面,这是很糟糕的用户体验。最好直接让他们注册。

azure-active-directory azure-ad-b2c azure-ad-msal msal.js

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

在 ASP.NET Core API 中处理 id_token

我正在使用带有 React 前端的 ASP.NET Core 2.1 应用程序实现 Auth0。

在用户进行身份验证后,我确实得到了 anaccess_tokenid_token. 我很清楚我access_token在标头中发送了以获得对我的 API 方法的访问,但我不确定如何处理id_token.

我是否也将其id_token放在标题中?如果是这样,我使用什么密钥?我正在发送access_token带有密钥的Authorization- 见下文。 在此处输入图片说明

不知道如何发送,id_token并希望对此提供一些指导。谢谢。

authentication jwt reactjs auth0 asp.net-core

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

FineUploader中的多个验证

我正在使用FineUploader我的React应用程序将文件上传到Azure Blob存储.我目前正在使用验证来确保用户只能上传一个文件.我现在想再添加两个验证:

  1. 我想只允许JPGPNG文件
  2. 我还想确保文件用户可以上传的像素大小必须至少为300x300像素.换句话说,我想强加宽度和高度要求

如何添加这些验证?我是否需要options为每个要求提供验证属性,或者它们是否进入现有要求?我目前的验证如下:

// Omitted for brevity
constructor(props) {

   super(props);
   this.uploader = new FineUploaderAzure({
            options: {
                cors: {
                    expected: true,
                    sendCredentials: false
                },
                signature: {
                    endpoint: "some-url.com"
                },
                request: {
                    endpoint: "my-container-url"
                },
                validation: {
                    multiple: false
                }
            },
            callbacks: {
                onError: function (id, name, errorReason, xhrOrXdr) {

                }
            }
        })
}
Run Code Online (Sandbox Code Playgroud)

fine-uploader reactjs

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

消息未到达 Azure SignalR 服务

我正在使用 React 前端在 ASP.NET Core 2.2 应用程序中实现 Azure SignalR 服务。当我发送消息时,我没有收到任何错误,但我的消息未到达 Azure SignalR 服务。

具体来说,这是一个私人聊天应用程序,因此当消息到达中心时,我只需将其发送给该特定聊天中的参与者,而不是发送给所有连接。

当我发送消息时,它会到达我的集线器,但我没有看到任何迹象表明该消息正在发送到 Azure 服务。

为了安全起见,我使用Auth0JWT Token身份验证。在我的中心,我正确地看到了授权用户声明,因此我认为不存在任何安全问题。正如我所提到的,我能够访问中心的事实告诉我,前端和安全性工作正常。

然而,在 Azure 门户中,我没有看到任何消息的迹象,但如果我正确读取数据,我确实会看到 2 个客户端连接,这在我的测试中是正确的,即我用于测试的两个打开的浏览器。这是一个屏幕截图:

在此输入图像描述

这是我的Startup.cs代码:

public void ConfigureServices(IServiceCollection services)
{
   // Omitted for brevity
   services.AddAuthentication(options => {
                options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
                options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;
   })
   .AddJwtBearer(jwtOptions => {
       jwtOptions.Authority = authority;
       jwtOptions.Audience = audience;

       jwtOptions.Events = new JwtBearerEvents
       {
            OnMessageReceived = context =>
            {
                var accessToken = context.Request.Query["access_token"];

                // Check to see if the message is coming …
Run Code Online (Sandbox Code Playgroud)

azure signalr asp.net-core asp.net-core-signalr azure-signalr

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

从 VS Code 在资源管理器中打开文件夹

假设我在 VS Code 中打开了一个项目/文件夹,我想在 Windows 资源管理器中打开该文件夹,是否有键盘快捷键或 VS Code 扩展?有时我还需要在命令提示符下转到项目文件夹。

在 Visual Studio 2017 中,有一个用于打开文件夹的菜单选项和一个用于在命令提示符下快速进入项目文件夹的扩展——见下文: 在此处输入图片说明

我如何在 VS Code 中处理这些?

visual-studio-code

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

Visual Studio 2019中的无效绑定

我知道这是一个很常见的问题,因为似乎很多人都遇到了。我发布此问题,以查看当我发现所有解决该问题的建议均失败时是否有其他选择。

我有一个使用6个项目的解决方案Visual Studio 2019。一切正常,突然之间,我的解决方案似乎不受源代码控制。正在显示所有绑定,Invalid并且尝试修复它们无效。

我所做的唯一可能导致此问题的方法是升级VS 2019到最新版本,即在前16.2.5一天可用时。在更新之前,我正在使用VS 2019 16.2.4。除此之外,没有任何改变,我也没有做任何异常的事情。

我的问题是,在互联网上找到的所有建议方法都失败之后,我有什么选择?

到目前为止,这是我尝试过的,但没有任何效果:

  1. 我删除了.vs文件夹并打开了解决方案。没用
  2. 我的解决方案中有6个项目。我一一解开。然后,我一个接一个地卸载每个项目。然后,我一个接一个地重新加载每个项目。这没有解决。然后,我在文件>源代码管理>高级>更改源代码管理下重新绑定每个项目。这也没有解决。

我的解决方案有新变化。除了将整个解决方案下载到一个新文件夹并手动添加更改之外,我还需要哪些选项来解决此问题?

PS我使用Azure DevOpsTFVC源代码控制。

visual-studio azure-devops visual-studio-2019

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