問題タブ [spring-oauth2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
808 参照

spring-security - @Post フィルターは、acl および oauth の春のセキュリティを使用してメソッドが返すコレクションをフィルター処理していません

Oauth セキュリティと acl spring セキュリティの両方を統合しようとしています。

以下の oauth 式ハンドラーの代わりに

設定に従って acl 式ハンドラーを使用しました

http://krams915.blogspot.in/2011/01/spring-security-3-full-acl-tutorial_30.htmlで説明されているように。

テーブルに acl エントリを作成できますが、@PostFilter を使用している間、メソッドによって返されるオブジェクトは acl 権限を使用してフィルタリングされません。

誰か助けてくれませんか

0 投票する
0 に答える
890 参照

java - Spring OAuth + Boot で invalid_client をキャッチする方法

クライアント認証の成功やユーザー認証の成功/失敗など、いくつかのイベントを Event Publisher に発行できます。ただし、クライアントの資格情報が間違っている場合、イベントは発行されません。

ログは次のとおりです。

DEBUG::org.springframework.security.oauth2.provider.client.ClientCredentialsTokenEndpointFilter::doFilter::Request is to process authentication DEBUG::...ClientCredentialsTokenEndpointFilter::unsuccessfulAuthentication::Authentication request failed: org.springframework.security.authentication.BadCredentialsException: Bad credentials DEBUG::...ClientCredentialsTokenEndpointFilter::unsuccessfulAuthentication::Updated SecurityContextHolder to contain null Authentication DEBUG::...ClientCredentialsTokenEndpointFilter::unsuccessfulAuthentication::Delegating to authentication failure handler org.springframework.security.oauth2.provider.client.ClientCredentialsTokenEndpointFilter$1@734b2ca6 DEBUG::org.springframework.security.oauth2.provider.error.DefaultOAuth2ExceptionRenderer::writeWithMessageConverters::Written [error="invalid_client", error_description="Bad client credentials"] as "application/json" using [org.springframework.http.converter.json.MappingJackson2HttpMessageConverter@37536106]

spring-security-oauth2 の2.0.8-RELEASEでは、(AuthorizationServerConfigurerAdapter を介して) ClientCredentialsTokenEndpointFilter にカスタムの失敗ハンドラーを設定する方法がないようです。

また、インターセプターを追加してもうまくいかないようです。

それとも私のやり方が間違っているのでしょうか...

Spring Boot+OAuth2 ですべての認証イベントをキャッチできた人はいますか?

0 投票する
0 に答える
9126 参照

java - Springセキュリティoauth2リソースサーバーが承認サーバーの呼び出しに失敗しました

クライアント、リソース、および認証サーバーが 3 つの異なる場所で実行されている oauth2 環境をセットアップしようとしています。ログインは正常に行われます。しかし、クライアント サーバー経由でリソースにアクセスしようとすると、エラーが発生します。一番下にエラーを定義しました。

以下は私のリソースサーバーコードです

リソース サーバー コード

OAuth2ResourceConfig

セキュリティ構成

MethodSecurityConfig

ResourceServerWebConfig

そして、以下は私の認証サーバーの設定です

Oauth2Config

そのため、トークンの検証にリモート トークン サービスを使用しています。リソース サーバーへのリクエストが処理されません。デバッグ後、check_token エンドポイントが 403 禁止を返していることがわかりました。次のクライアント サーバー コードを使用しています。 https://github.com/shamaritesh/spring-angularjs-oauth2-sample/tree/master/sonc-ng-ui

リソース サーバーまたは認証サーバーにエラー ログが表示されません。クライアントサーバーから次のエラーが表示されます。

アップデート

偶然にも、Spring 対応のリソース サーバーがチェック トークン エンドポイント (oauth/check_token) を呼び出そうとすると、403 禁止エラーが発生します。郵便配達員を介して同じ電話をかけると、成功しています。

ポストマンコールの詳細::
http://ip:port/rivigo-auth/oauth/check_token?token=6cdf8cb7-755f-4ddc-9ded-8bd1f9d4d386

承認 - 基本 cGlsb3QtY2xpZW50OnBpbG90

コンテンツ タイプ - application/x-www-form-urlencoded

ノート。ポスト マンに追加されたヘッダーとパラメーターは、デバッグ ポインターをリソース サーバーに置き、関連する詳細を処理することによってフェッチされます。したがって、リソース サーバーには正しいデータがありますが、Spring が適切な形式でパラメーターを渡していないようです。

0 投票する
1 に答える
190 参照

java - Spring - Oauth2 クライアント サーバー。NoSuchMethodError: javax.servlet.ServletContext.getVirtualServerName() Tomcat での実行中

oauth2でクライアントサーバーを開発しようとしていました。リソース サーバーと認証サーバーは既に配置されています。クライアントサーバーをSSOとして有効にするには、私のセキュリティ構成は次のとおりです

OAuth2SsoConfigurerAdapter の場合、pom に以下を含めると、Tomcat にデプロイしようとするとエラーが発生します。

例外:

0 投票する
1 に答える
540 参照

spring-mvc - Spring OAuth - タイプ PlatformTransactionManager の適格な Bean がありません

BASIC 認証を置き換えることで、以前のアプリケーション (REST サービス) に OAuth2 を正常に統合できました。

その後、次の例外が発生しました。

Bean を削除すると、transactionManagerDB2正常に動作し始めました。2 つの接続されたデータベースがあるため、2 つのトランザクション マネージャーがあります。

を持っているのでInMemoryTokenStore、 の必要性に興味がありTransactionManagerます。(そして、Oauth がデフォルト名で「transactionManager」を取得できない理由)

configureGlobal(AuthenticationManagerBuilder auth){}どういうわけか、以前は正常に機能していたが、現在は単一の TransactionManager でCustomeUserDetailService を構成しました 。

Sparklr-boot Spring Boot アプリケーションを使用して、OAuth をアプリケーションに統合しました。(このようなシンプルでわかりやすい例を作成してくれたDave Syerに感謝します)

私は使用しています:

  • 春 4.2.5
  • 春のセキュリティ 4.0.4
  • 春 OAuth 2.0.9
  • (スプリングブーツなし)
0 投票する
1 に答える
3849 参照

spring - Spring OAuth2.0 - OAuth2.0 クライアントを動的に登録する

Spring セキュリティを使用して OAuth2.0 承認サーバーのセットアップに取り組んでいます。OAuth2.0 承認サーバーが起動して実行された後に、OAuth2.0 クライアントを動的に登録する方法があるかどうかを知りたいですか?

AuthorizationServerConfigurerAdapter基本的に、クライアントの詳細をメモリに追加するためにconfigureメソッドを拡張およびオーバーライドすることにより、OAuth2.0サーバーの構成中にクライアントを登録できることを私は知っています。ただし、この方法ではクライアントが事前登録されているため、クライアントの詳細を動的に追加する方法を知りたいです。

@Override public void configure(ClientDetailsServiceConfigurer clients) throws Exception { // @formatter:off clients.inMemory() .withClient(CLIENT_ID) .secret(CLIENT_SECRET) .authorizedGrantTypes("authorization_code", "implicit") .redirectUris("http://junk/") .scopes("cn") .accessTokenValiditySeconds(600); // @formatter:on }