gpt4 book ai didi

symfony - 访问oauth2服务器中的/api方法

转载 作者:行者123 更新时间:2023-12-03 02:19:58 24 4
gpt4 key购买 nike

我正在尝试创建基于 FOSOauthServerBundleFOSRestBundleFOSUserBundle 的 oauth2 服务器。我创建了一个演示应用程序来测试我的 oauth-server,但它无法通过 GET 请求接收数据

(received 401 error ' error="access_denied", error_description="OAuth2 authentication required" '),

尽管用户已通过身份验证并且客户端正确收到了访问 token 。

我应该如何实现 api Controller 以便 oauth2 执行身份验证过程?

另外,我想看看基于这些 bundle 的实际工作 oauth 服务器示例,以便我能够在其上检查我的应用程序。

我的 security.yml:

jms_security_extra:
secure_all_services: false
expressions: true

security:
acl:
connection: default

role_hierarchy:
ROLE_ADMIN: ROLE_USER
ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]

providers:
in_memory:
memory:
users:
user: { password: userpass, roles: [ 'ROLE_USER' ] }
admin: { password: adminpass, roles: [ 'ROLE_ADMIN' ] }
fos_userbundle:
id: fos_user.user_provider.username

encoders:
FOS\UserBundle\Model\UserInterface: sha512
Symfony\Component\Security\Core\User\User: plaintext

firewalls:
api:
pattern: ^/api
fos_oauth: true
stateless: true

oauth_authorize:
pattern: ^/oauth/v2/auth
form_login:
provider: fos_userbundle
check_path: /oauth/v2/auth_login_check
login_path: /oauth/v2/auth_login
use_referer: true
anonymous: true

oauth_token:
pattern: ^/oauth/v2/token
security: false

secured_area:
pattern: ^/
anonymous: ~
form_login:
provider: fos_userbundle
check_path: /login_check
login_path: /login
always_use_default_target_path: true
default_target_path: /

access_control:
- { path: ^/oauth/v2/auth_login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/oauth/v2/auth, role: ROLE_USER }
- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY}
- { path: ^/, roles: ROLE_USER }
- { path: ^/api, roles: [ IS_AUTHENTICATED_FULLY ] }

谢谢。

最佳答案

提交答案,以便结束 Unresolved 问题。

由于请求不包含访问 token 而导致访问被拒绝。请参阅标题为“创建客户端和使用”部分的文档。

https://github.com/FriendsOfSymfony/FOSOAuthServerBundle/blob/master/Resources/doc/index.md

关于symfony - 访问oauth2服务器中的/api方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14314964/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com