問題タブ [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.
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 権限を使用してフィルタリングされません。
誰か助けてくれませんか
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 ですべての認証イベントをキャッチできた人はいますか?
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 が適切な形式でパラメーターを渡していないようです。
java - Spring - Oauth2 クライアント サーバー。NoSuchMethodError: javax.servlet.ServletContext.getVirtualServerName() Tomcat での実行中
oauth2でクライアントサーバーを開発しようとしていました。リソース サーバーと認証サーバーは既に配置されています。クライアントサーバーをSSOとして有効にするには、私のセキュリティ構成は次のとおりです
OAuth2SsoConfigurerAdapter の場合、pom に以下を含めると、Tomcat にデプロイしようとするとエラーが発生します。
例外:
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
- (スプリングブーツなし)
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
}