Puncte:0

Cum putem restricționa accesul la fișierele din folderul public de la utilizatori anonimi?

drapel us

În proiectul meu, folosesc Drupal fără cap cu .Net pe front-end.

Trebuie să folosesc un sistem de fișiere criptat pentru cerințele proiectului. Criptez fișierele și apoi decriptez folosind tokenul oauth și le stochez în folderul public, astfel încât aplicația .Net să poată obține fișierul ca răspuns API. Dar problema începe aici. Deoarece aceste fișiere se află în folderul public, dacă un utilizator se conectează la site și apoi copiază această adresă URL și o lipește într-un alt browser, poate vizualiza cu ușurință acel fișier. Dar aceasta nu este cerința dorită și creează o breșă majoră de securitate. Deci întrebarea mea este cum putem restricționa fișierele publice să nu fie accesate de utilizatori anonimi?

drapel cn
_Cum putem restricționa accesul fișierelor publice de către utilizatori anonimi?_ Nu poți, oricum nu la capătul Drupal. Configurarea standard a serverului web pentru Drupal va servi fișiere statice dacă acestea există și va ocoli Drupal (din motive evidente de performanță). Drupal are sistemul de fișiere privat exact pentru acest caz de utilizare, dar va trebui să autentificați cererile de la front-end la Drupal, pentru a-l utiliza. Puteți face acest lucru cu ușurință conectându-vă prin punctul final REST și folosind informațiile despre sesiune/token pe care le primiți de la acestea pentru solicitările ulterioare.
Puncte:1
drapel us

Drupal oferă un mod de sistem de fișiere privat pentru fișiere ( https://www.drupal.org/docs/8/core/modules/file/overview#s-managing-file-locations-and-access ) care permite restricționarea accesului prin hook_file_download ( https://api.drupal.org/api/drupal/core%21lib%21Drupal%21Core%21File%21file.api.php/function/hook_file_download/8.9.x )

Dacă nu puteți utiliza modul sistem de fișiere privat pentru stocare, atunci va trebui să restricționați accesul pe serverul dvs. web, cum ar fi nginx.

Jewel Chakraborty avatar
drapel us
Am încercat și cu sisteme de fișiere private, dar nu am reușit să obțin răspunsul de la .Net, deoarece fișierele sunt private. Există vreo modalitate de a obține aceste fișiere ca răspuns de la .Net end? Pentru mai multe informații, consultați acest link o dată - „https://drupal.stackexchange.com/questions/307514/how-can-the-custom-files-copied-by-code-to-the-private-directory-be -accessible-t/307599#307599"
Jewel Chakraborty avatar
drapel us
Am încercat deja să restricționez accesul pe serverul web, dar și în acest caz, trebuie să ocol autentificarea de la .Net end pentru a obține răspunsuri API. Din nou, va trebui să trimit numele de utilizator și parola adăugate cu url pentru a ocoli această autentificare la nivel de server. Hackerul poate obține acea parolă pentru numele de utilizator inspectând site-ul web, ceea ce duce din nou la o încălcare a securității.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.