Azure Oauth-如何更改令牌过期时间?

Azure Oauth-如何更改令牌过期时间?,azure,oauth-2.0,Azure,Oauth 2.0,我们将Oauth2与Azure一起使用。默认情况下,服务器返回一个令牌,该令牌的过期时间间隔为一小时。有没有办法更改过期时间间隔?现在可以配置令牌生存期。您可以在此处阅读更多: 备注:此功能正在预览中,不会以这种方式投入生产。下面的标题也放在我上面提到的文档链接上 在预览期间听取客户的意见后,我们计划用Azure Active Directory条件访问中的新功能替换此功能。一旦新功能完成,此功能最终将在通知期后被弃用。如果使用可配置令牌生存期策略,请准备在新的条件接收功能可用后切换到该功能 原

我们将Oauth2与Azure一起使用。默认情况下,服务器返回一个令牌,该令牌的过期时间间隔为一小时。有没有办法更改过期时间间隔?

现在可以配置令牌生存期。您可以在此处阅读更多:

备注:此功能正在预览中,不会以这种方式投入生产。下面的标题也放在我上面提到的文档链接上

在预览期间听取客户的意见后,我们计划用Azure Active Directory条件访问中的新功能替换此功能。一旦新功能完成,此功能最终将在通知期后被弃用。如果使用可配置令牌生存期策略,请准备在新的条件接收功能可用后切换到该功能

原始答复:

目前无法更改过期时间间隔。这些是当前的过期时间

  • 访问令牌持续1小时

  • 刷新代币持续14天,但

    • 如果您在这14天内使用刷新令牌,您将收到一个新的令牌,新的有效期窗口将向前移动14天。你可以重复这个技巧长达90天的总有效期,然后你必须重新验证
    • 刷新令牌可以随时失效,原因与应用无关(例如用户更改密码)。因此,您不应该在代码中依赖于上述内容–您的逻辑应该始终假定刷新令牌随时都可能失败
    • 针对来宾MSA帐户的刷新令牌问题仅持续12小时

资料来源:还有我自己的经历。

假设你在谈论Azure广告,恐怕不可能这么做


但是,在与令牌一起的响应中,您会返回一个
刷新令牌
,该令牌可用于获取新令牌。您可以做的是缓存
刷新令牌
过期时间
,在发出请求之前,您可以检查令牌是否已过期(或即将过期)。在这种情况下,您可以使用此刷新令牌获取新令牌,然后提出请求。

您必须使用power shell执行以下两个步骤:

  • 创建新策略。此策略将超时设置为2小时
    
    新AzureADPolicy-Definition@(“{”TokenLifetimePolicy“:{”版本:1,“AccessTokenLifetime:“02:00:00”,“MaxAgeSessionSingleFactor:“02:00:00”}”)-DisplayName“MyWebPolicyScenario”-IsOrganizationDefault$false-键入“TokenLifetimePolicy”
    

  • 将此策略应用于您的网站

    添加AzureADServicePrincipalPolicy-Id-reObjectId

  • 注: 要获取ServicePrincipal的ObjectId,请运行以下命令:
    get AzureADServicePrincipal

    要获取策略的ObjectId,请运行以下命令:
    get-AzureADPolicy


    有关更多详细信息,请参阅此文档:

    访问令牌和刷新令牌的过期时间间隔现在可以配置吗?是的,现在似乎可以配置了:有人能告诉我在azure仪表板中单击哪里可以访问这些设置吗??无法查看任何引用官方来源: