SECURITY_ATTRIBUTES 实现最低权限的问题

SECURITY_ATTRIBUTES 实现最低权限 主要用于多进程之间共享数据空间的句柄的权限设置,
若高权限 进程 设置默认值 NULL,对于低权限进程来说 可能无法读取。

参考文章
windows中以最低权限(SECURITY_ATTRIBUTES)创建内核对象

创建一个比EveryOne SECURITY_ATTRIBUTES更开放的安全属性

实现代码

            HANDLE CreateLocalShareMen()
            {

                HANDLE hMapFile;
                SECURITY_ATTRIBUTES SecAttr;
                SECURITY_DESCRIPTOR SecDesc;

                SecAttr.nLength = sizeof(SecAttr);
                SecAttr.bInheritHandle = FALSE;
                SecAttr.lpSecurityDescriptor = &SecDesc;

                InitializeSecurityDescriptor(&SecDesc, SECURITY_DESCRIPTOR_REVISION);
                SetSecurityDescriptorDacl(&SecDesc, TRUE, 0, FALSE);


                hMapFile = CreateFileMapping(INVALID_HANDLE_VALUE, &SecAttr, PAGE_READWRITE, 0, TALK_LYNC_SHAREMEN_SIZE, TALK_LYNC_SHAREMEN);
                if(hMapFile == NULL)
                {
                    ErrLogW("get provity error : %d",GetLastError());
                }

                return  hMapFile;
            }
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值