Gerenciando o acesso do IAM para o Inferência de IA da Red Hat
O acesso aos projetos do Red Hat AI Inference para os usuários da sua conta é controlado pelo IBM Cloud® Identity and Access Management (IAM). Todo usuário que acessa o serviço Red Hat AI Inference em sua conta deve ter designada uma política de acesso com uma função do IAM. Analise as funções, ações e outros aspectos a seguir para ajudar a determinar a melhor maneira de conceder acesso ao site Red Hat AI Inference.
A política de acesso que você atribui aos usuários em sua conta determina quais ações um usuário pode realizar no contexto do serviço ou projeto específico que você selecionar. As ações permitidas são personalizadas e definidas pelo Red Hat AI Inference como operações que podem ser realizadas no serviço. Cada ação é mapeada para uma função de plataforma ou de serviço do IAM que pode ser designada a um usuário.
Certifique-se também de que possui a função “Visualizador” para os grupos de recursos que deseja utilizar.
As políticas de acesso do IAM permitem o acesso em diferentes níveis. Algumas opções incluem o seguinte:
- Conceder acesso de Leitor ou Escritor a um projeto específico.
- Conceder acesso de Leitor ou Escritor a um grupo de recursos específico, no qual pode haver vários projetos.
- Conceder acesso de Leitor ou Escritor a toda a conta, na qual pode haver vários grupos de recursos com muitos projetos.
- Conceder ao usuário o acesso de “Visualizador” aos projetos do Inferência de IA da Red Hat dentro de um grupo de recursos e no nível da conta.
- Conceder à criação acesso para criar um ou mais projetos d Inferência de IA da Red Hat dentro de um grupo de recursos e no nível da conta.
Se uma função específica e suas ações não se ajustarem ao caso de uso que você deseja abordar, é possível criar uma função customizada e selecionar as ações a serem incluídas.
Analise as tabelas a seguir, que descrevem os tipos de tarefas que cada função permite ao trabalhar com o serviço “ Red Hat AI Inference ”. As funções de gerenciamento da plataforma permitem que os usuários realizem tarefas nos recursos do serviço no nível da plataforma; por exemplo, atribuir acesso de usuários ao serviço, criar ou excluir projetos e vincular projetos a aplicativos. As funções de acesso ao serviço permitem que os usuários acessem o Red Hat AI Inference e chamem a API do Red Hat AI Inference.
Esta é uma visão geral do que as funções da plataforma permitem que os usuários façam. Descreva, em linguagem simples, que tipo de tarefas podem ser realizadas ou quais são as funções mais comuns que os usuários podem esperar desempenhar ao ter cada função atribuída.
Funções e ações do IAM
| Função da plataforma | Descrição |
|---|---|
| Visualizador | Como visualizador, você pode visualizar os projetos, mas não pode modificá-los. |
| Operador | Como operador, você pode realizar as ações na plataforma necessárias para configurar e operar projetos, como visualizar o painel de controle de um serviço. |
| Editor | Como um editor, é possível executar todas as ações da plataforma, exceto gerenciar a conta e designar políticas de acesso. |
| Administrador | Como um administrador, é possível executar todas as ações da plataforma com base no recurso ao qual essa função está sendo designada, incluindo a designação de políticas de acesso a outros usuários. |
| Leitor do Configurador de Serviços | A capacidade de leitura da configuração de serviços do Gerenciamento de controle. |
| Gerente de Chaves | Como gerenciador de chaves, o serviço pode realizar as ações na plataforma necessárias para gerenciar chaves de recursos, como a criação de uma nova chave de recurso. |
| Função de serviço | Descrição |
|---|---|
| Leitor | Como um leitor, é possível executar ações somente leitura em um serviço, como visualizar recursos específicos do serviço. |
| Gravador | Como um gravador, você tem permissões além da função de leitor, incluindo a criação e a edição de recursos específicos do serviço. |
| Gerente | Como um gerenciador, você tem permissões além da função de gravador para concluir ações privilegiadas, conforme definido pelo serviço. Além disso, é possível criar e editar recursos específicos do serviço. |
| ações e eventos | Descrição | Funções |
|---|---|---|
instructlab.dashboard.view |
Visualizar os painéis do Red Hat AI Inference. | Operador, Administrador, Editor |
instructlab.taxonomy.read |
Leia os detalhes de uma taxonomia. | Leitor, Gravador, Gerenciador |
instructlab.taxonomy.create |
Criar taxonomias | Gravador, Gerente |
instructlab.taxonomy.list |
Listar taxonomias. | Leitor, Gravador, Gerenciador |
instructlab.taxonomy.delete |
Excluir taxonomias. | Gravador, Gerente |
instructlab.sdgdata.read |
Leia os detalhes de uma execução de geração de dados. | Leitor, Gravador, Gerenciador |
instructlab.sdgdata.list |
Listar execuções de geração de dados. | Leitor, Gravador, Gerenciador |
instructlab.sdgdata.create |
Crie uma execução de geração de dados. | Gravador, Gerente |
instructlab.sdgdata.delete |
Excluir uma execução de geração de dados. | Gravador, Gerente |
instructlab.sdgdata.stop |
Interromper uma execução de geração de dados. | Gravador, Gerente |
instructlab.sdgdata.stop |
Interromper uma execução de geração de dados. | Gravador, Gerente |
instructlab.model.read |
Leia os detalhes de uma simulação de treinamento do modelo. | Leitor, Gravador, Gerenciador |
instructlab.model.list |
Listar as execuções de treinamento do modelo. | Leitor, Gravador, Gerenciador |
instructlab.model.create |
Crie uma execução de treinamento do modelo. | Gravador, Gerente |
instructlab.model.delete |
Excluir uma sessão de treinamento do modelo. | Gravador, Gerente |
instructlab.model.stop |
Interromper uma execução de treinamento do modelo. | Gravador, Gerente |
Conceda permissão a InstuctLab para criar e atualizar artefatos d Object Storage
Inferência de IA da Red Hat Atribua a função de acesso “ Writer ” ao serviço “ Object Storage ”. O usuário conectado também deve ter a mesma permissão.
-
Crie a política de autorização para Inferência de IA da Red Hat e Object Storage.
ibmcloud iam authorization-policy-create Writer --source-service-name instructlab --target-service-name cloud-object-storageSe você já dispõe de recursos d Object Storage, pode restringir a autorização apenas a esses recursos.
ibmcloud iam authorization-policy-create Writer --source-service-name instructlab --target-service-name cloud-object-storage --target-service-instance-id CLOUD-OBJECT-STORAGE-INSTANCE-ID --target-resource CLOUD-OBJECT-STORAGE-BUCKET --target-resource-type bucket -
Verifique se a política de autorização foi criada.
ibmcloud iam authorization-policiesResultado quando a autorização não está restrita a um bucket específico do Object Storage:
Getting authorization policies under account abc1234 as user... OK ID: <id> Source service name: instructlab Source service instance: All instances Target service name: cloud-object-storage Target service instance: All instances Roles: WriterResultado quando a autorização é restrita a um bucket específico do Object Storage:
Getting authorization policies under account abc1234 as user... OK ID: <id> Source service name: instructlab Source service instance: All instances Target service name: cloud-object-storage Target service instance: bucket Roles: Writer -
Opcional: Se você estiver usando um repositório privado, crie outra autorização de serviço para Inferência de IA da Red Hat e Secrets Manager
ibmcloud iam authorization-policy-create Reader --source-service-name instructlab --target-service-name secrets-manager -
Se necessário, conceda a permissão “
Writer” ao usuário conectado. Inclua o ID da instância do serviço “ Object Storage ” da etapa anterior.ibmcloud iam user-policy-create <user> --roles Writer --service-instance <cloud-object-storage-instance-id>
Atribuir acesso de usuários aos seus recursos
Você pode controlar quais usuários (ou grupos de usuários) da sua conta têm acesso aos recursos do Red Hat AI Inference. Siga estas etapas para atribuir acesso no console.
Para obter mais detalhes sobre como conceder acesso, quais etapas seguir para usar a CLI ou as diferentes maneiras de definir o escopo de acesso ao Red Hat AI Inference ou ao seu bucket Object Storage, consulte Gerenciamento de acesso do IAM para Red Hat AI Inference.
Existem duas formas comuns de conceder acesso:
- Políticas de acesso por usuário.
- É possível gerenciar políticas de acesso por usuário na página Gerenciar > Acesso (IAM) > Usuários no console. Para obter informações sobre as etapas para atribuir acesso ao IAM, consulte “Gerenciamento do acesso aos recursos no console ”.
- Grupos de acesso.
- Os grupos de acesso são usados para aperfeiçoar o gerenciamento de acesso, designando acesso a um grupo uma vez, em seguida, podendo incluir ou remover usuários do grupo, conforme necessário, para controlar seus acessos. Você gerencia grupos de acesso e seus acessos na página Gerenciar > Acesso (IAM) > Grupos de acesso no console. Para obter mais informações, consulte Designado acesso a um grupo no console.
{{../iam/iam-mng-access.md#access-resources-console}}
{{../iam/iam-mng-access.md#access-to-resources-console}}
{{../iam/iam-mng-access.md#access-to-resource-group}}
Atribuição de acesso a Inferência de IA da Red Hat por meio da CLI
Para obter instruções passo a passo para designar, remover e revisar o acesso, consulte Designando acesso a recursos usando a CLI. O exemplo a
seguir mostra um comando para atribuir a função de “ Writer ” a instructlab:
Use instructlab para o nome do serviço. Para localizar os IDs das funções, execute o comando ibmcloud iam roles . Além disso, coloque aspas nos nomes de funções que tenham mais de uma palavra. Por exemplo,
"Service Configuration Reader".
Exemplo de comando para atribuir a função “Visualizador” a um usuário para um projeto específico do Inferência de IA da Red Hat na conta.
ibmcloud iam user-policy-create name@example.com --roles Viewer --service-name instructlab --attributes "projectId=1b111111-1ef1-11f1-1111-111bae11111a"
Exemplo de comando para atribuir a função “Gerenciador de Chaves” a um usuário para um projeto específico do Inferência de IA da Red Hat na conta.
ibmcloud iam user-policy-create name@email.com --roles "Key Manager" --service-name instructlab
Exemplo de comando para atribuir a função “Writer” a um usuário em todos os projetos do Inferência de IA da Red Hat da conta.
ibmcloud iam user-policy-create USER@EXAMPLE.COM --service-name instructlab --roles Writer
Exemplo de comando para atribuir a função de Administrador a todas as instâncias do serviço “ Inferência de IA da Red Hat ” na conta.
ibmcloud iam user-policy-create name@example.com --roles Administrator --service-name instructlab
Exemplo de comando para atribuir a função “Visualizador” a todos os grupos de recursos da conta.
ibmcloud iam user-policy-create name@example.com --roles Viewer --resource-type resource-group
Exemplo de comando para atribuir a função “Visualizador” a todos os usuários de um grupo de recursos específico.
ibmcloud iam user-policy-create name@example.com --roles Viewer --resource-type resource-group
Exemplo de comando para atribuir a função de Administrador a um grupo de recursos.
ibmcloud iam service-policy-create test --roles Administrator --resource-group-name sample-resource-group
Concedendo acesso de usuário ao Inferência de IA da Red Hat por meio da API
Para obter instruções passo a passo para designar, remover e revisar o acesso, consulte Designando acesso a recursos usando a API ou Criar uma política nos docs da API. Os cloud resource names (CRNs) de função na tabela a seguir são usados para designar acesso com a API.
Use “ instructlab ” como nome do serviço e consulte a tabela de valores de CRN de funções para garantir que você esteja usando o valor correto para a função. Analise a lista a seguir de CRNs de funções.
| Função | CRN |
|---|---|
| Leitor | crn:v1:bluemix:public:iam::::serviceRole:Reader |
| Gravador | crn:v1:bluemix:public:iam::::serviceRole:Writer |
| Gerente | crn:v1:bluemix:public:iam::::serviceRole:Manager |
| Visualizador | crn:v1:bluemix:public:iam::::role:Viewer |
| Operador | crn:v1:bluemix:public:iam::::role:Operator |
| Editor | crn:v1:bluemix:public:iam::::role:Editor |
| Administrador | crn:v1:bluemix:public:iam::::role:Administrator |
| Leitor do Configurador de Serviços | crn:v1:bluemix:public:iam::::role:ConfigReader |
| Gerente de Chaves | crn:v1:bluemix:public:resource-controller::::role:KeyManager |
O exemplo a seguir atribui a função “ Writer ” a instructlab.
curl -X POST 'https://iam.cloud.ibm.com/v1/policies' -H 'Authorization: Bearer $TOKEN' -H 'Content-Type: application/json' -d '{
"type": "access",
"description": "Writer role for InstructLab",
"subjects": [
{
"attributes": [
{
"name": "iam_id",
"value": "IBMid-123453user"
}
]
}'
],
"roles":[
{
"role_id": "crn:v1:bluemix:public:iam::::serviceRole:Writer"
}
],
"resources":[
{
"attributes": [
{
"name": "accountId",
"value": "$ACCOUNT_ID"
},
{
"name": "serviceName",
"value": "instructlab"
}
]
}
]
}
{{../iam/iam-mng-access.md#access-resources-api}}
{{../iam/iam-mng-access.md#access-resourcegroups-api}}