Avvio di un eseguibile C ++ da un'app C # e mantenimento del contesto di sicurezza basato sui ruoli

StackOverflow https://stackoverflow.com/questions/462160

  •  19-08-2019
  •  | 
  •  

Domanda

Prima di tutto so che questo è probabilmente un ordine elevato ma ... :)

Abbiamo alcuni software che interagiscono con l'hardware prodotto dalla nostra azienda. Questo software carica un assembly .NET e funge da interfaccia per l'hardware.

Attualmente abbiamo un'applicazione 'Launcher' scritta in C # che fornisce sicurezza basata sui ruoli. Questo "Launcher" avvia l'eseguibile C ++ con argomenti da riga di comando (l'assembly .NET da utilizzare) tramite un processo. L'eseguibile C ++ carica quindi l'assembly .NET fornito e lo utilizza per eseguire le sue azioni.

Il problema è perché lancio l'applicazione C ++ in un processo perdo il contesto di sicurezza basato sul ruolo fornito da 'Launcher'.

Esiste un modo per avviare l'applicazione C ++ e mantenere il contesto di sicurezza basato sul ruolo?

Grazie per aver dedicato del tempo a leggere questo. Se hai domande, faccelo sapere.

Grazie

Adam

È stato utile?

Soluzione

Dovresti modificare l'applicazione C ++ per controllare anche i ruoli.

Se puoi farlo, potresti considerare di suddividere parte dell'applicazione C # in più assiemi. In particolare, prendere i ruoli come parte dell'applicazione C # e compilarlo come dll con estensioni COM / ActiveX.

Quindi è possibile chiamare la DLL C # (tramite COM) per verificare le autorizzazioni.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top