async public Task <ClientModel> FindClientByIdAsync(string clientId) { string id = clientId.ClientIdToHexId(_cryptoService); var collection = GetCollection(); var document = await(await collection.FindAsync <ClientBlobDocument>( filter: Builders <ClientBlobDocument> .Filter.Eq("_id", id)) ).FirstOrDefaultAsync(); if (document != null) { return(_blobSerializer.DeserializeObject <ClientModel>( _cryptoService.DecryptText(document.BlobData))); } return(null); }
async public Task <ApiResourceModel> FindApiResourceAsync(string name) { FileInfo fi = new FileInfo($"{ _rootPath }/{ name.NameToHexId(_cryptoService) }.api"); if (!fi.Exists) { return(null); } using (var reader = File.OpenText(fi.FullName)) { var fileText = await reader.ReadToEndAsync(); fileText = _cryptoService.DecryptText(fileText); return(_blobSerializer.DeserializeObject <ApiResourceModel>(fileText)); } }
async public Task <ApiResourceModel> FindApiResourceAsync(string name) { string id = name.ApiNameToHexId(_cryptoService); var collection = GetApiResourceCollection(); var document = await(await collection.FindAsync <ApiResourceDocument>( filter: Builders <ApiResourceDocument> .Filter.Eq("_id", id)) ).FirstOrDefaultAsync(); if (document != null) { return(_blobSerializer.DeserializeObject <ApiResourceModel>( _cryptoService.DecryptText(document.BlobData))); } return(null); }
async public Task <ClientModel> FindClientByIdAsync(string clientId) { FileInfo fi = new FileInfo($"{ _rootPath }/{ clientId.NameToHexId(_cryptoService) }.client"); if (!fi.Exists) { return(null); } using (var reader = File.OpenText(fi.FullName)) { var fileText = await reader.ReadToEndAsync(); fileText = _cryptoService.DecryptText(fileText); return(_blobSerializer.DeserializeObject <ClientModel>(fileText)); } }
async public Task <ApplicationRole> FindByIdAsync(string roleId, CancellationToken cancellationToken) { FileInfo fi = new FileInfo($"{ _rootPath }/{ roleId }.role"); if (!fi.Exists) { return(null); } using (var reader = File.OpenText(fi.FullName)) { var fileText = await reader.ReadToEndAsync(); fileText = _cryptoService.DecryptText(fileText); return(_blobSerializer.DeserializeObject <ApplicationRole>(fileText)); } }
async public Task <IEnumerable <SecretsLocker> > GetLockersAsync(CancellationToken cancellationToken) { List <SecretsLocker> secretLockers = new List <SecretsLocker>(); foreach (var di in new DirectoryInfo(_rootPath).GetDirectories()) { var fi = new FileInfo($"{ di.FullName }/_item.meta"); if (fi.Exists) { using (var reader = File.OpenText(fi.FullName)) { var fileText = await reader.ReadToEndAsync(); fileText = _cryptoService.DecryptText(fileText); secretLockers.Add(_blobSerializer.DeserializeObject <SecretsLocker>(fileText)); } } } return(secretLockers); }
public static T Deserialize <T>(this BlobTableEntity entity, ICryptoService cryptoService, IBlobSerializer blobSerializer) { //var properties = entity?.WriteEntity(new OperationContext()); //if (properties == null) //{ // return null; //} //var blobBase64 = properties["Blob"]?.StringValue; if (entity?.Blob == null) { return(default(T)); } var bloblBase64 = entity.Blob; return(blobSerializer.DeserializeObject <T>(cryptoService.DecryptText(bloblBase64))); }