We have a company policy that when we have authentication failures for more than 3 times in a row, the account gets locked. In the Spring Boot service we have setup using RabbitMQ, the login mechanism to establish a connection happens automatically. In such case, if the username and password does not match, this causes an account lock. So, we want to have an interceptor which checks if the connection can be made by trying once or twice. If the connection does not work, then we can integrate it to a health check and alert accordingly. I checked the existing retry properties, but it seems to be related to message delivery and processing. Is there any mechanism to prevent automatic connections to RabbitMQ?
How to intercept authentication errors in RabbitMQ
20 Views Asked by user2281204 At
1
There are 1 best solutions below
Related Questions in SPRING-BOOT
- Multi Tenancy in Spring - Partitioned Data Approach
- I have created a spring boot application with spring data JPA, Rest ,oracle and i am getting this ORA-00933: SQL command not properly ended
- Springboot: How to get an entity optional property and check null?
- How to create jasper report in spring boot rest api with jpa
- JSON Body is Not Passing Certain Strings
- Unresolved reference error is showing up after adding the dgs codegen plugin successfully
- Transaction silently rolled back
- JPA buddy error when generating JPA Entities from DB
- Migrating Spring Boot 2 to 3 throws org.glassfish.jaxb.runtime.v2.runtime.IllegalAnnotationsException: 3 counts of IllegalAnnotationExceptions
- Hibernate SQL Error: Missing FROM-clause entry for table "th1_1"
- Appwrite and / or Spring Boot Backend
- Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured. I'm using Postgresql
- Driver com.microsoft.sqlserver.jdbc.SQLServerDriver claims to not accept jdbcUrl, ${SPRING_DATASOURCE_URL}: GitHub Actions
- springboot class org.hibernate.mapping.Bag cannot be cast to class org.hibernate.mapping.SimpleValue
- Spring security causing 404 with message "No static resource login"
Related Questions in RABBITMQ
- When sending message getting Exception: org.springframework.amqp.AmqpIOException: java.io.IOException
- How to publish messages to RabbitMQ by using Multi threading?
- How should it be handled if the number of messages is less than the number of threads?
- Apply a dynamic group value in Spring Cloud Stream
- Two rabbitmq queues with exactly same configuration one of them is not created automatically (Spring Boot 3 RabbitMQ)
- Does Spring AMQP 3.13 support quorum queues?
- IServiceCollectionConfigurator' does not contain a definition for 'UsingRabbitMq'
- Troubleshooting topic exchanges in php-amqplib
- How to Use AWS Systems Manager (SSM) for Accessing a RabbitMQ Broker in an AWS VPC Private Subnet
- Rabbitmq on azure container app error 405 on trying to create queue on web management
- Cannot connect to RabbitMQ from Flower/Celery
- How to Extract Queue Name, Priority, and Message ID from RabbitMQ Inbound Endpoint Messages in WSO2 MI 4.2?
- Spring Boot RabbitMQ consumer application can not fetch an object sent by producer application in Java 17
- Is it possible to implement an event-driven architecture using Redis Streams?
- Scaling Nuclio With KEDA Based on Queue Length: Error ScaledObject Name is Not Specified
Related Questions in SPRING-AMQP
- How do I propagate the current SecurityContext to my @RabbitListener in Spring Boot?
- Does Spring AMQP 3.13 support quorum queues?
- Rabbitmq RPC(request-reply) using springboot
- Spring Amqp client recover
- How to intercept authentication errors in RabbitMQ
- How to do code refactoring in rabbitmq consumer?
- Can not unlock redisson lock in rabbit listener in spring boot
- RabbitMQ: round-robin for multiple consumer
- Spring Boot RabbitMQ with AMQP Library or RabbitMQ Library
- possibleFatalAuthenticationFailure flag - ignored by AsyncMessageProcessingConsumer
- RabbitMQ 3.12 - Unexpected Channel shutdown ERROR with NACKS RECEIVED message
- Spring amqp - no compatible authentication mechanism found - server offered []
- Publisher instantly gets the ack without waiting for the receiver to send it
- spring-rabbit in another web framework: using RabbitListenerEndpointRegistry
- How rabbitmq know consumer to service or pod binding where its present
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
There are two type of services to connect to RabbitMQ: producer (
RabbitTemplate) which is passive and does not connect until you try to use its API. Another one is a consumer which is an active component and has a polling loop in its own thread. This one starts automatically by default when application is ready. However you can make it not doing that setting itsautoStartuptofalse.So, what you need in your project logic is to have all the Rabbit listeners as non-started by default, do not send any messages to
RabbitTemplate, until your health service turn the switch respectively.Your check interceptor probably just could use
ConnectionFactory.createConnection().createChannel(false).exchangeDeclarePassive("amq.direct")to be sure that connection is OK and so on.