Yii Framework Forum: Seriously Help me,, ga ngerti cara pake srbac / rights - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Seriously Help me,, ga ngerti cara pake srbac / rights Rate Topic: ***** 1 Votes

#1 User is offline   ressaince 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 163
  • Joined: 10-January 11
  • Location:Jakarta

Posted 16 February 2011 - 03:12 AM

buat masta masta yang udah pernah make extension srbac atau rights.
tolong ajarin dong dari awal banget..
sesudah nginstal saya ga ngerti pakenya,maklum masih newbie di yii.

saya udah nginstal,,cuma ga ngerti terutama saat kita add task atau operation..

juga bagaimana menambah controller yang ingin diatur,misalnya saya punya BoomController,bagaimana memanage action-action BoomController


soalnya kalo dari blog demo kan udah jadi tuh,jadi ga ngerti,,

step by stepnya bagaimana bila ingin membuat user x tidak dapat create di BoomController..
dsbg..

udah mepet nih tapi pengetahuanku ttg srbac masih kurang,,,


hehehe plis masta masta mari kita saling membantu
:lol: :lol:
take it or leave it
0

#2 User is offline   ibiz4 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 151
  • Joined: 26-November 10
  • Location:Indonesia

Posted 16 February 2011 - 07:23 PM

BoomController:
public function accessRules()
	{
	return array(
		array('deny',
			'actions'=>array('create'),
			'users'=>array('x'),
		),

kayak gitu bisa ga
WYSIWYG
(What Yii Serve is What You Get)
0

#3 User is offline   ressaince 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 163
  • Joined: 10-January 11
  • Location:Jakarta

Posted 16 February 2011 - 07:28 PM

kalo kayak gitu hardcode dong namanya kang..
ga flexible.
kalo user c juga ga boleh create berarti saya harus nambahin

array('deny',
                        'actions'=>array('create'),
                        'users'=>array('c'),
                ),



maksud saya tuh melalui srbac itu...



ayo-ayo master=master help me
take it or leave it
0

#4 User is offline   ibiz4 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 151
  • Joined: 26-November 10
  • Location:Indonesia

Posted 16 February 2011 - 08:32 PM

Model user:
static private $_editors;
public function scopes()
    {
        return array(
            'editor'=>array(
                'condition'=>'userlevel=2',
            ),
        );
    }

/**
* Return editors.
* @return array editors names
*/	
public static function getEditors() {
	if (!self::$_editors) {
		$editors = User::model()->editor()->findAll();
		$return_name = array();
		foreach ($editors as $editor)
			array_push($return_name,$editor->username);
		self::$_editors = $return_name;
	}
	return self::$_editors;
}



BoomController:
public function accessRules()
        {
        return array(
                array('deny',
                        'actions'=>array('create'),
                        'users'=>User::getEditors(),
                ),

WYSIWYG
(What Yii Serve is What You Get)
0

#5 User is offline   -=YiieRz=- 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 177
  • Joined: 27-October 10
  • Location:Jakarta

Posted 16 February 2011 - 11:48 PM

View Postressaince, on 16 February 2011 - 03:12 AM, said:

buat masta masta yang udah pernah make extension srbac atau rights.
tolong ajarin dong dari awal banget..
sesudah nginstal saya ga ngerti pakenya,maklum masih newbie di yii.

saya udah nginstal,,cuma ga ngerti terutama saat kita add task atau operation..

juga bagaimana menambah controller yang ingin diatur,misalnya saya punya BoomController,bagaimana memanage action-action BoomController


soalnya kalo dari blog demo kan udah jadi tuh,jadi ga ngerti,,

step by stepnya bagaimana bila ingin membuat user x tidak dapat create di BoomController..
dsbg..

udah mepet nih tapi pengetahuanku ttg srbac masih kurang,,,


hehehe plis masta masta mari kita saling membantu
:lol: :lol:


rights, sebetulnya ada docnya, tapi agak membingungkan juga kalo gak dicoba2 :)
setelah dicoba2 sih gini.

kalau sudah selesai install, tinggal kita tambahkan saja di controllernya :
	public function filters()
	{
		return array(
			//'accessControl', // perform access control for CRUD operations
			'rights',
		);
	}


untuk penjelasan INTERFACE rightsnya, seperti ini :

MENU INTERFACE RIGHTS
# Assignments
# Permissions
# Roles
# Tasks
# Operations

menurut ane sih filter yg dibuat oleh ext rights itu adalah matrix, jadi cukup mudah untuk mengikuti permintaan
user jika kita mendesign webapp yang melibatkan banyak user dan permission

btw ini just share, jadi kalo ada salah tolong di review :

Operations : adalah daftar dari controller or modul yang akan diatur, cara buatnya ada 2 cara :
1. create langsung di menu operations
2. generate dari menu Assignments

Task : matrix 1, penggolongan operations berdasarkan tugas, contoh :
# ItemAdministrator
# UserAdministrator dsb

Roles : matrix 2, penggolongan operations dan task berdasarkan Peraturan, biasanya lebih mengarah ke Departement Function

Permissions : Summary dari Operations, Task dan Roles, fungsi generatenya cukup berguna sekali untuk menentukan mana saja yang harus kita filter

Assignments : Pembagian tugas setiap user berdasarkan Roles, Task dan Operations

wew susah juga neh buat tutorialnya untuk rights, tapi kira2 begini lah dari saya, buat masta2 tolong share juga dunk. thanks
belajar itu modal utama, tanpa percobaan itu tak akan berhasil. berdoa itu membuat kita percaya diri. YiieRz-SdgBlajar
www.yiiframework.com
0

#6 User is offline   ressaince 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 163
  • Joined: 10-January 11
  • Location:Jakarta

Posted 17 February 2011 - 08:54 PM

makasih bro..
nanti tak coba deh..
tpi bro klo rights guinya kurang ya untuk assign role ke user...
nanti saya coba bro...

ayo monggo share lagi semuanya...
buat nambah-nambah ilmu bro,,,
mari silahkan masta2
take it or leave it
0

#7 User is offline   Shy Evsa 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 4
  • Joined: 03-September 10

Posted 02 March 2011 - 03:28 AM

Aku g pake SRBAC sie tapi langsung pake RBAC

bikin aturan na di accessRule nya controller jadi gini

public function accessRules()
	{
		return array(
			array('allow',
				'actions'=>array('create','update','delete'),
				'roles'=>array('admin'),
			),
			array('allow', 
				'actions'=>array('index','view','admin'),
				'roles'=>array('user'),
			),			
			array('deny',  // deny all users
				'users'=>array('*'),
			),
		);
	}


Silahkan di coba. nanti sharing balik lagi...

klo penggunaan di view sepertinya makenya spt ini

<?php if(Yii::app()->user->checkAccess('commentor')): ?>
 
    <h3>Leave a Comment</h3>
            .........//your /commnet/_form here
<?php endif; ?>

0

#8 User is offline   mintaraga 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 21
  • Joined: 16-April 10
  • Location:Tanggerang, Banten

Posted 03 March 2011 - 02:46 PM

mau menambahkan and mungkin menjelaskan dengan cara yang berbeda nih gan.

Operation itu merepresentasikan atau mencerminkan Controler dan action action yang ada di dalamnya.
Operation adalah komponen terkecil dari sesuatu yang bisa kita atur hak aksesnya.

Task itu merepresentasikan gabungan atau kumpulan Operation yang ada atau pun yang telah kita buat menjadi 1 kelompok yang kita sebut dengan Task.

Role itu merepresentasikan dari gabungan atau kumpulan Task yang ada ataupun yang telah kita buat menjadi 1 kelompok yang kita sebut dengan Role.
Role itu bisa dibilang misal dalam OS windows itu mirip dengan User Group atau Account Type.
Secara default ada 2 Role yang sudah dibuatkan oleh Rights yaitu Authenticated dan Guest.
Authenticated adalah semua user yang terverifikasi sebagai user alias user yang telah berhasil melakukan proses login. sedangkan
Guest adalah semua user yang belum terverifikasi sebagai user alias user yang belum melakukan proses login.

Permision itu digunakan untuk memetakan antara Role yang telah kita buat dengan Task dan atau Operation.
Jadi Permision itu digunakan untuk nentuin bahwa misal Role A itu bisa ngelakuin Task dan atau Operasi apa saja dengan cara menekan assign sehingga ketika Task dan atau Operation di assign ke Role tersebut maka user yang nantinya memiliki Role tersebut mempunyai wewenang untuk menjalankan Task dan atau Operation yang telah kita assign.

Assignments itu digunakan untuk memetakan antara user (pengguna aplikasi yang mempunyai hak login) dengan Role.

jadi mungkin secara gampang nya untuk penggunaan right itu begitu.
untuk lebih advanced kita dapat menggabungkan dan mengkombinasikan masing masing item tersebut diatas menjadi 1 item yang baru.
misal:
  • membuat sebuah Operation dari gabungan antara beberapa Operation yang lain
  • membuat sebuah Task dari gabungan antara beberapa Operation dan atau beberapa Task yang lain.
  • membuat sebuah Role dari gabungan antara beberapa Operation dan atau Task dan atau Role yang lain.
  • memberikan hak ke 1 user dengan beberapa Role dan atau Task dan atau Operation.
semoga dapat membantu agan agan membayangkan penggunaan extention rights dengan konsep RBAC

1

#9 User is offline   Shy Evsa 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 4
  • Joined: 03-September 10

Posted 03 March 2011 - 07:17 PM

View Postmintaraga, on 03 March 2011 - 02:46 PM, said:

mau menambahkan and mungkin menjelaskan dengan cara yang berbeda nih gan.

Operation itu merepresentasikan atau mencerminkan Controler dan action action yang ada di dalamnya.
Operation adalah komponen terkecil dari sesuatu yang bisa kita atur hak aksesnya.

Task itu merepresentasikan gabungan atau kumpulan Operation yang ada atau pun yang telah kita buat menjadi 1 kelompok yang kita sebut dengan Task.

Role itu merepresentasikan dari gabungan atau kumpulan Task yang ada ataupun yang telah kita buat menjadi 1 kelompok yang kita sebut dengan Role.
Role itu bisa dibilang misal dalam OS windows itu mirip dengan User Group atau Account Type.
Secara default ada 2 Role yang sudah dibuatkan oleh Rights yaitu Authenticated dan Guest.
Authenticated adalah semua user yang terverifikasi sebagai user alias user yang telah berhasil melakukan proses login. sedangkan
Guest adalah semua user yang belum terverifikasi sebagai user alias user yang belum melakukan proses login.

Permision itu digunakan untuk memetakan antara Role yang telah kita buat dengan Task dan atau Operation.
Jadi Permision itu digunakan untuk nentuin bahwa misal Role A itu bisa ngelakuin Task dan atau Operasi apa saja dengan cara menekan assign sehingga ketika Task dan atau Operation di assign ke Role tersebut maka user yang nantinya memiliki Role tersebut mempunyai wewenang untuk menjalankan Task dan atau Operation yang telah kita assign.

Assignments itu digunakan untuk memetakan antara user (pengguna aplikasi yang mempunyai hak login) dengan Role.

jadi mungkin secara gampang nya untuk penggunaan right itu begitu.
untuk lebih advanced kita dapat menggabungkan dan mengkombinasikan masing masing item tersebut diatas menjadi 1 item yang baru.
misal:
  • membuat sebuah Operation dari gabungan antara beberapa Operation yang lain
  • membuat sebuah Task dari gabungan antara beberapa Operation dan atau beberapa Task yang lain.
  • membuat sebuah Role dari gabungan antara beberapa Operation dan atau Task dan atau Role yang lain.
  • memberikan hak ke 1 user dengan beberapa Role dan atau Task dan atau Operation.
semoga dapat membantu agan agan membayangkan penggunaan extention rights dengan konsep RBAC



Woohhh.. meski aku g pake rights (sekarang) tapi cara jelasin konsep na benar-benar membantu.
0

#10 User is offline   mintaraga 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 21
  • Joined: 16-April 10
  • Location:Tanggerang, Banten

Posted 03 March 2011 - 07:38 PM

View PostShy Evsa, on 03 March 2011 - 07:17 PM, said:

Woohhh.. meski aku g pake rights (sekarang) tapi cara jelasin konsep na benar-benar membantu.


syukurlah klo bisa membantu agan agan sekalian.
jangan lupa rattingnya gan :lol:

0

#11 User is offline   -=YiieRz=- 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 177
  • Joined: 27-October 10
  • Location:Jakarta

Posted 06 March 2011 - 09:48 PM

View Postmintaraga, on 03 March 2011 - 02:46 PM, said:

mau menambahkan and mungkin menjelaskan dengan cara yang berbeda nih gan.

Operation itu merepresentasikan atau mencerminkan Controler dan action action yang ada di dalamnya.
Operation adalah komponen terkecil dari sesuatu yang bisa kita atur hak aksesnya.

Task itu merepresentasikan gabungan atau kumpulan Operation yang ada atau pun yang telah kita buat menjadi 1 kelompok yang kita sebut dengan Task.

Role itu merepresentasikan dari gabungan atau kumpulan Task yang ada ataupun yang telah kita buat menjadi 1 kelompok yang kita sebut dengan Role. <- Tambahan, Role juga merupakan gabungan dari Task / Operation
Role itu bisa dibilang misal dalam OS windows itu mirip dengan User Group atau Account Type.
Secara default ada 2 Role yang sudah dibuatkan oleh Rights yaitu Authenticated dan Guest.
Authenticated adalah semua user yang terverifikasi sebagai user alias user yang telah berhasil melakukan proses login. sedangkan
Guest adalah semua user yang belum terverifikasi sebagai user alias user yang belum melakukan proses login.

Permision itu digunakan untuk memetakan antara Role yang telah kita buat dengan Task dan atau Operation.
Jadi Permision itu digunakan untuk nentuin bahwa misal Role A itu bisa ngelakuin Task dan atau Operasi apa saja dengan cara menekan assign sehingga ketika Task dan atau Operation di assign ke Role tersebut maka user yang nantinya memiliki Role tersebut mempunyai wewenang untuk menjalankan Task dan atau Operation yang telah kita assign.

Assignments itu digunakan untuk memetakan antara user (pengguna aplikasi yang mempunyai hak login) dengan Role.

jadi mungkin secara gampang nya untuk penggunaan right itu begitu.
untuk lebih advanced kita dapat menggabungkan dan mengkombinasikan masing masing item tersebut diatas menjadi 1 item yang baru.
misal:
  • membuat sebuah Operation dari gabungan antara beberapa Operation yang lain
  • membuat sebuah Task dari gabungan antara beberapa Operation dan atau beberapa Task yang lain.
  • membuat sebuah Role dari gabungan antara beberapa Operation dan atau Task dan atau Role yang lain.
  • memberikan hak ke 1 user dengan beberapa Role dan atau Task dan atau Operation.
semoga dapat membantu agan agan membayangkan penggunaan extention rights dengan konsep RBAC



:) Sebenarnya roles atau task itu penamaan saja supaya lebih mudah dimengerti oleh pengguna,
jadi kalo misalkan :
level 0 / Operations (Jika digenerate, maka secara otomatis semua action akan di filter oleh rights, artinya jika tidak ada permission untuk mengakses action ini secara otomatis akan ditolak)
level 1 / Task (Gabungan dari operations)
level 2 / Role (Gabungan dari operations / task)
User Assignments / Assignments (Pemberian hak akses user ke [level 0/1/2] tergantung kebutuhan)
summary / Permission (Rangkuman dari semuanya)

Jadi intinya rights itu sendiri bisa melakukan filter sampai dengan 2 level.
maklum kalo kata2nya agak salah, bingung juga jelasinnya .... tapi yg gw coba begini sih :)
dan sudah gw pake. ane gabungin antara yii-users, rights, session, auditTrail
mantappppp bener :) ;D
belajar itu modal utama, tanpa percobaan itu tak akan berhasil. berdoa itu membuat kita percaya diri. YiieRz-SdgBlajar
www.yiiframework.com
1

#12 User is offline   ressaince 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 163
  • Joined: 10-January 11
  • Location:Jakarta

Posted 06 March 2011 - 10:15 PM

Mantap sekali penjelasan dari masta-masta disini..
setelah dicoba akhirnya ane paham gan..
sekarang ane udah nangkep..
tapi untuk menjelaskannya ane juga bingung...
hehehhehe
monggo disharing lagi ,lanjut
take it or leave it
0

#13 User is offline   -=YiieRz=- 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 177
  • Joined: 27-October 10
  • Location:Jakarta

Posted 07 March 2011 - 06:10 AM

View Postressaince, on 06 March 2011 - 10:15 PM, said:

Mantap sekali penjelasan dari masta-masta disini..
setelah dicoba akhirnya ane paham gan..
sekarang ane udah nangkep..
tapi untuk menjelaskannya ane juga bingung...
hehehhehe
monggo disharing lagi ,lanjut


numpang lewat gan :) :) :) ;D ;D
belajar itu modal utama, tanpa percobaan itu tak akan berhasil. berdoa itu membuat kita percaya diri. YiieRz-SdgBlajar
www.yiiframework.com
0

#14 User is offline   mintaraga 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 21
  • Joined: 16-April 10
  • Location:Tanggerang, Banten

Posted 07 March 2011 - 06:34 AM

View Post-=YiieRz=-, on 06 March 2011 - 09:48 PM, said:

:) Sebenarnya roles atau task itu penamaan saja supaya lebih mudah dimengerti oleh pengguna,
jadi kalo misalkan :
level 0 / Operations (Jika digenerate, maka secara otomatis semua action akan di filter oleh rights, artinya jika tidak ada permission untuk mengakses action ini secara otomatis akan ditolak)
level 1 / Task (Gabungan dari operations)
level 2 / Role (Gabungan dari operations / task)
User Assignments / Assignments (Pemberian hak akses user ke [level 0/1/2] tergantung kebutuhan)
summary / Permission (Rangkuman dari semuanya)

Jadi intinya rights itu sendiri bisa melakukan filter sampai dengan 2 level.
maklum kalo kata2nya agak salah, bingung juga jelasinnya .... tapi yg gw coba begini sih :)
dan sudah gw pake. ane gabungin antara yii-users, rights, session, auditTrail
mantappppp bener :) ;D


keren gan.... makin tambah jelas nih penggunaan dan konsep dri extention rights..
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users