序章このチュートリアルでは、Springセキュリティ式に焦点を当て、もちろんこれらの式を使用した実際の例に焦点を当てます。複雑な実装(ACLなど)を検討する前に、セキュリティ式をしっかりと把握することが重要です。使用すれば、非常に柔軟で強力になる可能性があります。Securityを使用するには、pom.xmlファイルに次のセクションを含める必要があります。</dependency></dependencies>最新バージョンはここにあります。簡単な注意–この依存関係はSpringセキュリティのみをカバーします。pring-coreとspring-contextを追加することを忘れないでください。構成まず、Javaの構成を見てみましょう。これにより、基本クラスが提供する拡張ポイントのいずれかにフックするオプションがあります。...}もちろん、XML構成も行うことができます。Webセキュリティ式それでは、セキュリティ式を見てみましょう。isFullyAuthenticatedプリンシパル、認証hasPermissionそして、これらのそれぞれについて詳しく見ていきましょう。hasRole、hasAnyRoleこれらの式は、アプリケーション内の特定のURLまたはメソッドへのアクセス制御または承認を定義する役割を果たします。役割でログインしているユーザーに制限ユーザーまたは役割管理者。私たちは持っている必要があります管理者システムにおける役割。XMLファイルでも、次のように記述して同じ構成を実現できます。hasAuthority、hasAnyAuthority春の役割と権限は似ています。主な違いは、ロールには特別なセマンティクスがあることです。」プレフィックスは、ロール関連のメソッドによって自動的に追加されます(まだ存在しない場合)。hasRole(’ADMIN’)に似ています。これは、’ROLE_‘プレフィックスが自動的に追加されるためです。権限を使用することの良い点は、ROLE_プレフィックスをまったく使用する必要がないことです。特定の権限を持つユーザーを定義する簡単な例を次に示します。.authorities("ADMIN");}もちろん、次の権限式を使用できます。...}ご覧のとおり、ここでは役割についてはまったく触れていません。PasswordEncoderBeanが必要です。BCryptPasswordEncoder();}最後に、もちろん、XML構成を使用して同じ機能を実現できます。permitAll、denyAllこれらの2つの注釈も非常に簡単です。サービス内の一部のURLへのアクセスを許可するか、アクセスを拒否する場合があります。例を見てみましょう:....antMatchers("/*").permitAll()...この構成では、すべてのユーザー(匿名とログインの両方)が「/」で始まるページ(たとえば、ホームページ)にアクセスすることを許可します。URLスペース全体へのアクセスを拒否することもできます。....antMatchers("/*").denyAll()...また、XML構成でも同じ構成を実行できます。--></http>4.4。isAnonymous、isRememberMe、isAuthenticated、isFullyAuthenticatedこのサブセクションでは、ユーザーのログインステータスに関連する式に焦点を当てます。私たちのページにログインしなかったユーザーから始めましょう。Java構成で以下を指定することにより、許可されていないすべてのユーザーがメインページにアクセスできるようにします。....antMatchers("/*").anonymous()...XML構成でも同じです。isAuthenticated()メソッドを使用する必要があります。isFullyAuthenticated()の2つの追加式があります。SpringはCookieを使用することで、remember-me機能を有効にしているため、毎回システムにログインする必要はありません。ここでRememberMeの詳細を読むことができます。記憶機能によってのみログインしたユーザーにアクセスを許可するために、これを使用する場合があります。access="isRememberMe()"/></http>最後に、当社のサービスの一部では、ユーザーがすでにログインしている場合でも、ユーザーを再度認証する必要があります。ユーザーが設定や支払い情報を変更したい場合。システムのより機密性の高い領域で手動認証を要求することをお勧めします。isFullyAuthenticated()を指定できます。これは、ユーザーが匿名ユーザーまたは覚えているユーザーでない場合にtrueを返します。現在の許可された(または匿名の)ユーザーを表すprimaryオブジェクトと現在のAuthenticationオブジェクトにそれぞれアクセスできます。プリンシパルを使用して、ユーザーの電子メール、アバター、またはログインしたユーザーがアクセスできるその他のデータを読み込むことができます。認証は、許可された権限とともに、完全な認証オブジェクトに関する情報を提供します。どちらも、次の記事でさらに詳しく説明されています:SpringSecurityでのユーザー情報の取得。SecurityのACLシステムの間を橋渡しすることを目的としており、抽象権限に基づいて個々のドメインオブジェクトに承認制約を指定できます。他の著者が提案した記事を公開するかどうかを主編集者が共同で執筆できるサービスを提供しています。このようなサービスの使用を許可するために、アクセス制御メソッドを使用して次のメソッドを作成する場合があります。...}このメソッドを呼び出すことができるのは許可されたユーザーのみであり、ユーザーはサービスでisEditorのアクセス許可を持っている必要があります。アプリケーションコンテキストでPermissionEvaluatorを明示的に構成することも忘れないでください。PermissionEvaluator。Java構成でもこれを行うことができます。結論このチュートリアルは、SpringSecurityExpressionsの包括的な紹介とガイドです。ここで説明するすべての例は、GitHubプロジェクトで利用できます。Joseモバイルバージョンに。