# MSMQ Subscription Authorization Subscription authorization allows code-level control over what subscribers can subscribe to or unsubscribe from. ```cs var transport = endpointConfiguration.UseTransport(); transport.SubscriptionAuthorizer(context => { var headers = context.MessageHeaders; var subscriptionMessageType = headers[Headers.SubscriptionMessageType]; var messageIntent = headers[Headers.MessageIntent]; var messageIntentEnum = (MessageIntentEnum) Enum.Parse(typeof(MessageIntentEnum), messageIntent, true); // messageIntentEnum will be either MessageIntentEnum.Unsubscribe or MessageIntentEnum.Subscribe var endpointName = headers[Headers.SubscriberEndpoint] .ToLowerInvariant(); // true to allow false to decline return true; }); ```