http://symfony.com/doc/current/cookbook/security/voters.html10 takip ediyorum ve geçerli bir API anahtarı içermeyen ve başlıkta sindirme (http://symfony.com/doc/current/cookbook/security/custom_authentication_provider.html etkilenen istekleri için erişimi reddeden özel bir seçmen yapmaya çalışıyorum) - bir kimlik doğrulama sağlayıcısı oluşturmuyorum çünkü aynı istek için FOSUserBundle sağlayıcısını kullanın).Bellek içi kullanıcı sağlayıcı bir servise nasıl enjekte edilir?
Api anahtarlarını/sırlarımı bellek içi kullanıcı sağlayıcısında saklamak ve muhtemelen daha sonraki bir tarihte özel bir mongodb sağlayıcısına taşımak istiyorum. Bu yüzden kullanıcı sağlayıcıyı seçmenime enjekte etmenin bir yoluna ihtiyacım var. Hizmet kabını zaten enjekte ettim, ancak kullanıcı sağlayıcılara buradan erişilebiliyor mu?
hizmetim tanımı:services:
security.access.api_client_voter:
class: Acme\RestBundle\Security\Authorization\Voter\ApiClientVoter
arguments: [@service_container, %kernel.cache_dir%/security/nonces]
public: false
tags:
- { name: monolog.logger, channel: authentication }
- { name: security.voter }
Benim soru, nasıl bellek sağlayıcı enjekte mı olduğunu
? Yemek kitabındaki WSSE örneği, 'security.providers.in_memory' dizesini değiştirmek için bir yetkili sağlayıcı fabrikası kullanıyor gibi görünüyor, ancak sadece bir seçmen kullanıyorum, bu gerekli mi? Gerekirse, fabrikam nasıl görünecek?
Hem cevapları bu yüzden ilkini kabul ettik benzerdi ilan, ancak bir takma ad kullanarak ekstra bilgi için teşekkürler. –