TL; DR: İstemci tarafı izinleriyle erişimi kısıtlayın veya uygulamaları ayrı dosyalara bölün ve her dosyaya erişimi kısıtlayın.İstemci tarafı ReactJS izinlerini uygulayın veya uygulamaları birden çok dosyaya bölün.
Çok sayıda küçük istemci tarafı uygulaması oluşturmak için ReactJS (React Router ile birlikte) kullanıyorum. Aradaki işçiler tarafından, aralarında çok fazla değişmeden kullanılacaktır.
Symfony2'yi arka uç olarak kullanıyorum. Sunucu tarafından oluşturulmuş uygulamalar/sayfalar için önceden ayarlanmış izinlerim var. (Uygulamalar Tepki ait)
Şimdiye kadar tüm kullanıcılar aynı izinlere gerekli, bu yüzden ana vermektedir sayfaya sadece kısıtlayan erişimi olan uzak kazanılmış ettik ki, çok dosyası (ve API app.js elbette). Ancak şimdi bu uygulamalardan bazılarını belirli kullanıcılardan gizleyebilmem gerekiyor.
- ayrı paketlenmiş dosyalar halinde uygulamalar yukarı Tepki ve sadece uygun sayfa hizmeti Gözat Symfony2'nin sunucu tarafı yaklaşımdır
- bölünmüş tamamlayan bir istemci tarafı izinleri sistemi uygulamak: Onu görmek gibi ben iki seçenek var doğru izinleri sahipleri
Seçenek 1 projeye karmaşıklık çok eklersiniz ve öğreticiler yolunda çok var orada değil gibi ben, ben bile başlayacaktı nasıl hiçbir fikrim yok. (Bu arada, kullanıcıların istemci tarafı kodunu denetleyip koruma alanlarına girip girmedikleri önemli değil, çünkü temel veriler API aracılığıyla korunur.) Ancak bu, tek bir kod tabanı ve daha iyi anlamına gelir. önbelleğe alma, React gibi tüm satıcı kodları yalnızca bir kez indirilebileceğinden.
Seçenek 2, bir istemci tarafı izin sistemi oluşturmak zorunda kalmamak anlamına gelebilirdi, her uygulama daha basit ve mevcut sunucu tarafı izinler sistemime düzgün bir şekilde sığardı. Bununla birlikte, çok daha az esnek olur ve birçok dosya nedeniyle aynı satıcı kodunu birden çok kez sunmak anlamına gelir.
Hangi yaklaşımı kullanmalıyım?
Bir kullanıcı için istemci kodunu "kesmek" ve görememesi gereken bir sayfa görmek gerçekten önemli değil, çünkü bu uç noktadaki herhangi bir veriyi sunucudan alamayacak. – whitep4nther
Bu doğru, söylediğim şey buydu, ancak bu soruyla gerçekten alakalı değil. Sadece geldiği zaman bunu açıklığa kavuşturmak istedim. – user128216
Sadece uygulamanın bu kısmına erişimi kısıtlamak istiyorsanız, sadece kullanıcı erişim düzeyine bağlı olarak bir Bağlantı koymayın (bu bir izin sistemi değildir, sadece bir hde/show).Dahası, hatta daha da kötüye erişimi kısıtlamak isterseniz, her izin seviyesi için birden fazla grup oluşturduğunuzu söylediğiniz gibi, ya da DOM'yi tembel bir şekilde getirdiğinizde biraz daha karmaşık olacaktır. İlk çözümde yanlış bir şey görmüyorum; – whitep4nther