check if cert exist in test_ae_keys_setup.phpt

This commit is contained in:
v-kaywon 2017-07-24 15:10:05 -07:00 committed by Jenny Tam
parent 51d358ab33
commit 5c2064e762
2 changed files with 10 additions and 5 deletions

View file

@ -85,8 +85,7 @@ function IsAEQualified($conn)
$msodbcsql_ver = sqlsrv_client_info($conn)['DriverVer'];
$server_ver = sqlsrv_server_info($conn)['SQLServerVersion'];
$msodbcsql_maj = explode(".", $msodbcsql_ver)[0];
$msodbcsql_min = explode(".", $msodbcsql_ver)[1];
if ($msodbcsql_maj < 13 || ( $msodbcsql_maj == 13 && $msodbcsql_min == 0 ) || explode('.')[0] < 13)
if ($msodbcsql_maj < 13 || explode('.', $server_ver)[0] < 13)
return false;
return true;
}

View file

@ -1,7 +1,7 @@
--TEST--
retrieval of names of column master key and column encryption key generated in the database setup
--SKIPIF--
<?php if (strtoupper(substr(PHP_OS, 0, 3)) != 'WIN') die("Skipped: Test for Windows"); ?>
<?php if (strtoupper(substr(PHP_OS, 0, 3)) !== 'WIN') die("Skipped: Test for Windows"); ?>
--FILE--
<?php
sqlsrv_configure( 'WarningsReturnAsErrors', 0 );
@ -10,7 +10,13 @@ sqlsrv_configure( 'LogSeverity', SQLSRV_LOG_SEVERITY_ALL );
require( 'MsCommon.inc' );
$conn = Connect();
if (IsAEQualified($conn)){
if (IsAEQualified($conn)){
$verify_cert = shell_exec('certutil -user -verifyStore My 237F94738E7F5214D8588006C2269DBC6B370816');
$cert_exists = false;
if (strpos($verify_cert, 'successfully') != false)
{
$cert_exists = true;
}
$query = "SELECT name FROM sys.column_master_keys";
$stmt = sqlsrv_query($conn, $query);
@ -22,7 +28,7 @@ if (IsAEQualified($conn)){
sqlsrv_fetch($stmt);
$encryption_key_name = sqlsrv_get_field($stmt, 0);
if ($master_key_name == 'AEMasterKey' && $encryption_key_name == 'AEColumnKey'){
if ($cert_exists && $master_key_name == 'AEMasterKey' && $encryption_key_name == 'AEColumnKey'){
echo "Test Successfully.\n";
}
sqlsrv_free_stmt($stmt);