Edge-home-orchestration-go: [рдЪрд░реНрдЪрд╛] рдХреНрдпрд╛ рд╣рдореЗрдВ SecurityMgr рдХреЛ рд╕реБрдзрд╛рд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? (рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдбреЗрдЯрд╛ рд╣реИрдВрдбрд▓рд┐рдВрдЧ)

рдХреЛ рдирд┐рд░реНрдорд┐рдд 14 рд╕рд┐рддре░ 2020  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: lf-edge/edge-home-orchestration-go

рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рд╕реЛрдЪрддрд╛ рд╣реВрдВ рдХрд┐ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдбреЗрдЯрд╛ passPhraseJWTPath рддрдХ рдкрд╣реБрдВрдЪ рджреНрд╡рд╛рд░рд╛ рд╡рд╛рдкрд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рддреБрдо рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реЛ? @tdrozdovsky

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

рдпрд╣ рдЕрдиреБрд╕рд░рдг рдХреЗ рд╕рдорд╛рди рд╕рдВрднрд╛рд╡рд┐рдд рд╕реБрд░рдХреНрд╖рд╛ рдЬреЛрдЦрд┐рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

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

enhancement question

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

@tdrozdovsky Plus, рдЕрдЧрд░ рд╣рдорд╛рд░реЗ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдореЗрдВ err рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдХреНрдпрд╛ рдЖрдк рдЗрд╕реЗ рдареАрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

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

рдореИрдВрдиреЗ err рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╢реЛрдз рдХрд┐рдпрд╛ред рддреНрд░реБрдЯрд┐ рдкреНрд░рдмрдВрдзрди рдиреАрдЪреЗ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

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

рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЛрдб рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдмрдирд╛ рджреЗрдЧрд╛ред

рдЗрд╕рд▓рд┐рдП, рдореИрдВ err рдЪрд░ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВред

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

рд╕рднреА 6 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

@tdrozdovsky Plus, рдЕрдЧрд░ рд╣рдорд╛рд░реЗ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдореЗрдВ err рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдХреНрдпрд╛ рдЖрдк рдЗрд╕реЗ рдареАрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

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

@tdrozdovsky рдпрд╣ рдЯреВрд▓ lgtm рд╕рд╛рде рдореЗрд░реЗ рдЪрд▓ рд░рд╣реЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рдХрд╛рд░рдг рд╣реИред

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

рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рд╕реЛрдЪрддрд╛ рд╣реВрдВ рдХрд┐ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдбреЗрдЯрд╛ passPhraseJWTPath рддрдХ рдкрд╣реБрдВрдЪ рджреНрд╡рд╛рд░рд╛ рд╡рд╛рдкрд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рддреБрдо рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реЛ? @tdrozdovsky

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

рдпрд╣ рдЕрдиреБрд╕рд░рдг рдХреЗ рд╕рдорд╛рди рд╕рдВрднрд╛рд╡рд┐рдд рд╕реБрд░рдХреНрд╖рд╛ рдЬреЛрдЦрд┐рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

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

рдЕрдЪреНрдЫрд╛ рдмрд┐рдВрджреБ, рдореИрдВ рдЗрд╕ рд╕реБрд░рдХреНрд╖рд╛ рдореБрджреНрджреЗ рдХреЛ рдЬрд╛рдирддрд╛ рдФрд░ рдпрд╛рдж рд░рдЦрддрд╛ рд╣реВрдВред

рдпреЗ рдХреЗрд╡рд▓ passPhraseJWTFilePath рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдХреЗ рдЕрд╕рдлрд▓ рдкреНрд░рдпрд╛рд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реВрдЪрд┐рдд рдХрд░рддреЗ рд╣реИрдВред
рд▓реЗрдХрд┐рди рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдлрд╛рдЗрд▓реЛрдВ (рдкрд╛рд╕рдлреНрд░реЗрдЬ, рдПрдЬ-рдСрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрд╢рди.рдХреА, рдЖрджрд┐) рдореЗрдВ рдРрд╕реА рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛ рдПрдХ рд╕реБрд░рдХреНрд╖рд╛ рдЬреЛрдЦрд┐рдо рд╣реИред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЗрд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рднрдВрдбрд╛рд░рдг рдпрд╛ рдПрдХреНрд╕реЗрд╕ рдХрдВрдЯреНрд░реЛрд▓ рд╕рд┐рд╕реНрдЯрдо рдЬреИрд╕реЗ: SeLinux, SMACK, рдЖрджрд┐ рдХреЗ рд╕рд╛рде рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдпрд╛рдж рджрд┐рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж

@tdrozdovsky рдореЗрд░реЗ рд╕реБрдЭрд╛рд╡ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдореИрдВрдиреЗ рдЕрднреА рдпрд╣ рдорд╛рдорд▓рд╛ рдЖрдкрдХреЛ рд╕реМрдВрдкрд╛ рд╣реИред рд╣рдо рдЬрд▓реНрдж рд╣реА рдЖрдкрдХрд╛ рдПрдХ рдФрд░ рдореВрд▓реНрдпрд╡рд╛рди рдпреЛрдЧрджрд╛рди рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рд╣реИрдВ!

@tdrozdovsky Plus, рдЕрдЧрд░ рд╣рдорд╛рд░реЗ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдореЗрдВ err рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдХреНрдпрд╛ рдЖрдк рдЗрд╕реЗ рдареАрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

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

рдореИрдВрдиреЗ err рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╢реЛрдз рдХрд┐рдпрд╛ред рддреНрд░реБрдЯрд┐ рдкреНрд░рдмрдВрдзрди рдиреАрдЪреЗ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

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

рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЛрдб рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдмрдирд╛ рджреЗрдЧрд╛ред

рдЗрд╕рд▓рд┐рдП, рдореИрдВ err рдЪрд░ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВред

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

@tdrozdovsky Plus, рдЕрдЧрд░ рд╣рдорд╛рд░реЗ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдореЗрдВ err рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдХреНрдпрд╛ рдЖрдк рдЗрд╕реЗ рдареАрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
https://github.com/lf-edge/edge-home-orchestration-go/blob/22ce49b4b76ae78dfb75e14ef64399e5805c7d02/src/orchestrationapi/orchestration_api.go#L180

рдореИрдВрдиреЗ err рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╢реЛрдз рдХрд┐рдпрд╛ред рддреНрд░реБрдЯрд┐ рдкреНрд░рдмрдВрдзрди рдиреАрдЪреЗ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

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

рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЛрдб рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдмрдирд╛ рджреЗрдЧрд╛ред

рдЗрд╕рд▓рд┐рдП, рдореИрдВ err рдЪрд░ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВред

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

@tdrozdovsky рдпрд╣ рдЙрдЪрд┐рдд рд╣реИред ^^ рдХреНрдпрд╛ рдЖрдк рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рдВрдмрдВрдзрд┐рдд рдкреАрдЖрд░ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ?

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

t25kim picture t25kim  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

MoonkiHong picture MoonkiHong  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

MoonkiHong picture MoonkiHong  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

MoonkiHong picture MoonkiHong  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

t25kim picture t25kim  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ