Políticas de Implantação de Modelo

Crie um grupo de usuários autorizados a trabalhar com implantações de modelo para poder implantar um modelo com um recurso de implantação de modelo.

Ou você poderia criar um grupo dinâmico de recursos (como sessões de notebook) com autorização para criar uma implantação. Nesse caso, qualquer pessoa que puder acessar a sessão de notebook poderá obter a identidade da sessão de notebook e criar uma implantação de modelo. O método de autenticação da sessão de notebook usa controladores de recursos.

O mesmo padrão se aplica ao chamar o ponto final do modelo após a implantação. Um grupo de usuários ou recursos precisa ser autorizado para chamar o modelo.

Acreditamos que os exemplos a seguir são as instruções de política mais comuns a serem usadas com uma implantação de modelo e que as políticas de implantação de modelo de exemplo contêm mais exemplos.

Gerenciar Políticas de Implantação de Modelo

Permite que um grupo de usuários, <group-name>, execute todas as operações CRUD em modelos armazenados no catálogo de modelos. Qualquer usuário que queira implantar um modelo por meio de implantação de modelo também precisa acessar o modelo que deseja implantar.
allow group <group-name> to manage data-science-models 
in compartment <compartment-name>
Permite que um grupo de usuários, <group-name>, execute todas as operações CRUD, incluindo a chamada do ponto final de inferência, em recursos da implantação do modelo em um compartimento específico. Você pode alterar o verbo manage para limitar o que os usuários podem fazer.
allow group <group-name> to manage data-science-model-deployments 
in compartment <compartment-name>
Permite que um grupo dinâmico de recursos (como sessões do notebook) execute todas as operações CRUD, incluindo a chamada do ponto final de inferência, nos recursos da implantação do modelo em um determinado compartimento. O verbo manage pode ser alterado para limitar o que os recursos podem fazer.
allow dynamic-group <dynamic-group-name> to manage  data-science-model-deployments 
in compartment <compartment-name>

Os exemplos de política anteriores são permissivos. Você pode criar políticas mais restritivas. Um exemplo comum é restringir quem ou quais recursos podem chamar o ponto final da inferência da implantação do modelo.

Autorizar Acesso à Política de Ponto Final de Previsão ou Streaming

Permite que um grupo de usuários, <group-name>, execute todas as operações CRUD, incluindo a chamada do ponto final de inferência, em recursos da implantação do modelo em um compartimento específico. Você pode alterar o verbo manage para limitar o que os usuários podem fazer.
allow group <group-name> to manage data-science-model-deployments 
in compartment <compartment-name>
Ou você pode autorizar os recursos a fazerem o mesmo. Somente o grupo dinâmico de recursos no grupo dinâmico especificado pode chamar o ponto final de modelo para os recursos de implantação de modelo criados em um compartimento específico.
allow dynamic-group <dynamic-group-name-2> to {DATA_SCIENCE_MODEL_DEPLOYMENT_PREDICT} 
in compartment <compartment-name>

Conceder Acesso de Implantação de Modelo a um Bucket do Conda Publicado

(Opcional) Permite que uma implantação de modelo acesse os ambientes conda publicados armazenados em um bucket do Object Storage. Isso será necessário se você quiser usar Ambientes Conda Publicados para capturar as dependências de terceiros de um modelo.
allow any-user to read objects in compartment <compartment-name>
where ALL { request.principal.type='datasciencemodeldeployment', 
target.bucket.name=<published-conda-envs-bucket-name> }

Conceder Acesso de Implantação de Modelo ao Serviço Logging

(Opcional) Permite que uma implantação de modelo emita logs para o serviço Logging. Você precisará dessa política se estiver usando o serviço Logging em uma implantação de modelo. Esta afirmação é permissiva. Por exemplo, você pode restringir a permissão para usar conteúdo de log em um compartimento específico.
allow any-user to use log-content in tenancy 
where ALL {request.principal.type = 'datasciencemodeldeployment'}

Conceder Acesso de Implantação de Modelo a um Bucket de Armazenamento de Objetos

(Opcional) Permite que uma implantação de modelo acesse um bucket do Object Storage que reside em uma tenancy. Por exemplo, um modelo implantado de leitura de arquivos (um arquivo CSV de lookup) de um bucket de Armazenamento de Objetos que você gerencia.
allow any-user to read objects in compartment <compartment-name> 
where ALL { request.principal.type='datasciencemodeldeployment', target.bucket.name=<bucket-name> }

Conceder Acesso de Implantação de Modelo a um Contêiner Personalizado Usando o Controlador de Recursos

As políticas podem ser configuradas da seguinte forma:

Configurando Grupos Dinâmicos e Criando Políticas no Grupo Dinâmico

Criar um grupo dinâmico:

ALL { resource.type = 'datasciencemodeldeployment' }

Permite que um grupo dinâmico leia um contêiner personalizado.

allow dynamic-group <dynamic-group-name> to read repos in compartment <compartment-name> where ANY {
    request.operation='ReadDockerRepositoryMetadata',
    request.operation='ReadDockerRepositoryManifest',
    request.operation='PullDockerLayer'

Se o repositório estiver no compartimento raiz, permita a leitura da tenancy:

allow dynamic-group <dynamic-group-name> to read repos in tenancy where ANY {
    request.operation='ReadDockerRepositoryMetadata',
    request.operation='ReadDockerRepositoryManifest',
    request.operation='PullDockerLayer'
}

Outros Métodos de Autenticação e Autorização

A implantação de modelo só suporta autorização e autenticação definidas pelo serviço OCI IAM (Identity and Access Management). A implantação de modelo não suporta outros métodos de autorização e autenticação, como OAuth ou autenticação de acesso básico.