Table des matières
1. Authentification " >1. Authentification
(1) Autorisation au niveau de la destination" >En fonction de l'authentification, les autorisations correspondantes peuvent être accordées en fonction des rôles d'utilisateur réels. Par exemple, certains utilisateurs disposent d'une écriture en file d'attente. autorisations, certains ne peuvent que lire, etc. Deux méthodes d'autorisation (1) Autorisation au niveau de la destination
Connecter les consommateurs et les producteurs" >La logique du plug-in doit implémenter la classe BrokerFilter et l'installer via la classe d'implémentation BrokerPlugin pour l'interception et Opérations au niveau du courtier : Connecter les consommateurs et les producteurs
Maison Java javaDidacticiel Explication détaillée du mécanisme de sécurité de JMS Active MQ

Explication détaillée du mécanisme de sécurité de JMS Active MQ

Jun 26, 2017 am 11:44 AM
active 安全 机制

1. Authentification

Authentification : Vérifiez si une entité ou un utilisateur est autorisé à accéder aux ressources protégées.

MQ fournit deux plug-ins pour l'authentification des autorités :
(1), plug-in d'authentification simple : configurez directement les informations d'authentification de l'autorité pertinente en XML déposer.

Configurez l'élément courtier de conf/activemq.xml pour ajouter un plug-in :

        <plugins><simpleAuthenticationPlugin><users><authenticationUser username="admin" password="password" groups="admins,publishers,consumers"/><authenticationUser username="publisher" password="password"  groups="publishers,consumers"/><authenticationUser username="consumer" password="password" groups="consumers"/><authenticationUser username="guest" password="password"  groups="guests"/></users></simpleAuthenticationPlugin></plugins>
Copier après la connexion

Il existe deux méthodes d'authentification dans le code :

1. Authentification lors de la création d'une connexion

//用户认证Connection conn = connFactory.createConnection("admin","password");
Copier après la connexion

ConnectionFactory connFactory = new ActiveMQConnectionFactory("admin","password",url);
Copier après la connexion
(2) Plug-in d'authentification JAAS :

implémente l'API JAAS et fournit un schéma d'autorisations plus puissant et personnalisable.

Méthode de configuration : 1. Créez le fichier login.config dans le répertoire conf Propriétés de configuration utilisateur :

2. le répertoire conf Créez le fichier users.properties dans le répertoire de configuration utilisateur :

activemq-domain {
    org.apache.activemq.jaas.PropertiesLoginModule required debug=trueorg.apache.activemq.jaas.properties.user="users.properties"org.apache.activemq.jaas.properties.group="groups.properties";
};
Copier après la connexion
3. Créez le fichier groups.properties dans le répertoire conf pour configurer le groupe d'utilisateurs :

# 创建四个用户
admin=password  
publisher=password 
consumer=password  
guest=password
Copier après la connexion
4. Insérez la configuration dans activemq.xml :

#创建四个组并分配用户
admins=admin
publishers=admin,publisher
consumers=admin,publisher,consumer
guests=guest
Copier après la connexion
5. Configurez les paramètres de démarrage de MQ :

Utilisez la commande dos Démarrer :
<!-- JAAS authentication plug-in --><plugins><jaasAuthenticationPlugin configuration="activemq-domain" /></plugins>
Copier après la connexion

6. La méthode d'authentification dans le code est la même que celle du plug-in d'authentification simple.

D:\tools\apache-activemq-5.6.0-bin\apache-activemq-5.6.0\bin\win64>activemq.bat -Djava.security.auth.login.config=D:/tools/apache-activemq-5.6.0-bin/apache-activemq-5.6.0/conf/login.config
Copier après la connexion
2. Autorisation

En fonction de l'authentification, les autorisations correspondantes peuvent être accordées en fonction des rôles d'utilisateur réels. Par exemple, certains utilisateurs disposent d'une écriture en file d'attente. autorisations, certains ne peuvent que lire, etc. Deux méthodes d'autorisation (1) Autorisation au niveau de la destination



Trois niveaux de fonctionnement de la destination JMS : Lecture : autorisation de lire les messages de destination Ecrire : Autorisation d'envoyer des messages à la destination Admin : Autorisation de gérer les destinations

Méthode de configuration conf/activemq.xml :




(2) Autorisation au niveau du message

Autoriser des messages spécifiques.
<plugins><jaasAuthenticationPlugin configuration="activemq-domain" /><authorizationPlugin><map><authorizationMap><authorizationEntries><authorizationEntry topic="topic.ch09" read="consumers" write="publishers" admin="publishers" /></authorizationEntries></authorizationMap></map></authorizationPlugin></plugins>
Copier après la connexion
Étapes de développement :
1. Pour implémenter le plug-in d'autorisation de message, vous devez implémenter l'interface MessageAuthorizationPolicy

2. -in dans un package JAR et placez-le dans Entrez le répertoire lib d'activeMq

3. Définissez l'élément dans activemq.xml
public class AuthorizationPolicy implements MessageAuthorizationPolicy {private static final Log LOG = LogFactory.
        getLog(AuthorizationPolicy.class);public boolean isAllowedToConsume(ConnectionContext context,
        Message message) {
        LOG.info(context.getConnection().getRemoteAddress());
        String remoteAddress = context.getConnection().getRemoteAddress();if (remoteAddress.startsWith("/127.0.0.1")) {
            LOG.info("Permission to consume granted");return true;
        } else {
        LOG.info("Permission to consume denied");return false;
    }
    }
}
Copier après la connexion

3. Auto-définir le plug-in de sécurité
<messageAuthorizationPolicy><bean class="org.apache.activemq.book.ch6.AuthorizationPolicy" xmlns="http://www.springframework.org/schema/beans" /></messageAuthorizationPolicy>
Copier après la connexion

La logique du plug-in doit implémenter la classe BrokerFilter et l'installer via la classe d'implémentation BrokerPlugin pour l'interception et Opérations au niveau du courtier : Connecter les consommateurs et les producteurs

    Commettre des transactions
  • Ajouter et supprimer les connexions du courtier
  • démo : restreindre les connexions du courtier en fonction de l'adresse IP.
Installez le plug-in :

package ch02.ptp;import java.util.List;import org.apache.activemq.broker.Broker;import org.apache.activemq.broker.BrokerFilter;import org.apache.activemq.broker.ConnectionContext;import org.apache.activemq.command.ConnectionInfo;public class IPAuthenticationBroker extends BrokerFilter {
    List<String> allowedIPAddresses;public IPAuthenticationBroker(Broker next, List<String>allowedIPAddresses) {super(next);this.allowedIPAddresses = allowedIPAddresses;
    }public void addConnection(ConnectionContext context, ConnectionInfo info) throws Exception {
        String remoteAddress = context.getConnection().getRemoteAddress();if (!allowedIPAddresses.contains(remoteAddress)) {throw new SecurityException("Connecting from IP address "
            + remoteAddress+ " is not allowed" );
        }super.addConnection(context, info);
    }
}
Copier après la connexion
ps : Mettez cette classe dans un package jar et mettez-la dans le Répertoire lib d'activemq Configurez les plug-ins personnalisés sous

 :
package ch02.ptp;import java.util.List;import org.apache.activemq.broker.Broker;import org.apache.activemq.broker.BrokerPlugin;public class IPAuthenticationPlugin implements BrokerPlugin {
    List<String> allowedIPAddresses;public Broker installPlugin(Broker broker) throws Exception {return new IPAuthenticationBroker(broker, allowedIPAddresses);
    }public List<String> getAllowedIPAddresses() {return allowedIPAddresses;
    }public void setAllowedIPAddresses(List<String> allowedIPAddresses) {this.allowedIPAddresses = allowedIPAddresses;
    }
}
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Explication détaillée sur la façon de désactiver le Centre de sécurité Windows 11 Explication détaillée sur la façon de désactiver le Centre de sécurité Windows 11 Mar 27, 2024 pm 03:27 PM

Dans le système d'exploitation Windows 11, le Centre de sécurité est une fonction importante qui aide les utilisateurs à surveiller l'état de sécurité du système, à se défendre contre les logiciels malveillants et à protéger la vie privée. Cependant, les utilisateurs peuvent parfois avoir besoin de désactiver temporairement Security Center, par exemple lors de l'installation de certains logiciels ou lors du réglage du système. Cet article présentera en détail comment désactiver le Centre de sécurité Windows 11 pour vous aider à utiliser le système correctement et en toute sécurité. 1. Comment désactiver le Centre de sécurité Windows 11 Sous Windows 11, la désactivation du Centre de sécurité ne

Explication détaillée sur la façon de désactiver la protection en temps réel dans le Centre de sécurité Windows Explication détaillée sur la façon de désactiver la protection en temps réel dans le Centre de sécurité Windows Mar 27, 2024 pm 02:30 PM

En tant que l'un des systèmes d'exploitation comptant le plus grand nombre d'utilisateurs au monde, le système d'exploitation Windows a toujours été privilégié par les utilisateurs. Cependant, lorsqu'ils utilisent des systèmes Windows, les utilisateurs peuvent être confrontés à de nombreux risques de sécurité, tels que des attaques de virus, des logiciels malveillants et d'autres menaces. Afin de renforcer la sécurité du système, les systèmes Windows disposent de nombreux mécanismes de protection de sécurité intégrés, dont la fonction de protection en temps réel du Centre de sécurité Windows. Aujourd'hui, nous présenterons en détail comment désactiver la protection en temps réel dans le Centre de sécurité Windows. Tout d'abord, commençons

Conseils pour désactiver la protection en temps réel dans le Centre de sécurité Windows Conseils pour désactiver la protection en temps réel dans le Centre de sécurité Windows Mar 27, 2024 pm 10:09 PM

Dans la société numérique d’aujourd’hui, les ordinateurs sont devenus un élément indispensable de nos vies. Windows étant l’un des systèmes d’exploitation les plus populaires, il est largement utilisé dans le monde entier. Cependant, à mesure que les méthodes d’attaque des réseaux continuent de se multiplier, la protection de la sécurité des ordinateurs personnels est devenue particulièrement importante. Le système d'exploitation Windows fournit une série de fonctions de sécurité, dont le « Centre de sécurité Windows » est l'un de ses composants importants. Dans les systèmes Windows, "Windows Security Center" peut nous aider

Comment la conception de l'architecture de sécurité du framework Java doit-elle être équilibrée avec les besoins de l'entreprise ? Comment la conception de l'architecture de sécurité du framework Java doit-elle être équilibrée avec les besoins de l'entreprise ? Jun 04, 2024 pm 02:53 PM

La conception du framework Java assure la sécurité en équilibrant les besoins de sécurité avec les besoins de l'entreprise : en identifiant les principaux besoins de l'entreprise et en hiérarchisant les exigences de sécurité pertinentes. Développez des stratégies de sécurité flexibles, répondez aux menaces par niveaux et effectuez des ajustements réguliers. Tenez compte de la flexibilité architecturale, prenez en charge l’évolution de l’entreprise et des fonctions de sécurité abstraites. Donnez la priorité à l’efficacité et à la disponibilité, optimisez les mesures de sécurité et améliorez la visibilité.

Configuration de la sécurité et renforcement du framework Struts 2 Configuration de la sécurité et renforcement du framework Struts 2 May 31, 2024 pm 10:53 PM

Pour protéger votre application Struts2, vous pouvez utiliser les configurations de sécurité suivantes : Désactiver les fonctionnalités inutilisées Activer la vérification du type de contenu Valider l'entrée Activer les jetons de sécurité Empêcher les attaques CSRF Utiliser RBAC pour restreindre l'accès basé sur les rôles

Microframework PHP : discussion sur la sécurité de Slim et Phalcon Microframework PHP : discussion sur la sécurité de Slim et Phalcon Jun 04, 2024 am 09:28 AM

Dans la comparaison de sécurité entre Slim et Phalcon dans les micro-frameworks PHP, Phalcon dispose de fonctionnalités de sécurité intégrées telles que la protection CSRF et XSS, la validation de formulaire, etc., tandis que Slim manque de fonctionnalités de sécurité prêtes à l'emploi et nécessite une implémentation manuelle. de mesures de sécurité. Pour les applications critiques en matière de sécurité, Phalcon offre une protection plus complète et constitue le meilleur choix.

Les nouveaux défis mondiaux de l'IA : qu'est-il arrivé à la sécurité et à la confidentialité ? Les nouveaux défis mondiaux de l'IA : qu'est-il arrivé à la sécurité et à la confidentialité ? Mar 31, 2024 pm 06:46 PM

Le développement rapide de l’IA générative a créé des défis sans précédent en matière de confidentialité et de sécurité, déclenchant des appels urgents à une intervention réglementaire. La semaine dernière, j'ai eu l'occasion de discuter des impacts de l'IA sur la sécurité avec certains membres du Congrès et leur personnel à Washington, D.C. L’IA générative d’aujourd’hui me rappelle l’Internet de la fin des années 1980, avec ses recherches fondamentales, son potentiel latent et ses utilisations académiques, mais elle n’est pas encore prête à être accessible au public. Cette fois, l’ambition sans entrave des fournisseurs, alimentée par le capital-risque des ligues mineures et inspirée par les chambres d’écho de Twitter, fait rapidement progresser le « meilleur des mondes » de l’IA. Le modèle de base « public » est défectueux et inadapté à une utilisation grand public et commerciale ; les abstractions de confidentialité, si elles sont présentes, fuient comme un tamis, les structures de sécurité sont importantes en raison de la surface d'attaque ;

See all articles