Permissões
O recurso de permissões descreve o que uma chave e, portanto, seus usuários podem acessar. Por exemplo, uma chave pode ser configurada para ter o escopo source_type:icloud.account
que permite que seus usuários criem sessões em contas do iCloud.
Toda permissão é restrita por quais são as permissões básicas da organização. Não é possível criar permissões que estão além do que a organização tem acesso.
Atributos
nome | tipo | descrição |
---|---|---|
id | ID de permissão | Identificador de recursos. |
resource | string, sempre permission | Especificador de tipo de recurso. |
organisation | ID da organização | A organização com a qual essas permissões estão associadas. |
scopes | dicionário | O escopo ao qual a permissão se aplica. |
Escopos
O atributo scopes
define a que permissões concedem acesso. Os escopos se parecem com source_type:icloud.account
, que concede permissão para criar origens de contas do iCloud.
Cada escopo pode ter limites associados. Estes agem como restrições nas permissões concedidas pelo escopo. Por exemplo, o escopo source_type:icloud.account
pode ter um limite:
{ "level": "user", "type": "count", "value": 3 }
Isso restringiria o número de fontes de conta do iCloud que um usuário pode criar para um máximo de três.
O formato do atributo scopes
, fornecido no exemplo acima, seria:
{ "source_type:icloud.account": [ { "level": "user", "type": "count", "value": 3 } ] }
Os escopos também podem incluir curingas simples, como task_type:icloud.*
Que dá permissão para usar qualquer tarefa relacionada ao serviço iCloud.
Tipos de escopo
-
source_type
dá acesso a tipos de fontes específicos. -
task_type
dá acesso a tipos de tarefas específicos. -
data_type
dá acesso a tipos de dados específicos. -
file_type
dá acesso a tipos de arquivo específicos.
Limites
nome | tipo | descrição |
---|---|---|
level | corda | Uma das: organisation , key ou user . |
type | dicionário | O escopo ao qual a permissão se aplica. |
Um limite pode atuar em um dos três níveis diferentes: organisation
, key
ou user
. Isso determina o quão amplamente o limite é aplicado. Por exemplo, um escopo pode ter um limite que restringe a organização a apenas 10 contas do iCloud (um limite de nível de organisation
) e outro limite que restringe cada usuário dentro dessa organização a apenas duas contas do iCloud cada (um limite de nível de user
).
Existem três tipos de limites: count
, interval
e inflight
. O tipo de count
é absoluto (ou seja, a contagem total de contas do iCloud acessadas), enquanto o intervalo leva a contagem ao longo de um período (ou seja, 1 conta iCloud por mês) e em inflight
é um limite de simultaneidade de uma vez).