这个网站我正在努力一点点。我最近添加了一个API,以便我可以收到通知。要获取这些通知,请输入此网址
现在它只在用户登录时才有效。是否可以在没有用户登录的情况下使其正常工作?我的意思是,因为我得到访问令牌,它不应该是一个问题。实际上我需要它完成,因为我也在开发一个移动应用程序,基本上我在应用程序中使用这个URL来显示通知
谢谢大家
编辑:这是security.yml文件
安全性:
providers:
user_db:
entity: { class: Claroline\CoreBundle\Entity\User }
encoders:
Claroline\CoreBundle\Entity\User: sha512
firewalls:
install:
pattern: ^/install
security: false
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
oauth_token:
pattern: ^/oauth/v2/token
security: false
oauth_authorize:
pattern: ^/oauth/v2/auth
form_login:
check_path: /oauth/v2/auth_login_check
login_path: /oauth/v2/auth_login
default_target_path: /oauth/v2/auth/form
anonymous: true
api:
pattern: ^/api
claro_api: true
#fos_oauth: true
#stateless: true
security: true
main:
pattern: ^/
simple_form:
authenticator: claroline.core_bundle.library.security.external_authenticator
check_path: /login_check
form_login:
success_handler: claroline.authentication_handler
failure_handler: claroline.security.ajax_authentication_failure_handler
anonymous: ~
logout: true
switch_user: { role: ROLE_ADMIN, parameter: _switch }
remember_me:
key: "%secret%"
lifetime: 31536000 # 365 days
path: /
domain: ~
access_decision_manager:
allow_if_all_abstain: false
access_control:
- { path: ^/oauth/v2/auth_login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/api, role: IS_AUTHENTICATED_FULLY }
- { path: ^/login, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/connect, role: IS_AUTHENTICATED_ANONYMOUSLY }
答案 0 :(得分:0)
是的,这是可能的。 Symfony2 documentation描述了为您的应用程序提供多个“防火墙”的可能性。
在您的情况下,您的大多数网站都有一个“正常”的网站,并且您的API有一个“api access”。它们当然可以是不同类型的,并且使用不同的用户提供者(也就是不同的“用户”集)。