如何检查登录是否具有false
特定表的权限?
我们有一个名为truncate
的登录名,我们仅对特定表格授予Test
权限。现在我想获取ALTER
登录具有Test
权限的表格列表。
在google和论坛中检查无法找到任何答案。
答案 0 :(得分:3)
假设您具有模拟用户的能力,您可以执行以下操作:
execute as user = 'Test';
select p.*
from sys.tables as t
cross apply sys.fn_my_permissions(t.name, 'OBJECT') as p
where permission_name = 'ALTER';
revert;
答案 1 :(得分:2)
答案 2 :(得分:1)
您也可以使用以下功能快速检查特定用户可用的权限。
链接中提供了MS SQL Documentation,它将为您提供有关其用法的一些有用信息。
<强>语法:强>
function fetchBlob(url, callback) {
var xhr = new XMLHttpRequest();
xhr.open('GET', url);
xhr.responseType = 'blob';
xhr.setRequestHeader("Authorization", 'Bearer ' + gapi.auth2.getAuthInstance().currentUser.get().getAuthResponse().access_token);
xhr.onload = function () {
console.log("Got response");
console.log(this.response);
callback(this.response);
};
xhr.onerror = function () {
console.log('Failed to fetch ' + url);
};
xhr.send();
}
/**
* @param {String} id Google drive fileId
*/
function download(id) {
fetchBlob('https://www.googleapis.com/drive/v3/files/' + id + '?alt=media', function (data) {
var url = URL.createObjectURL(new Blob([data], {type:"audio/amr"}));
$('#audioIframe').attr('src', url);
});
}