2017-01-28 10 views
1

아래 링크를 사용하여 현재 프로젝트에서 동적 데이터 마스킹 개념을 구현했습니다. 원본 값이지만 마스크 값이 아닌 azure SQL 데이터베이스에 수정 된 마스크 값을 저장하는 방법은 무엇입니까?

https://docs.microsoft.com/en-us/azure/sql-database/sql-database-dynamic-data-masking-get-started

나는 그 후 나는 SSN은 XXXX-XX-0001과 같은 신청의 마스크 데이터를 볼 수 있어요 SSN 필드의 마스크를 추가했다. 하지만 SSN이 (XXXX-XX-0002)을 수정하고 하늘색 SQL 데이터베이스에 저장하면 수정 된 데이터는 원래 SSN 값이 아닌 마스크 된 데이터로 저장됩니다.

원래 값으로 업데이트 된 마스크 값을 하늘색 SQL 데이터베이스에 저장하는 방법을 알려주시겠습니까?

프라 딥 DDM에 대한이 공식 document 상태로

답변

3

:

다이내믹 데이터 마스킹에 미치는 영향을 최소화 나타 내기 위해 얼마나 많은 중요한 데이터를 지정하는 고객을 가능하게함으로써 민감한 데이터에 대한 무단 액세스를 방지하는 데 도움이 응용 프로그램 계층 은 데이터베이스의 데이터는 변경되지 않지만 지정된 데이터베이스 필드를 통해 쿼리의 결과 집합에 중요한 데이터를 숨기는 정책 기반 보안 기능입니다. 마스킹에서 제외

다이내믹 데이터 마스킹 정책

SQL 사용자 - SQL 쿼리 결과에 마스크되지 않은 데이터를 얻을 것이다 SQL 사용자 또는 AAD 정체성의 세트입니다. 관리자 권한이있는 사용자는 항상 마스킹에서 제외되며 마스크가없는 원본 데이터가 표시됩니다.

동적 데이터 마스킹의 목적은 민감한 데이터의 노출을 제한하여 데이터에 액세스하지 않아야하는 사용자가 데이터를 볼 수 없게하는 것입니다.

귀하의 설명에 따르면, 나는 당신의 SQL 사용자가 쓰기 권한이 있다고 가정하지만 를 해제 권한이없는. 이 시점에서 SSN 필드를 Azure SQL 데이터베이스로 업데이트하면 SSN 필드에 정적으로 마스크 된 데이터가 포함됩니다.

GRANT UNMASK TO TestUser; 
EXECUTE AS USER = 'TestUser'; 
SELECT * FROM Membership; 
REVERT; 

-- Removing the UNMASK permission 
REVOKE UNMASK TO TestUser; 

을 아니면 푸른 포털에 로그인 SQL 사용자 또는 AAD를 입력 할 수 있습니다 다음과 같이

가면을 벗겼다 데이터를 볼 수있는 권한을 부여하는 경우, 당신은 당신의 SQL 사용자에게 를 해제 권한을 부여 할 수 있습니다 로 마스킹에서 제외되어야 정체성은 다음과 같습니다 요약

, 당신이 있기 때문에 DDM을 사용하여 쿼리 결과에서 중요한 데이터를 숨기려면 쓰기 권한 (db_datawriter db 역할)을 사용자에게 부여하지 않는 것이 좋습니다. 이 tutorial에서 "모범 사례 및 일반적인 사용 사례"섹션을 참조하십시오.또한 구성 및 SQL Azure 동적 데이터 마스킹 사용자 지정에 대해서는 tutorial을 참조 할 수 있습니다.