問題タブ [fosoauthserverbundle]
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.
symfony - プロバイダーを oauth トークンに設定する方法
[ FOSOauthServerBudle を使用して] OAuth をセットアップしました。パスワードタイプのフローの設定に取り組んでいます。
クライアント型でアクセストークンを取得できますが、パスワード型を使用するとエラーになります。
エラー: オブジェクト以外でのメンバー関数 loadUserByUsername() の呼び出し
すなわち
$user = $this->userProvider->loadUserByUsername($username); <-OAuthStorage.php 161行目
/oauth/v2/token?client_id=[CLIENTID]&client_secret=[CLIENTSECRET]&grant_type=パスワード&ユーザー名=テスト&パスワード=テスト
したがって、OAuthStorage に設定されたユーザー プロバイダーはありません。これにプロバイダーを設定する方法に関する適切なドキュメントが見つかりません。
私のセキュリティ設定
どう思いますか。何か案は?
php - PHP: FOSOAuthServerBundle によって生成された access_token を使用するには?
トークンベースの認証で REST API アプリケーションを作成しようとしています。通話中
/ouath2/v2/token?client_id=CLIENT_ID&client_secret=CLIENT_SECRET&grant_type=client_credentials
access_token を返します。問題ありません。
ただし、次の API リクエスト サーバーでそれを使用しようとすると、「このリソースにアクセスするには完全な認証が必要です」という例外が発生します。メッセージ。access_token を使用するいくつかの方法を試しました: クエリ ( /api/action?access_token=ACCESS_TOKEN
) 内、ヘッダー ( Authorization: Bearer ACCESS_TOKEN
) 内ですが、すべてうまくいきません。
構成の何が問題なのか教えていただけますか?
FOSOAuthServerBundle && FOSUserBundle を使用した config.yml の一部:
security.yml:
php - FOSOAuthServerBundle とカスタム認証プロバイダー
編集:エラーが見つかりました。次のようなコードの小さな平和が\vendor\friendsofsymfony\oauth-server-bundle\FOS\OAuthServerBundle\Resources\config\oauth.xml
あります。
そのため、config.yml のサービス定義が間違っているか、単なるタイプミスの場合 (元のドキュメントから)
あなたは迷っています。エラーも警告もありません。ユーザー プロバイダーは単に null です。とにかくこの投稿を読んでくれてありがとう。その件については github で議論します。
--
FOSOAuthServerBundle を使用して OAuth2 サーバーを構築しています。grant_type=password で access_token をリクエストし、カスタム UserProvider で form_login を使用する限り、すべてが稼働しています。
私の security.yml は次のようになります。
カスタム ユーザー プロバイダーは私のニーズには不十分だったので、このチュートリアルに従ってカスタム認証プロバイダーを実装しました。標準のログインフォームでログインしようとすると、これも機能します。security.yml を次のように変更しました
webservice-login は SecurityFactory から取得されます
アクセストークンを取得しようとすると、次のようなエラーが表示されます: エラー:
したがって、基本的に UserProvider は常に null です。
私がここで間違っていることを誰か知っていますか?私は完全に立ち往生しており、どんな助けも大歓迎です!
php - FOSOauthServerBundle __constructor エラー
私はしばらくの間 Symfony 2 で RESTful API に取り組んできました。新しいエンティティ クラスを作成した昨夜までは、すべて問題ないように見えました。アクセス トークンを要求しようとすると、エラーが発生します。次のエラー メッセージが表示されます。
助けてください。ドキュメントに記載されているように、私の s2 プロジェクトでは FOSOauthServerBundle を使用しています。クライアントでコンストラクターをオーバーライドすると、致命的なエラーがスローされます: コンストラクターを呼び出せません。
編集:
注: 明確にするために、更新されたデータベースに基づいて新しいエンティティを生成するまで、すべてが正常に機能していました。composer update を使用して、プロジェクトの依存関係の更新も行いました。
AccessToken.php
AuthCode.php
クライアント.php
RefreshToken.php
mobile - モバイルアプリと OAuth の統合
現在、OAuth in out エコシステムの設計に取り組んでいます。もちろん、モバイルアプリがユーザー認証情報グラントタイプを使用して OAuth サーバーで認証し、さらなるワークフローのトークンを取得するという考えです。一方、保護されたリソース サーバーは、同じ OAuth サーバーでトークン情報を検証し、それに応じて応答します。
すべて明らかですが、懸念事項が 1 つあります。それが機能するようになりました。コードにコンパイルされたクライアント シークレットを使用してアプリを配信する必要があります。これにより、大きなセキュリティ ホールが開かれます。それを回避する方法はありますか、それとも問題ですか?
ありがとう、
symfony - FOSOAuthServerBundle によるスコープ検証
Symfony 2.7 で FOSOAuthServerBundle を使用しています。
スコープを使用して、2 種類のクライアントを区別したいと考えています。
scope_default
: クライアントは認証されたユーザー情報にのみアクセスできますscope_master
: クライアントはすべてを読み取ることができます
エンティティにプロパティreachable_scopes
を追加しました。Client
許可されていない場合、クライアントが要求しないようにするにはscope_master
どうすればよいですか?
ありがとうございました !
php - ROLES と FOSOAuthServerBundle スコープの扱い方
FOSOAuthServerBundle を使用してユーザーを認証する基本的な API があります。ユーザーは、ROLE_USER および ROLE_ADMIN ロールを持つことができます。FOSOAuthServerBundle docs に基づいて、デフォルトの動作はスコープをロールとして使用することであるため、通常のユーザーがいる場合はバンドルがscope: user
応答で返され、管理者ユーザーの場合はscope: admin
. しかし、それはこのように機能していません。バンドルは、supported_scopes
エントリで構成されているものをすべて返します。以下は私のconfig.yml
です。
の私のaccess_control
セクションsecurity.yml
は空で、私のfirewalls
セクションは以下のとおりです。
この方法ではuser admin
、ユーザーが ROLE_ADMIN ロールを持っていなくても、バンドルは常にスコープとして返されます。
私は何が欠けていますか?ユーザー ロールはトークン スコープに関連付けられていませんか? ユーザーが管理者かどうかを知る良い方法はありますか?
symfony - 更新呼び出しによって古いアクセス トークンを無効にすべきではありませんか?
OAuth アクセス トークンを更新するA
と、新しいアクセス トークンが取得されますB
。でもA
有効なのでまだまだ使えます。
更新操作で古いアクセス トークンを無効にすべきではありませんか? そうでない場合、それが「設計による」ものである場合、誰かがその理由について詳細を教えてもらえますか?
注: FOSOAuthServerBundle バンドルで Symfony を使用します。