Advertisement
Guest User

Untitled

a guest
Sep 9th, 2017
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.69 KB | None | 0 0
  1. <?php
  2. namespace Mikolabs\AppBundle\DataFixture\ORM;
  3.  
  4. use Doctrine\Common\DataFixtures\FixtureInterface;
  5. use Mikolabs\AppBundle\Entity\Role;
  6. use Mikolabs\AppBundle\Entity\User;
  7. use Symfony\Component\Security\Core\Encoder\MessageDigestPasswordEncoder;
  8. use Symfony\Component\Security\Core\Encoder\EncoderFactory;
  9.  
  10. class FixtureLoader implements FixtureInterface
  11. {
  12.     public function load($manager)
  13.     {
  14.         // create the ROLE_ADMIN role
  15.         $role = new Role();
  16.         $role->setName('ROLE_USER');
  17.        
  18.         $manager->persist($role);
  19.         $manager->flush();
  20.  
  21.  
  22.         $user = new User();      
  23.         $user->setUsername('Mikolabs');
  24.         $user->setSalt(md5(time()));
  25.         // encode and set the password for the user,
  26.         // these settings match our config
  27.         $encoder = new MessageDigestPasswordEncoder('sha512', true, 10);
  28.         $password = $encoder->encodePassword('admin', $user->getSalt());
  29.         $user->setPassword($password);
  30.  
  31.         $user->getUserRoles()->add($role);
  32.  
  33.         $manager->persist($user);
  34.  
  35.  
  36.  
  37.  
  38.     }
  39. }
  40. ?>
  41.  
  42. //Security.yml
  43.  
  44. security:
  45.   encoders:
  46.       Mikolabs\AppBundle\Entity\User:
  47.           algorithm: sha512
  48.           encode-as-base64: true
  49.           iterations: 10
  50.  
  51.   providers:
  52.       main:
  53.           entity: { class: Mikolabs\AppBundle\Entity\User, property: username }
  54.  
  55.   firewalls:
  56.       main:
  57.           pattern: /.*
  58.           form_login:
  59.               check_path: /login_check
  60.               login_path: /login
  61.           logout: true
  62.           security: true
  63.           anonymous: true
  64.  
  65.   access_control:
  66.       - { path: /panel, role: ROLE_ADMIN }
  67.       - { path: /.*, role: IS_AUTHENTICATED_ANONYMOUSLY }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement