Configurações do Model Armor Floor

As configurações de piso do Model Armor definem regras que determinam os requisitos mínimos para todos os modelos do Model Armor criados em um ponto específico da hierarquia de recursos Google Cloud, ou seja, no nível da organização, da pasta ou do projeto. Se houver várias configurações de piso em conflito, as configurações mais baixas na hierarquia de recursos terão precedência. Por exemplo, se uma política de configuração de piso for criada no nível da pasta e do projeto, a política do projeto será aplicada.

Confira um exemplo de como funciona uma política de configuração de piso do Model Armor. A política de piso X está definida em uma pasta com o filtro de URL malicioso ativado. A política de piso Y é definida em um projeto dentro dessa pasta para a injeção de comando e o filtro de detecção de jailbreak com um limite de confiança médio. O resultado final é que todos os modelos de proteção de modelo criados no projeto precisam ter pelo menos o filtro de detecção de injeção de comandos e jailbreak definido com um limite de confiança médio, mas o filtro de URL malicioso não é necessário.

As configurações de piso ajudam os CISOs e arquitetos de segurança a aplicar uma postura de segurança mínima em todos os modelos de proteção da organização, impedindo que desenvolvedores individuais reduzam acidental ou intencionalmente os padrões de segurança abaixo dos níveis aceitáveis. Para clientes com um nível Premium ou Enterprise do Security Command Center, as violações de configuração de piso acionam descobertas. Isso significa que, se um modelo for criado antes de uma configuração mínima e tiver configurações menos restritivas, uma descoberta vai aparecer no Security Command Center para ajudar a identificar e remediar modelos menos seguros do Model Armor.

Ativar e desativar as configurações de piso do Model Armor

Para ativar as configurações do Model Armor Floor, defina a flag enable_floor_setting_enforcement como true. Os exemplos a seguir mostram como fazer isso.

gcloud

  • Ative as configurações de piso do Model Armor para um determinado projeto.

     gcloud model-armor floorsettings describe 
    --full-uri='projects/PROJECT_ID/locations/global/floorSetting' Flags --full-uri = name of the floor setting resource

  • Ative as configurações de piso do Model Armor para uma determinada organização.

      gcloud model-armor floorsettings describe 
    --full-uri='organizations/ORGANIZATION_ID/locations/global/floorSetting' Flags --full-uri = name of the floor setting resource

  • Ative as configurações do Model Armor Floor para uma determinada pasta.

      gcloud model-armor floorsettings describe 
    --full-uri='folders/FOLDER_ID/locations/global/floorSetting' Flags --full-uri = name of the floor setting resource

    Substitua:

  • PROJECT_ID: o ID do projeto do modelo.

  • FOLDER_ID: o ID da pasta do modelo.

  • ORGANIZATION_ID: o ID da organização do modelo.

APIs REST

    curl -X PATCH
    -d '{"enable_floor_setting_enforcement" : "true"}'
    -H "Content-Type: application/json"
    -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://modelarmor.googleapis.com/v1/projects/$PROJECT_ID/locations/global/floorSetting?update_mask=enable_floor_setting_enforcement"
   

Substitua:

  • gcloud auth print-access-token: o token de acesso da conta especificada.
  • PROJECT_ID: o ID do projeto do modelo.

Se você não quiser usar as configurações de limite mínimo do Model Armor, defina a flag filter_config como empty ou a flag enable_floor_setting_enforcement como false. O exemplo a seguir mostra como fazer isso.

gcloud

    gcloud alpha model-armor floorsettings get 
--full-uri='projects/$PROJECT_ID/locations/global/floorSetting' Flags --full-uri = name of the floor setting resource --enable-floor-setting-enforcement=false --filterConfig = {}

Substitua:

  • PROJECT_ID: o ID do projeto do modelo.

APIs REST

     curl -X PATCH 
-H "Content-Type: application/json"
-H "Authorization: Bearer $(gcloud auth print-access-token)"
-d '{"filterConfig" :{},"enable_floor_setting_enforcement":"false"}'
"https://modelarmor.googleapis.com/v1/projects/{PROJECT_ID}/locations/global/floorSetting"

Substitua:

  • gcloud auth print-access-token: o token de acesso da conta especificada.
  • PROJECT_ID: o ID do projeto do modelo.

Configurar o Model Armor

Execute o comando a seguir para conferir as configurações de piso do Model Armor.

gcloud

  • Conferir a configuração do Model Armor Floor para um determinado projeto.

      gcloud model-armor floorsettings describe
      --full-uri='projects/PROJECT_ID/locations/global/floorSetting'
    
      Flags --full-uri = name of the floor setting resource
    
  • Confira a configuração do Model Armor Floor para uma determinada organização.

      gcloud model-armor floorsettings describe
      --full-uri='organizations/Organization/locations/global/floorSetting'
    
      Flags --full-uri = name of the floor setting resource
    
  • Confira a configuração do Model Armor Floor para uma determinada pasta.

       gcloud model-armor floorsettings describe
       --full-uri='folders/Folder/locations/global/floorSetting'
    
       Flags --full-uri = name of the floor setting resource
    

    Substitua:

    • PROJECT_ID: o ID do projeto do modelo.
    • Folder: o ID da pasta do modelo.
    • Organization: o ID da organização do modelo.

APIs REST

  • Conferir a configuração do Model Armor Floor para um determinado projeto.

     curl -X GET 
    -H "Authorization: Bearer $(gcloud auth print-access-token)"
    -H "Content-Type: application/json"
    "https://modelarmor.googleapis.com/v1/projects/{project_id}/locations/global/floorSetting"

  • Confira a configuração do Model Armor Floor para uma determinada pasta.

     curl -X GET 
    -H "Authorization: Bearer $(gcloud auth print-access-token)"
    -H "Content-Type: application/json"
    "https://modelarmor.googleapis.com/v1/folders/{folder}/locations/global/floorSetting"

  • Confira a configuração do Model Armor Floor para uma determinada organização.

     curl -X GET 
    -H "Authorization: Bearer $(gcloud auth print-access-token)"
    -H "Content-Type: application/json"
    "https://modelarmor.googleapis.com/v1/organizations/{organization}/locations/global/floorSetting"

    Substitua:

  • gcloud auth print-access-token: o token de acesso da conta especificada.

  • PROJECT_ID: o ID do projeto do modelo.

  • Folder: o ID da pasta do modelo.

  • Organization: o ID da organização do modelo.

Atualizar as configurações do Model Armor Floor

Execute o comando a seguir para atualizar as configurações de piso do Model Armor.

gcloud

   gcloud model-armor floorsettings update --full-uri=<full-uri-of-the-floorsetting> [filters]

Exemplo de comando:

       gcloud model-armor floorsettings update
       --malicious-uri-filter-settings-enforcement=ENABLED
       --pi-and-jailbreak-filter-settings-enforcement=DISABLED
       --pi-and-jailbreak-filter-settings-confidence-level=LOW_AND_ABOVE
       --basic-config-filter-enforcement=ENABLED
       --add-rai-settings-filters='[{"confidenceLevel": "low_and_above", "filterType": "HARASSMENT"}, {"confidenceLevel": "high", "filterType": "SEXUALLY_EXPLICIT"}]'
       --full-uri='folders/308621292149/locations/global/floorSetting'
       --enable-floor-setting-enforcement=true

APIs REST

  • Atualize a configuração de limite mínimo do Model Armor para um determinado projeto.

     curl -X PATCH -d '{"filterConfig" :{"piAndJailbreakFilterSettings": { "filterEnforcement": "ENABLED"}, "maliciousUriFilterSettings": { "filterEnforcement": "ENABLED" }, "rai_settings":{"rai_filters":{"filter_type":"DANGEROUS", "confidence_level":"LOW_AND_ABOVE" },
      "rai_filters":{"filter_type":"HATE_SPEECH", "confidence_level":"LOW_AND_ABOVE" }, "rai_filters":{"filter_type":"HARASSMENT", "confidence_level":"LOW_ANDABOVE" }, "rai
      filters":{"filter_type":"SEXUALLY_EXPLICIT", "confidence_level":"LOW_AND_ABOVE" }}},"enable_floor_setting_enforcement":"true"}' -H "Content-Type: application/json" -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://modelarmor.googleapis.com/v1/projects/{project_id}/locations/global/floorSetting"
     

  • Atualiza a configuração de piso do Model Armor para uma determinada pasta.

      curl -X PATCH 
    -d '{"filterConfig" :{"piAndJailbreakFilterSettings": { "filterEnforcement": "ENABLED"}, "maliciousUriFilterSettings": { "filterEnforcement": "ENABLED" }},"enable_floor_setting_enforcement":"true"}'
    -H "Content-Type: application/json"
    -H "Authorization: Bearer $(gcloud auth print-access-token)"
    "https://modelarmor.googleapis.com/v1/folders/{folder}/locations/global/floorSetting"

  • Atualiza a configuração de piso do Model Armor para uma determinada organização.

     curl -X PATCH 
    -d '{"filterConfig" :{"piAndJailbreakFilterSettings": { "filterEnforcement": "ENABLED"}, "maliciousUriFilterSettings": { "filterEnforcement": "ENABLED" }},"enable_floor_setting_enforcement":"true"}'
    -H "Content-Type: application/json"
    -H "Authorization: Bearer $(gcloud auth print-access-token)"
    "https://modelarmor.googleapis.com/v1/organizations/{organization}/locations/global/floorSetting"

    Substitua:

    • gcloud auth print-access-token: o token de acesso da conta especificada.
    • PROJECT_ID: o ID do projeto ao qual o modelo pertence.
    • Folder: o ID da pasta do modelo.
    • Organization: o ID da organização do modelo.

      O comando de atualização retorna a seguinte resposta:

      {
      "name": "projects/$PROJECT_ID/locations/global/floorSetting",
      "updateTime": "2024-12-19T15:36:21.318191Z",
      "filterConfig": {
       "piAndJailbreakFilterSettings": {
        "filterEnforcement": "ENABLED"
      },
      "maliciousUriFilterSettings": {
       "filterEnforcement": "ENABLED"
        }
        }
      }
      

Violação das configurações do piso

Cada descoberta do serviço do Model Armor identifica uma violação de configuração de piso que ocorre quando um modelo do Model Armor não atende aos padrões mínimos de segurança definidos pelas configurações de piso da hierarquia de recursos. As configurações de piso definem o nível menos rigoroso permitido para cada filtro em um modelo. Uma violação de configuração de piso pode envolver um modelo que não inclui os filtros obrigatórios ou não atende ao nível mínimo de confiança para esses filtros. Quando uma violação é detectada, uma descoberta de alta gravidade é publicada no Security Command Center. A descoberta especifica a configuração de piso violada, o modelo que não está em conformidade e detalhes sobre a violação. Para mais informações, consulte Resultados do serviço do Model Armor.

Este é um exemplo do campo source_properties da violação de configuração de piso.

{
  "filterConfig": {
    "raiSettings": {
      "raiFilters": [
        {
          "filterType": "HATE_SPEECH",
          "confidenceLevel": {
            "floorSettings": "LOW_AND_ABOVE",
            "template": "MEDIUM_AND_ABOVE"
          }
        },
        {
          "filterType": "HARASSMENT",
          "confidenceLevel": {
            "floorSettings": "MEDIUM_AND_ABOVE",
            "template": "HIGH"
          }
        }
      ]
    },
    "piAndJailbreakFilterSettings": {
      "confidenceLevel": {
        "floorSettings": "LOW_AND_ABOVE",
        "template": "HIGH"
      }
    },
    "maliciousUriFilterSettings": {
      "floorSettings": "ENABLED",
      "template": "DISABLED"
    }
  }
}

A seguir