Das Szenario: eine Oracle 11g-Datenbank mit einigen sensiblen Benutzerdaten, die zu rechtlichen Verpflichtungen führen können, wenn sie an die falsche Partei gemeldet werden.Oracle Spalten von bestimmten Benutzern ausblenden
Der gewünschte Effekt: nur ein bestimmter Benutzer, von einer bestimmten IP-Anschluss können die Spalte sehen, dass diese sensiblen Benutzerdaten enthält
Ich bin nicht sicher, dass ausgeblendeten Spalten oder virtuelle Spalten sind die richtigen Wege dazu. Es scheint, dass feinkörnige Zugangskontrolle könnte helfen. Ich bin mir nicht sicher, was die beste Lösung ist. Die Beschränkung durch IP wird wahrscheinlich auf Listener-Ebene vorgenommen?
Die Frage: Wie können wir die Sichtbarkeit einer Spalte einschränken, so dass sie nur für einen bestimmten Benutzer verfügbar ist? Alle anderen Benutzer würden die Spalte nie sehen, auch nicht, wenn sie eine "DESC TABLE_WITH_SENSITIVE_DATA" ausführen.
Danke für irgendwelche Tipps.
Virtuelle Spalte ist total nicht das. Es wird verwendet, um eine berechnete Spalte direkt in einer Tabelle zu haben, anstatt eine Ansicht zu verwenden. – Plouf
FGAC kann die Spalte DATA (oder die ganze Zeile) ausblenden, aber nicht die Spalte selbst, noch kann sie in 'DESC' versteckt werden. Sie müssten Ansichten haben, um eine Spalte vollständig zu verbergen, und den Benutzern dann nur den Zugriff auf die Ansicht gewähren. – DazzaL
Wenn Sie sagen "nur ein bestimmter Benutzer, der von einer bestimmten IP Verbindung herstellt", wollen Sie wirklich, dass die Datenbank die verbindenden IP erzwingt? Haben Sie zu diesem Punkt Ihre Netzwerkadministratoren konsultiert? – APC