Edge-home-orchestration-go: [Discussão] Precisamos retificar SecurityMgr? (Tratamento de dados sensíveis)

Criado em 14 set. 2020  ·  6Comentários  ·  Fonte: lf-edge/edge-home-orchestration-go

enhancement question

Comentários muito úteis

@tdrozdovsky Plus, você poderia retificar se err for usado em nossa plataforma?

https://github.com/lf-edge/edge-home-orchestration-go/blob/22ce49b4b76ae78dfb75e14ef64399e5805c7d02/src/orchestrationapi/orchestration_api.go#L180

Eu pesquisei usando a variável err . O tratamento de erros é feito abaixo.

if len(deviceScores) <= 0 {
        return errorResp
} else if deviceScores[0].score == scoringmgr.INVALID_SCORE {
    return errorResp
}

O processamento adicional tornará o código mais complexo.

Portanto, sugiro ignorar a variável err .

    deviceResources[i].score, _ = orcheEngine.GetScoreWithResource(dev.resource)

Todos 6 comentários

@tdrozdovsky Isso se deve à minha análise em andamento com a ferramenta lgtm seguir.

https://lgtm.com/projects/g/lf-edge/edge-home-orchestration-go/alerts/?mode=list

Pessoalmente, acho que dados confidenciais são retornados por um acesso a passPhraseJWTPath . O que você acha? @tdrozdovsky

https://github.com/lf-edge/edge-home-orchestration-go/blob/22ce49b4b76ae78dfb75e14ef64399e5805c7d02/src/controller/securemgr/authenticator/authenticator.go#L70

Este pode ser o mesmo risco de segurança potencial mostrado a seguir.

https://github.com/lf-edge/edge-home-orchestration-go/blob/22ce49b4b76ae78dfb75e14ef64399e5805c7d02/src/controller/securemgr/authenticator/authenticator.go#L84

Bom ponto, eu sei e me lembro desse problema de segurança.

Estes apenas informam sobre uma tentativa fracassada de criar o arquivo passPhraseJWTFilePath .
Mas é claro que armazenar essas informações em arquivos (passPhrase, edge-orchestration.key, etc) é um risco de segurança.
Acho que no futuro isso deve ser resolvido com armazenamento seguro ou com sistema de controle de acesso como: SeLinux, SMACK, etc.

Obrigado por lembrete

@tdrozdovsky Obrigado por aceitar minha sugestão. Acabei de atribuir esse problema a você. Estamos ansiosos para ver sua outra contribuição valiosa em breve!

@tdrozdovsky Plus, você poderia retificar se err for usado em nossa plataforma?

https://github.com/lf-edge/edge-home-orchestration-go/blob/22ce49b4b76ae78dfb75e14ef64399e5805c7d02/src/orchestrationapi/orchestration_api.go#L180

Eu pesquisei usando a variável err . O tratamento de erros é feito abaixo.

if len(deviceScores) <= 0 {
        return errorResp
} else if deviceScores[0].score == scoringmgr.INVALID_SCORE {
    return errorResp
}

O processamento adicional tornará o código mais complexo.

Portanto, sugiro ignorar a variável err .

    deviceResources[i].score, _ = orcheEngine.GetScoreWithResource(dev.resource)

@tdrozdovsky Plus, você poderia retificar se err for usado em nossa plataforma?
https://github.com/lf-edge/edge-home-orchestration-go/blob/22ce49b4b76ae78dfb75e14ef64399e5805c7d02/src/orchestrationapi/orchestration_api.go#L180

Eu pesquisei usando a variável err . O tratamento de erros é feito abaixo.

if len(deviceScores) <= 0 {
      return errorResp
} else if deviceScores[0].score == scoringmgr.INVALID_SCORE {
  return errorResp
}

O processamento adicional tornará o código mais complexo.

Portanto, sugiro ignorar a variável err .

  deviceResources[i].score, _ = orcheEngine.GetScoreWithResource(dev.resource)

@tdrozdovsky É razoável. ^^ Você poderia sugerir o PR sobre isso?

Esta página foi útil?
0 / 5 - 0 avaliações