当前位置: 首页 > 知识库问答 >
问题:

时钟偏差和标记

汪永春
2023-03-14

我需要帮助来了解时钟偏差的工作原理。我们定义时钟偏差来处理双方之间的时间变化。但是,我的困惑是:

  1. 我们在令牌本身中有所有信息,如令牌创建时间和过期时间
  2. 可以验证令牌
  3. 令牌在服务器上创建

那么,为什么我们需要时钟偏差呢?谁能给我一个例子,说明它是如何工作的,以及在哪些情况下它会导致问题或好处?

共有3个答案

龙佐
2023-03-14

Microsoft JWT 验证中间件中存在时钟偏差。默认情况下设置为 5 分钟,不能更少(300 秒/5 分钟)

有一个名为ClockSkew的令牌验证参数,它获取或设置验证时间时要应用的时钟偏差。ClockSkew的默认值是5分钟。这意味着,如果您尚未设置,您的令牌将在最多5分钟内仍然有效。如果您希望您的令牌在确切的时间过期;您需要将ClockSkew设置为零,如下所示,

 services.AddAuthentication("Bearer").AddJwtBearer("Bearer", options =>
        {
            options.Authority = "https://localhost:44347";
            options.TokenValidationParameters = new TokenValidationParameters
            {
                ValidateAudience = false,
                ValidateLifetime = true,
                ClockSkew = TimeSpan.Zero
            };
        });
华俊弼
2023-03-14

好了,时钟偏移不会发生在你的机器上。默认情况下,时钟偏差设置为5分钟。这就是JWT没有在预期时间到期的原因。

晏华奥
2023-03-14

让我们考虑一个短期访问令牌。当我向服务器发出请求时,服务器将检查我的令牌是否已过期。它如何检查它知道令牌创建的时间以及现在的时间。大多数访问令牌在一小时后过期,但这实际上取决于它在身份验证服务器中的设置方式。因此,如果令牌是在一个多小时前创建的,那么它将过期,并通知用户。这就是我们试图确保服务器与NTP同步的原因。

让我们首先考虑一下时钟偏差到底是什么。如果我们有两个身份验证服务器怎么办?你怎么知道他们会有相同的时间?如果它们实际上偏离了几分钟怎么办。一台服务器将返回令牌已过期,而另一台服务器不会。如果你是一家小公司,这可能无关紧要。

现在考虑一下,如果你是一家大型搜索引擎公司,服务器遍布世界各地。假设现在是2016年秋天,夏令时开始了。现在你有一些服务器在一个时间运行,其他服务器在另一个时间运行。也许只是也许一些国家决定在他们开始夏令时改变,繁荣一堆令牌无缘无故地无效。免责声明我不为上述搜索引擎公司工作。我只是看着这一切发生,这是我对发生了什么的理论。

为什么我们需要时钟偏移。

你不需要它,但如果你有两个身份验证服务器,你可以拥有它。所以你可能应该处理它。https://softwareengineering.stackexchange.com/a/245182/160992

 类似资料:
  • 我对标准差的计算有点执着,如果你能在下面的两个问题上给我一些帮助,那就太好了。 代码 问题1:我如何计算这个的标准误差(平均值的标准偏差)? 代码 问题2:如何计算累积标准偏差? 非常感谢!!(很抱歉数据格式错误!)

  • 返回数组数组的标准偏差。 使用 Array.reduce() 来计算均值,方差已经值的方差之和,方差的值,然后确定标准偏差。 您可以省略第二个参数来获取样本标准偏差,或将其设置为 true 以获得总体标准偏差。 const standardDeviation = (arr, usePopulation = false) => { const mean = arr.reduce((acc, va

  • 问题内容: 我想澄清一下,我正在寻找一种使用Streams计算标准偏差的方法(我目前有一种工作方法可以计算并返回SD,但不使用Streams)。 我正在使用的数据集紧密匹配,如Link中所示。如该链接所示,能够对我的数据进行分组并获得平均值,但无法弄清楚如何获取SD。 码 我还检查了DoubleSummaryStatistics上的链接,但似乎对SD没有帮助。 问题答案: 您可以将自定义收集器用于

  • 我有一个集合列表和每个集合的一些基本统计数据(项目数、最小值、最大值、平均值、标准差)。我想计算所有集合的相同统计数据。计算总计数、最小最大值和平均值很容易,但我不确定如何计算总标准偏差。 数据如下所示: 同时生成所有集合的统计信息:

  • 本文向大家介绍什么是偏差和方差?相关面试题,主要包含被问及什么是偏差和方差?时的应答技巧和注意事项,需要的朋友参考一下 泛化误差可以分解为偏差的平方加上方差加上噪声。 偏差度量了学习算法的期望预测和真实结果的偏离程度,刻画了学习算法本身的拟合能力 方差度量了同样大小的训练集的变动所导致的学习性能的变化,刻画了数据扰动所造成的影响 噪声表达了当前任务上任何学习算法所能达到的期望泛化误差下界,刻画了问