Maison >Java >javaDidacticiel >Protégez votre application en quelques minutes : les jetons OAuth en toute simplicité

Protégez votre application en quelques minutes : les jetons OAuth en toute simplicité

Susan Sarandon
Susan Sarandonoriginal
2024-10-08 20:09:02929parcourir

Protect Your App in inutes: OAuth Tokens Made Easy

Sécuriser votre application en 5 étapes : guide du débutant sur les jetons OAuth

Lorsqu'il s'agit de générer des jetons OAuth, les mots de passe ne sont pas échangés entre les services. Au lieu de cela, les jetons servent de mécanisme d’authentification. Dans cet article, nous allons établir un serveur d'autorisation de base qui génère des jetons en fonction du nom d'utilisateur et du mot de passe fournis.

Pour commencer, créons une nouvelle classe qui étend AuthorizationServerConfigurerAdapter. On peut l'annoter avec @Configuration pour indiquer qu'il s'agit d'une classe de configuration contenant une ou plusieurs méthodes @Bean. Pour activer le serveur d'autorisation, nous utiliserons @EnableAuthorizationServer.java@Configuration@EnableAuthorizationServerpublic class AuthServer extends AuthorizationServerConfigurerAdapter

Ensuite, nous allons créer un bean pour l'encodeur de mot de passe. Nous pouvons exploiter BcryptPasswordEncoder pour coder les mots de passe.

java
@Beanpublic PasswordEncoder passwordEncoder() {
renvoyer le nouveau BCryptPasswordEncoder();
>

Nous remplacerons les méthodes de configuration comme suit. Il existe trois méthodes de configuration. Nous les implémenterons comme ci-dessous. Ici, nous pouvons configurer les types d'octroi, les mots de passe, la validité du jeton d'actualisation, la validité du jeton d'accès et les étendues.

java
@Overridepublic void configure (ClientDetailsServiceConfigurer clients) lève une exception {
clients.inMemory().withClient("client")
.secret(passwordEncoder.encode(("secret")))
.authorizedGrantTypes("mot de passe")
.scopes("webclient","mobileclient");
>

Types de subventions :

  • Attribution du code d'autorisation
  • Subvention implicite
  • Attribution des informations d'identification du propriétaire de la ressource
  • Attribution des identifiants client
  • Actualiser l'octroi de jetons

Portée

Les portées imposent des limitations à l'accès d'une application aux comptes des utilisateurs. Il peut englober un ou plusieurs périmètres. Pour un guide plus détaillé sur la sécurisation de votre application avec les jetons OAuth, consultez cet article : https://t8tech.com/it/coding/secure-your-app-in-5-steps-a-beginners-guide- vers-oauth-tokens/

@Overridepublic void define(AuthorizationServerEndpointsConfigurator endpoints) throws Exception {
    endpoints.setAuthenticationManager(this.authenticationManagerBean);
}

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:
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