簡體   English   中英

Symfony2 rest api安全配置(嘗試了解)

[英]Symfony2 rest api security configuration (Trying to understand)

我正在使用Symfony2(FOSRestBundle,FOSOauthBundle,JMSBundle)開發一個REST API,但我不了解(也找不到)我應該如何設置我的angularjs應用程序來訪問我的api資源。 我對安全性部分感到困惑,並且有很多疑問。

1-我准備了oauth客戶端。 因為公開了角度代碼,所以我很確定不能在代碼中添加密碼和客戶端ID進行身份驗證,所以我將其堆疊。 H

2-嘗試訪問資源時出現錯誤(沒有“ Access-Control-Allow-Origin”錯誤)。 我如何才能簡單地允許我的應用訪問資源(CORS!nelmio / cors-bundle?),但是我對我的應用的oauth和CORS授權的作用感到困惑。

任何幫助將不勝感激。 謝謝

  1. 您可以公開。 這不是完全授權。 它僅是客戶端身份驗證,而不是用戶。

  2. NelmioCorsBundle是一個不錯的選擇。 您需要這樣的配置:

     nelmio_cors: defaults: allow_credentials: false allow_origin: [] allow_headers: [] allow_methods: [] expose_headers: [] max_age: 0 hosts: [] paths: '^/': allow_origin: ['*'] allow_headers: ['origin', 'x-requested-with', 'content-type', 'authorization'] allow_methods: ['POST', 'PUT', 'GET', 'DELETE', 'OPTIONS'] max_age: 0 

allow_origin ,您應該將其設置為my.frontend.domain.com 這將為您的AngularJS前端打開您的API。 如果您要構建API即服務(向所有人開放),則對所有來源“ *”開放。

CORS不是授權。 將其視為防火牆。 比您仍然需要授權(OAuth)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM