Spring Securityは、残りのサービスで認証済みユーザーと未認証ユーザーのユーザー情報を取得します
Web アプリケーションを開発する場合、セキュリティは重要な考慮事項です。ユーザーデータを保護し、不正アクセスを防止するには、信頼できる認証および認可メカニズムを使用する必要があります。 Spring Security は、アプリケーションを保護するための完全なソリューション セットを提供する、強力で広く使用されているセキュリティ フレームワークです。この記事では、Spring Security で認証済みユーザーと未認証ユーザーのユーザー情報を取得する方法を説明します。 PHP エディタ Baicao では、Spring Security の機能を使用してユーザー情報を取得し、異なるサービス間でユーザー情報を共有する方法を説明します。初心者でも経験豊富な開発者でも、この記事は Spring Security に関する詳細情報を提供し、アプリケーションのセキュリティを向上させるのに役立ちます。
質問内容
Spring Rest サービスを持っており、認証済みユーザーと非認証ユーザーの両方に使用したいと考えています。ユーザーが認証されている場合は、securitycontextholder.getcontext().getauthentication()
からユーザー情報を取得したいと思います。
- 使用する場合
.antmatchers("/app/rest/question/useroperation/list/**").permitall()
以下に示すように ouath2 設定では、ユーザー情報を取得できます ユーザーは認証されていますが、認証されていないユーザーには 401 エラーが発生します。
###もし私が
- .antmatchers("/app/rest/question/useroperation/list/**").permitall()
WebセキュリティでURLを無視します
web.ignoring()..antmatchers("/app/rest/question/useroperation/list/**")以下に示す
securityconfigurationでは、すべてのユーザーが電話をかけることができます。 サービスを利用しましたが、securitycontext からユーザー情報を取得できません。
リーリー
セキュリティ構成
@configuration @enableresourceserver protected static class resourceserverconfiguration extends resourceserverconfigureradapter { @inject private http401unauthorizedentrypoint authenticationentrypoint; @inject private ajaxlogoutsuccesshandler ajaxlogoutsuccesshandler; @override public void configure(httpsecurity http) throws exception { http .exceptionhandling() .authenticationentrypoint(authenticationentrypoint) .and() .logout() .logouturl("/app/logout") .logoutsuccesshandler(ajaxlogoutsuccesshandler) .and() .csrf() .requirecsrfprotectionmatcher(new antpathrequestmatcher("/oauth/authorize")) .disable() .headers() .frameoptions().disable() .sessionmanagement() .sessioncreationpolicy(sessioncreationpolicy.stateless) .and() .authorizerequests() .antmatchers("/views/**").permitall() .antmatchers("/app/rest/authenticate").permitall() .antmatchers("/app/rest/register").permitall() .antmatchers("/app/rest/question/useroperation/list/**").permitall() .antmatchers("/app/rest/question/useroperation/comment/**").authenticated() .antmatchers("/app/rest/question/useroperation/answer/**").authenticated() .antmatchers("/app/rest/question/definition/**").hasanyauthority(authoritiesconstants.admin) .antmatchers("/app/rest/logs/**").hasanyauthority(authoritiesconstants.admin) .antmatchers("/app/**").authenticated() .antmatchers("/websocket/tracker").hasauthority(authoritiesconstants.admin) .antmatchers("/websocket/**").permitall() .antmatchers("/metrics/**").hasauthority(authoritiesconstants.admin) .antmatchers("/health/**").hasauthority(authoritiesconstants.admin) .antmatchers("/trace/**").hasauthority(authoritiesconstants.admin) .antmatchers("/dump/**").hasauthority(authoritiesconstants.admin) .antmatchers("/shutdown/**").hasauthority(authoritiesconstants.admin) .antmatchers("/beans/**").hasauthority(authoritiesconstants.admin) .antmatchers("/info/**").hasauthority(authoritiesconstants.admin) .antmatchers("/autoconfig/**").hasauthority(authoritiesconstants.admin) .antmatchers("/env/**").hasauthority(authoritiesconstants.admin) .antmatchers("/trace/**").hasauthority(authoritiesconstants.admin) .antmatchers("/api-docs/**").hasauthority(authoritiesconstants.admin) .antmatchers("/protected/**").authenticated(); } }
permitall()
authentication オブジェクトが
securitycontext に存在する必要があります。
リーリー
匿名アクセスでは、securitycontext に ## がない場合に備えて、追加のフィルター
anonymousauthenticationfilter がフィルター チェーンに追加され、認証情報として
anonymousauthenticationtoken が設定されます。 #authentication
Object
経由で authuser をチェックするためのセキュリティ構成があります。 リーリー
以上がSpring Securityは、残りのサービスで認証済みユーザーと未認証ユーザーのユーザー情報を取得しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









次のコードがあります: publicSecurityFilterChainsecurityFilterChain(HttpSecurityhttp)throwsException{returnhttp.httpBasic().disable().cors().and().csrf().disable().authorizeHttpRequests().requestMatchers("

Java を使用して SpringSecuritySAML に基づくシングル サインオン システムを開発する方法 はじめに: インターネットの急速な発展に伴い、ますます多くのアプリケーションが開発されています。これらのアプリケーションでは、ユーザー ログインは最も一般的な機能の 1 つです。ただし、エンタープライズ レベルのアプリケーションの場合、ユーザーは複数のシステムにログインする必要があるため、ユーザーのログイン エクスペリエンスが非常に低下します。この問題を解決するために登場したのがシングルサインオンシステム(SingleSign-On、以下SSO)です。単純

GOを使用してアクセストークンの検証を実装しようとしています。しかし、オンラインで見た例では、TOKEN_SECRET を使用して検証しているだけのようです。ただし、私は Javaspring でのプログラミングに慣れているため、TOKEN_SECRET を使用する必要はありません。 jwk-set-uri を指定するだけで、有効性 (自動セキュリティ フィルターなど) がチェックされ、oauth サーバーと通信してこの検証が行われることがわかります。 Goにはoauthサーバーにリクエストを行ってトークンが有効かどうかを確認するライブラリはありませんか? oauth サーバーの userinfo エンドポイント http://localh にリクエストを送信することで、これを手動で実行できることはわかっています。

バックエンド管理システムでは、通常、さまざまなユーザーのインターフェイスへのアクセスを制限するために、アクセス許可制御が必要です。ユーザーに特定の権限がない場合、特定のインターフェイスにアクセスできません。この記事では、waynboot-mall プロジェクトを例として、一般的なバックエンド管理システムがアクセス許可制御フレームワーク SpringSecurity を導入する方法を紹介します。 waynboot-mall プロジェクトアドレス: https://github.com/wayn111/waynboot-mall 1. SpringSecurity とは SpringSecurity は、Spring フレームワークをベースとした、強力かつ柔軟なセキュリティの提供を目的としたオープンソース プロジェクトです。 Java アプリケーションの場合。

Java を使用して SpringSecurityOAuth2 に基づくシングル サインオン システムを開発する方法 はじめに: インターネットの急速な発展に伴い、ユーザーにログインを必要とする Web サイトやアプリケーションがますます増えていますが、ユーザーは Web サイトやアプリケーションごとにログインすることを望んでいません。アカウント番号とパスワード。シングル サインオン システム (SingleSign-On、SSO と呼ばれる) を使用すると、この問題を解決できます。これにより、ユーザーは一度ログインした後は認証を繰り返すことなく、複数の Web サイトやアプリケーションにアクセスできるようになります。この記事で紹介するのは

Springrest サービスを持っており、認証されたユーザーと認証されていないユーザーの両方にそれを使用したいと考えています。ユーザーが認証されている場合は、securitycontextholder.getcontext().getauthentication()からユーザー情報を取得したいと思います。以下に示すように、ouath2 構成で .antmatchers("/app/rest/question/useroperation/list/**").permitall() を使用すると、認証されたユーザーのユーザー情報は取得できますが、認証されたユーザーのユーザー情報は取得できません。表示されます 40

はじめに 今日の相互接続された世界では、RESTful API はアプリケーション間の通信のための重要なメカニズムとなっています。強力なプログラミング言語である Java を使用すると、効率的でスケーラブルで、適切に保守された RESTful API を構築できます。第 1 章: RESTfulAPI の基本 RESTful アーキテクチャの原則とベスト プラクティス Http メソッド、ステータス コード、応答ヘッダー JSON や XML などのデータ形式 第 2 章: RESTfulAPI の設計とモデリング RESTfulAPI の設計原則 リソース モデリングと URI 設計 バージョン管理と HATEOAS 第 3 章: 使用SpringBoot による RESTful API の構築 SpringBoot の概要と構築の開始

Vue.js と Spring Boot は以下を介して対話します。 RESTful API: Vue.js は Axios を使用して非同期 HTTP リクエストを送信し、Spring Boot は RESTful API 実装を提供します。データの受け渡し: データは、リクエスト本文やクエリ パラメーターなどのリクエストと応答を通じて渡されます。リクエストメソッド:GET、POST、PUT、DELETEなどのHTTPリクエストメソッドを使用して動作を指定します。ルーティング: Spring Boot @RequestMapping アノテーションはコントローラーのルーティングを定義し、Vue.js は Vue Router を使用してインターフェイスのルーティングを定義します。状態管理:Vu