Security, Authentication dan Access Controll pada Symfony2 bag-1


Security, Authentication dan Access Controll pada Symfony2 bag-1

Tutorial login pada Symfony/Symfony2, Contoh Login dengan Symfony/Symfony2

Tags : Symfony Login, Login Symfony, Symfony2 Login, Login Symfony2, User Authentication Symfony, User Authentication Symfony2, User Authorization Symfony2, Login dengan Symfony2,Tutorial Symfony,Symfony Tutorial, Belajar Symfony, Tutorial Symfony2,Symfony Tutorial2, Belajar Symfony2, Symfony Framework, Symfony Framework, Symfony PHP Framework, Belajar PHP Framework, PHP Symfony, Symfony PHP, PHP Symfony2, Symfony2 PHP,Indonesian Symfony, Symfony Indonesia, Symfony Bahasa, bahasa Symfony, Indonesian Symfony2, Symfony2 Indonesia, Symfony2 Bahasa, bahasa Symfony, Symfony2 Bahasa Indonesia, bahasa Indonesia, Symfony, Symfony Bandung, php symfony bandung,Symfony dan Symfony2,Login di symfony2.

Pendahuluan

Pada bagian ini kita akan membahas tentang Security, Authentication dan Access Controll pada Symfony2  atau dalam istilah sederhananya adalah belajar Login dengan Symfony2 atau Symfony2 Login tutorial, dimana pada bagian ini kita kan membahas lebih dalam tentang sisi keamanan akses dan management user pada Symfony2.

Konfigurasi keamanan pada Symfony2 terletak pada file security.yml yang terletak pada folder berikut :

/app/config/security.yml

Untuk praktek awal kita coba mengkonfigurasi file /app/config/security.yml supaya bekerja untuk  mengamankan url yang akan digunakan oleh admin /admin/* dan mengecek hak akses User menggunakan User dan Password untuk dapat login.

Standarnya seperti milik saya /app/config/security.yml berisi :

security:
    encoders:
        Symfony\Component\Security\Core\User\User: plaintext

    role_hierarchy:
        ROLE_ADMIN:       ROLE_USER
        ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]

    providers:
        in_memory:
            users:
                user:  { password: userpass, roles: [ ‘ROLE_USER’ ] }
                admin: { password: adminpass, roles: [ ‘ROLE_ADMIN’ ] }

    firewalls:
        dev:
            pattern:  ^/(_(profiler|wdt)|css|images|js)/
            security: false

        login:
            pattern:  ^/demo/secured/login$
            security: false

        secured_area:
            pattern:    ^/demo/secured/
            form_login:
                check_path: /demo/secured/login_check
                login_path: /demo/secured/login
            logout:
                path:   /demo/secured/logout
                target: /demo/
            #anonymous: ~
            #http_basic:
            #    realm: “Secured Demo Area”

    access_control:
        #- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY, requires_channel: https }
        #- { path: ^/_internal, roles: IS_AUTHENTICATED_ANONYMOUSLY, ip: 127.0.0.1 }

Sekarang pada security diatas tambahkan kode – { path: ^/admin, roles: ROLE_ADMIN }  di baris paling bawah dari file tersebut.

perhatikan Masalah indentasi, indentasi yang digunakan adalah 4 spasi BUKAN TAB, setiap File *.yml pasti sangat sensitif dengan indentasi, sebuah spasi yang tidak sesuai atau sebuah karakter tab dapat menimbulkan error, pastikan anda sudah menggantikan  Tab dengan 4 buah spasi, jadi pas tekan tab maka yang muncul 4 buah spasi gitu..

Kembali tentang penambahan kode – { path: ^/admin, roles: ROLE_ADMIN }  di baris paling bawah dari file security.yml  jadi perubahan adalah sebagai berikut :

    access_control:
#- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY, requires_channel: https }
#- { path: ^/_internal, roles: IS_AUTHENTICATED_ANONYMOUSLY, ip: 127.0.0.1 }
– { path: ^/admin, roles: ROLE_ADMIN }

Bila dijelaskan maksud dari security.yml  diatas adalah sebagai berikut :

  1. Kita sudah meregistrasikan  dua user default di sistem user tersebut adalah si user dan si admin
    •             users:
                      user:  { password: userpass, roles: [ ‘ROLE_USER’ ] }
                      admin: { password: adminpass, roles: [ ‘ROLE_ADMIN’ ] }
  2. Url dengan alamat /admin/* diamankan dan hanya admin yang boleh akses.
    • – { path: ^/admin, roles: ROLE_ADMIN }
  3. Dan url selain /admin/* dapat diakses oleh semua user.

Bagaimanakan Security pada Symfony2 itu ? dan bagaimana Authentication dan Authorization nya ?

Bersambung ke :  Security, Authentication dan Access Controll pada Symfony2 bag-2

Selanjutnya

Tags : Symfony Login, Login Symfony, Symfony2 Login, Login Symfony2, User Authentication Symfony, User Authentication Symfony2, User Authorization Symfony2, Login dengan Symfony2,Tutorial Symfony,Symfony Tutorial, Belajar Symfony, Tutorial Symfony2,Symfony Tutorial2, Belajar Symfony2, Symfony Framework, Symfony Framework, Symfony PHP Framework, Belajar PHP Framework, PHP Symfony, Symfony PHP, PHP Symfony2, Symfony2 PHP,Indonesian Symfony, Symfony Indonesia, Symfony Bahasa, bahasa Symfony, Indonesian Symfony2, Symfony2 Indonesia, Symfony2 Bahasa, bahasa Symfony, Symfony2 Bahasa Indonesia, bahasa Indonesia, Symfony, Symfony Bandung, php symfony bandung,Symfony dan Symfony2,Login di symfony2.


5 thoughts on “Security, Authentication dan Access Controll pada Symfony2 bag-1

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s