public EncryptedMessageDeserializer(JsonSerializer deserializer, ICryptoStreamProvider provider) { _deserializer = deserializer; _provider = provider; _objectTypeDeserializer = new ObjectTypeDeserializer(_deserializer); }
public EncryptedMessageDeserializer(JsonSerializer deserializer, ISendEndpointProvider sendEndpointProvider, IPublishEndpointProvider publishEndpoint, ICryptoStreamProvider provider) { _deserializer = deserializer; _sendEndpointProvider = sendEndpointProvider; _publishEndpoint = publishEndpoint; _provider = provider; }
/// <summary> /// Returns a stream for decrypting the message /// </summary> /// <param name="provider">The crypto stream provider</param> /// <param name="stream">The original stream to which the encrypted message content is written</param> /// <param name="context">The second context of the message</param> /// <returns>A stream for serializing the message which will be encrypted</returns> public static Stream GetDecryptStream(this ICryptoStreamProvider provider, Stream stream, TransformContext context) { if (context == null) { throw new ArgumentNullException(nameof(context)); } var keyId = context.Headers.TryGetHeader(EncryptedMessageSerializer.EncryptionKeyHeader, out var keyIdObj) ? keyIdObj.ToString() : default; return(provider.GetDecryptStream(stream, keyId, CryptoStreamMode.Read)); }
/// <summary> /// Returns a stream with the encryption bits in place to ensure proper message encryption /// </summary> /// <param name="provider">The crypto stream provider</param> /// <param name="stream">The original stream to which the encrypted message content is written</param> /// <param name="context">The second context of the message</param> /// <returns>A stream for serializing the message which will be encrypted</returns> public static Stream GetEncryptStream(this ICryptoStreamProvider provider, Stream stream, SendContext context) { if (context == null) { throw new ArgumentNullException(nameof(context)); } object keyIdObj; string keyId = context.Headers.TryGetHeader(EncryptedMessageSerializer.EncryptionKeyHeader, out keyIdObj) ? keyIdObj.ToString() : default(string); return(provider.GetEncryptStream(stream, keyId, CryptoStreamMode.Write)); }
public static void UseEncryptedSerializer(this IReceiveEndpointConfigurator configurator, ICryptoStreamProvider streamProvider) { configurator.AddEndpointSpecification(new EncryptedMessageSerializerReceiveEndpointSpecification(streamProvider)); }
public static void UseEncryptedSerializer(this IBusFactoryConfigurator configurator, ICryptoStreamProvider streamProvider) { configurator.AddBusFactorySpecification(new EncryptedMessageSerializerBusFactorySpecification(streamProvider)); }
public EncryptedMessageDeserializer(JsonSerializer deserializer, ICryptoStreamProvider provider) { _deserializer = deserializer; _provider = provider; }
public EncryptedMessageSerializerBusFactorySpecification(ICryptoStreamProvider streamProvider) { _streamProvider = streamProvider; }
public static void UseEncryptedSerializer(this IReceiveEndpointConfigurator configurator, ICryptoStreamProvider streamProvider) { configurator.SetMessageSerializer(() => new EncryptedMessageSerializer(streamProvider)); configurator.AddMessageDeserializer(EncryptedMessageSerializer.EncryptedContentType, () => new EncryptedMessageDeserializer(BsonMessageSerializer.Deserializer, streamProvider)); }
public static IMessageDataRepository Encrypted(this IMessageDataRepositorySelector selector, ICryptoStreamProvider streamProvider, Func <IMessageDataRepositorySelector, IMessageDataRepository> innerSelector) { if (selector is null) { throw new ArgumentNullException(nameof(selector)); } if (streamProvider is null) { throw new ArgumentNullException(nameof(streamProvider)); } if (innerSelector == null) { throw new ArgumentNullException(nameof(innerSelector)); } var innerRepository = innerSelector(selector); if (innerRepository is EncryptedMessageDataRepository) { throw new ArgumentException("Nesting encrypted repositories is not supported", nameof(innerSelector)); } if (innerRepository is IBusObserver observer) { selector.Configurator.ConnectBusObserver(observer); } return(new EncryptedMessageDataRepository(innerRepository, streamProvider)); }
IMessageSerializer CreateSerializer() { ICryptoStreamProvider streamProvider = GetStreamProvider(); return(new EncryptedMessageSerializer(streamProvider)); }
/// <summary> /// Provides encrypted stream support to ensure that message data is encrypted at rest. /// </summary> /// <param name="repository">The original message data repository where message data is stored.</param> /// <param name="streamProvider">The encrypted stream provider</param> public EncryptedMessageDataRepository(IMessageDataRepository repository, ICryptoStreamProvider streamProvider) { _repository = repository; _streamProvider = streamProvider; }
public EncryptedMessageSerializerReceiveEndpointSpecification(ICryptoStreamProvider streamProvider) { _streamProvider = streamProvider; }
public EncryptedMessageSerializer(ICryptoStreamProvider streamProvider) { _streamProvider = streamProvider; _serializer = BsonMessageSerializer.Serializer; }
public static void UseEncryptedSerializer(this IEventHubFactoryConfigurator configurator, ICryptoStreamProvider streamProvider) { configurator.SetMessageSerializer(() => new EncryptedMessageSerializer(streamProvider)); // configurator.AddMessageDeserializer(EncryptedMessageSerializer.EncryptedContentType, // () => new EncryptedMessageDeserializer(BsonMessageSerializer.Deserializer, streamProvider)); }