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

清除Microsoft Azure应用程序服务的内存

雍骏俊
2023-03-14

我已经开发了API来生成JWT令牌并托管到MS Azure应用服务中。从过去的几个月开始,我们已经发布了大约1,000,00个令牌,现在我们希望根据我们的业务要求从内存中清除/删除所有令牌。

如果我们不从内存中删除/清除令牌,它仍然会持续存在,因为我们发行令牌1年,它将消耗我们的内存长达一年。

我尝试了应用程序服务的“重启”选项,但重启后,先前生成的令牌仍在内存中可用,我们可以访问此JWT令牌。

请建议如何从MS App Services中的内存中删除到以前生成的令牌。

我们的主要目标是从我们的MS AZURE应用程序服务中删除所有以前的令牌并释放内存,因为目前我们的大部分内存都被以前的令牌占用。

提前感谢!!技术:-C#. NET

using Microsoft.IdentityModel.Tokens;
using System.IdentityModel.Tokens.Jwt;
using System.Security.Claims;
public async static Task<string> GenerateToken(string userid, char type,string contactId)
        {
            string _userKeyCombination = userid+"|"+ contactId;
            byte[] key = Convert.FromBase64String(_SecretKey);
            SymmetricSecurityKey securityKey = new SymmetricSecurityKey(key);            
            SecurityTokenDescriptor descriptor = new SecurityTokenDescriptor();
            descriptor.Subject = new ClaimsIdentity(claims: new[] { new Claim(type: ClaimTypes.Name, 
                                 value: _userKeyCombination) });
            descriptor.Expires = DateTime.UtcNow.AddMonths(12));
            descriptor.SigningCredentials = new SigningCredentials(securityKey, algorithm: 
                                            SecurityAlgorithms.HmacSha256Signature);
            JwtSecurityTokenHandler handler = new JwtSecurityTokenHandler();
            JwtSecurityToken token = handler.CreateJwtSecurityToken(descriptor);
            string _token = handler.WriteToken(token);
            return _token;

        }

共有1个答案

连俊智
2023-03-14

JWT是无状态身份验证。这意味着,服务器不会在内存中存储令牌。

您可以仔细阅读JWT的加密方法。我们在使用JWT时一般会设置令牌过期时间,以保护令牌的安全。

至于你说的jwt代币会增加webapp的内存,我认为这种说法是错误的。如果有增加,建议检查增加的原因。

 类似资料:
  • 输入图片描述这里我正在使用centos来托管我的laravel应用程序,当我第一次使用git上传项目时,它将被缓存,当我更改任何文件时,更改不适用,我尝试了所有清除laravel缓存的artisan命令,但没有修复唯一的方法是在每次更改后更改应用程序的根目录,是centos缓存或nginx或laravel或其他软件在服务器或浏览器?甚至我清除了公共/index.php中的所有东西,并将仍然得到旧的

  • 更新我的Android应用程序的www文件夹(使用Cordova 3.6.3)时,该应用程序会显示我的www的旧缓存版本。 如果我清除应用程序数据(来自Android- 当应用程序更新时(或每次应用程序启动时),如何强制应用程序清除缓存?

  • 应用程序服务是一项基于 HTTP 的服务,用于托管 Web 应用程序、REST API 和移动后端。 应用程序服务是一项基于 HTTP 的服务,用于托管 Web 应用程序、REST API 和移动后端。支持 ASP.NET、ASP.NET Core、Java、Ruby、Node.js、PHP 或 Python等主流编程语言,用户可以无需管理底层基础设置,即可简单、高效、安全和灵活地对应用进行部署、

  • 我创建了一个android服务来保持WebSocket连接。我从MainActivity呼叫服务。因此,当我打开应用程序时,连接就建立了,并且还从WebSocket服务器获得消息。如果我最小化应用程序,时间也连接在那里。这很好。 如果我从最近使用的应用程序中清除该应用程序,则连接将与服务器断开连接。但我的服务在我的设备上一直运行。 屏幕截图-清除最近使用的应用程序 服务级别 WebSocketLi

  • 问题内容: 我想编写一个实用程序,用户可以在其中选择一组已安装的应用程序并清除其数据缓存,例如,您可以使用内置的“设置”->“应用程序”设置屏幕中的“清除缓存”按钮来手动执行此操作。 如何访问每个应用程序具有多少缓存数据并以编程方式清除这些缓存? 问题答案: 普通的SDK应用程序无权访问(更不用说修改)其他应用程序的缓存了,甚至无权修改您的文件。 在具有以root用户身份运行的应用程序的有根电话上