我有肥皂來驗證用戶身份沒有數據庫(SOAP)PHP Symfony2的自定義驗證
<?php
$client = new SoapClient('http://mysite/code/soap.wsdl');
$user = $client->login('username','password');
if(isset($user['IdAccount']) && ($user['IdAccount'] > 0))
echo 'Logon OK';
else
echo 'Logon Fail!';
我想在Symfony2中使用無需數據庫,只在內存...
我試圖執行一個Custom UserProvider,但我沒有使它工作所需的所有數據...
class WebserviceUserProvider implements UserProviderInterface
{
public function loadUserByUsername($username)
{
$client = new SoapClient('http://mysite/code/soap.wsdl');
$user = $client->login($username, PASSWORD????);
if (isset($user['IdAccount']) && ($user['IdAccount'] > 0))
return new WebserviceUser($username, PASSWORD????, SALT???, ROLES????);
throw new UsernameNotFoundException(sprintf('Username "%s" does not exist.', $username)
);
}
我不能改變肥皂
抱歉我的英文不好! :(
要做到這一點正確的方式,你需要你自己的自定義身份驗證提供程序。http://symfony.com/doc/currentbook/security/custom_authentication_provider.html。不容易的事情來實現。教程後退效果最好。但我強烈建議尋找一個SOAP認證包。我確定有一些好的。 – Cerad 2014-09-06 20:15:36