DreamineVMS.Web 1.0.0.0
DreamineVMS 에이전트가 제공하는 HLS 카메라 영상을 브라우저에서 관리·재생하는 원격 CCTV 웹 서비스입니다.
로딩중...
검색중...
일치하는것 없음
AgentTokenService.cs
이 파일의 문서화 페이지로 가기
1using System.Collections.Concurrent;
3
5
14public sealed class AgentTokenService
15{
24 private readonly ConcurrentDictionary<string, (VmsUser User, DateTimeOffset Expires)> _tokens = new();
25
50 public string Issue(VmsUser user)
51 {
52 var token = Guid.NewGuid().ToString("N");
53 _tokens[token] = (user, DateTimeOffset.UtcNow.AddHours(24));
54 return token;
55 }
56
81 public VmsUser? Validate(string? token)
82 {
83 if (string.IsNullOrWhiteSpace(token)) return null;
84 if (!_tokens.TryGetValue(token, out var entry)) return null;
85 if (entry.Expires < DateTimeOffset.UtcNow) { _tokens.TryRemove(token, out _); return null; }
86 return entry.User;
87 }
88}
readonly ConcurrentDictionary< string,(VmsUser User, DateTimeOffset Expires)> _tokens