BGames
Olá visitante! Seja bem vindo á BGames!

Para ter total acesso ao nosso fórum é preciso que você se registre.

Registre-se Aqui!


PARA VER LINKS E IMAGENS É PRECISO SE REGISTRAR!


BGames
Olá visitante! Seja bem vindo á BGames!

Para ter total acesso ao nosso fórum é preciso que você se registre.

Registre-se Aqui!


PARA VER LINKS E IMAGENS É PRECISO SE REGISTRAR!

BGames
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

BGamesEntrar

Fórum de Desenvolvimento de Jogos e Programação


description[F.A.Q.]Como Usar Rbac Empty[F.A.Q.]Como Usar Rbac

more_horiz
Olá a todos! Já muitas pessoas se queixam do Rbac (principalmente eu :P ) logo vim aqui fazer este tópico.

Conteúdo:

1. Compreender os comandos e tabelas 
 -1.1. Lista das permissões / funções / Grupos (Padrão) ~ Estrutura SQL de todas as tabelas do RBAC (padrão) 
 -1.2. Conhecer a sua configuração 
2 Dando GM Permissions 
2.1 Dando permissões de administrador completa

~ Lista de permissões / funções / Grupos (Padrão) ~ Estrutura SQL de todas as tabelas do RBAC (padrão) ~


Aqui é a estrutura SQL padrão das tabelas RBAC (executar em seu banco de dados de autenticação): http://paste2.org/p/3047713

Aqui está as permissões padrão / Roles / Grupos ID / NOME: 
[Tens de ter uma conta e sessão iniciada para poderes visualizar este link]

RBAC (wiki) a documentação do TrinityCore: 

[Tens de ter uma conta e sessão iniciada para poderes visualizar este link]


Conhecendo sua configuração
Dentro de seu worldserver.conf, você terá uma configuração, assim:

#
# RBAC.DefaultGroups
# Description: Comma separated list of groups to be added to any account
# Check auth.rbac_groups for correct ids
# Default: "" (No group)

RBAC.DefaultGroups = "1"


Como ele diz, uma vez que alguém Acredito registros, logins .. qualquer que seja, será concedido com as DefaultGroups especificados. O valor pode ser DefaultGroups:

1 = Jogador
2 = Moderador
3 = GM
4 = Admin

Ou, você pode separar os valores como diz por vírgulas:

1,2,3,4

1,2

1,2,3

Neste momento, o meu é em 1. Os jogadores só irá obter permissões do jogador.


~ Compreender os comandos e tabelas ~

Isto é bastante simples, então vamos começar com as tabelas antes de ir para os comandos de imediato.

Você deve ter as seguintes tabelas:
- rbac_account_groups -- Contém dados de contas que possuem grupos
- rbac_account_permissions -- Contém dados de contas que têm permissões
- rbac_account_roles -- Contém dados de contas que tem papéis definidos
- rbac_group_roles -- Contém dados de funções do grupo
- rbac_groups -- Contém dados de grupos de pessoal (Player, GM, etc)
- rbac_permissions -- Contém dados de Id permissão / Names
- rbac_role_permissions -- Contém dados de permissões de função
- rbac_roles -- Contém dados de papéis Id / Nome
- rbac_security_level_groups -- Contém dados de níveis de segurança de grupo (SECIB)


Agora, as principais tabelas que serão inserindo dados são:

rbac_account_groups
rbac_account_permissions
rbac_account_roles




Os outros quadros são, basicamente, que contém os dados que fazem RBAC o que é. Você tem comandos para olhar para o que as permissões / funções / grupos que você tem. Você pode olhar para o que contas de papéis / permissões / grupos têm, digitando:

Funções:
.rbac account role ACCOUNTNAME


Exemplo de (Roles):

.rbac account role Easelm


Isto irá mostrar o que representam papéis 'Easelm' tem do rbac_roles `table`.


Permições:
.rbac account permission ACCOUNTNAME


Exemplo de (PERMISSIONS):

.rbac account permission Easelm


Isto irá mostrar o que representam as permissões 'Easelm' do rbac_permissions `table`.


Groupos:
.rbac account group ACCOUNTNAME


Examplo de (GROUPS):

.rbac account group Easelm


Isto irá mostrar o que representam as permissões 'Easelm' do rbac_account_groups `table`.

(NOTA): Você pode selecionar um jogador dentro do jogo e digite estes comandos para ver os seus grupos / permissões / funções, sem especificar o nome da conta.


.: Conhecendo seus grupos:.

Se os seus `rbac_groups` não foi alterada, os grupos devem ser as seguintes:
1 = Jogador
2 = Moderador
3 = GM
4 = Admin


.: Conhecendo seus comandos:.

Você tem 15 comandos, todos juntos, mas não se preocupe, eu só vou explicar o que você potencialmente vai usar.

Os principais comandos que você vai usar mais provável são:

TAMBÉM NOTE: Você pode definir o REALMID a -1 para todos os reinos

.rbac account group add ACCOUNTNAME GROUPID REALMID

.rbac account group remove ACCOUNTNAME GROUPID

.rbac account role grant ACCOUNTNAME ROLEID REALMID

.rbac account role deny ACCOUNTNAME ROLEID REALMID

.rbac account role revoke ACCOUNTNAME ROLEID

.rbac account permission grant ACCOUNTNAME PERMISSIONID REALMID

.rbac account permission deny ACCOUNTNAME PERMISSIONID REALMID

.rbac account permission revoke ACCOUNTNAME PERMISSIONID

(NOTA): Você pode selecionar um jogador dentro do jogo e digite estes comandos para atribuir seus grupos / permissões / funções, sem especificar o nome da conta.

~ Dar GM Permissoes ~

Agora, eu testei com este e veio com os resultados. Para dar um gamemaster Player, Moderador e GM Permissões, você terá que definir os seus grupos, permissão e papel. Não me interpretem mal, ele funciona perfeitamente.

Para fazer isso, vamos utilizar uma consulta SQL básica ou os comandos.

.: Por SQL Query:.

Para conceder permissões GameMaster Player, Moderador e GameMaster faça (será mais comandos):


Código:

INSERT INTO `rbac_account_groups` (`accountId`, `groupId`, `realmId`) VALUES
('2', '1', '-1'),
('2', '2', '-1'),
('2', '3', '-1');

INSERT INTO `rbac_account_permissions` (`accountId`, `permissionId`, `granted`, `realmId`) VALUES
('2', '9', '1', '-1');

INSERT INTO `rbac_account_roles` (`accountId`, `roleId`, `granted`, `realmId`) VALUES
('2', '3', '1', '-1');




Para conceder o GameMaster, GameMaster apenas permissões faça (será menos comandos):

Código:

INSERT INTO `rbac_account_groups` (`accountId`, `groupId`, `realmId`) VALUES
('2', '3', '-1');

INSERT INTO `rbac_account_permissions` (`accountId`, `permissionId`, `granted`, `realmId`) VALUES
('2', '9', '1', '-1');

INSERT INTO `rbac_account_roles` (`accountId`, `roleId`, `granted`, `realmId`) VALUES
('2', '3', '1', '-1');



Você pode substituir os valores com SEUS PRÓPRIOS. Eles são específicos e podem facilmente ser mudado.


.: Por Comandos:.

Atribuir ao(s) grupo(s):

Para conceder permissões de GM, Player, a um Moderador ou GM faça (será mais comandos):
.rbac account group add Easelm 1 -1
.rbac account group add Easelm 2 -1
.rbac account group add Easelm 3 -1


Para conceder ao GM, permissões de GameMaster apenas faça (será menos comandos):

.rbac account group add Easelm 3 -1


Atribuindo á role:

.rbac account role grant Easelm 3 -1


Atribuir a(s) permissão(ões):
.rbac account permission grant Easelm 9 -1


~ Dar permissões de administrador completo (todos os comandos) ~
Para fazer isso, vamos utilizar uma consulta SQL básica ou os comandos.

.: Por SQL Query:.
Atribuir ao(s) grupo(s):
.rbac account group add Easelm 1 -1
.rbac account group add Easelm 2 -1
.rbac account group add Easelm 3 -1
.rbac account group add Easelm 4 -1


Atribuindo ao role:

.rbac account role grant Easelm 4 -1


Atribuir a permissão (s):

.rbac account permission grant Easelm 10 -1


LEMBRE-SE SEMPRE: -1 é todos os realms. Você pode definir permissões para um realm específico, por exemplo, 1, 2, 3, etc. (RealmID passa a quantidade de realms que você tem.)


Espero que tenham gostado deste guia sobre como compreender plenamente o sistema RBAC.

Totalmente Postado!
Muito obrigado.
Gostou? +rep ^^


Última edição por SkyLiner em Ter 11 Fev 2014 - 13:05, editado 6 vez(es) (Motivo da edição : Final Atualização!)

description[F.A.Q.]Como Usar Rbac EmptyRe: [F.A.Q.]Como Usar Rbac

more_horiz
O link para documentação no Trinitycore está incorreto. [+repelo post]

description[F.A.Q.]Como Usar Rbac EmptyRe: [F.A.Q.]Como Usar Rbac

more_horiz
Atualizado!
Obrigado, pela informação !

description[F.A.Q.]Como Usar Rbac EmptyRe: [F.A.Q.]Como Usar Rbac

more_horiz
Ficou muito bom!
Pena que o rbac foi atualizado novamente.

description[F.A.Q.]Como Usar Rbac EmptyRe: [F.A.Q.]Como Usar Rbac

more_horiz
privacy_tip Permissões neste sub-fórum
Não podes responder a tópicos
power_settings_newInicie sessão para responder