csig_腾讯云(二面凉经)
发表于|更新于|项目面经
|浏览量:
面经
文章作者: NeverGYu
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 GYu的妙妙屋!
相关推荐
2026-03-23
靖安科技 (一面)
面试 用户鉴权 用的什么进行鉴权?鉴权方式是什么?证书鉴权的方式是什么? 两段式鉴权 业务登录鉴权:发生于 SDK 与 管理平台 之间 SDK 用 用户名/密码 + optional TOTP 调 SDKAuth,用于确认 “这个人是不是合法用户”。 SDK 登录成功后,平台会下发 ca/ cert /key/ server[],客户端再用这些材料去建立 OpenVPN 实例去建立连接。 VPN 接入鉴权:发生于 OpenVPN 插件与 管理平台 之间 到了服务端,插件在 TLS_VERIFY 阶段取客户端证书的 **序列号 SN 和 CN**,再调用同步 RPC 方法 CertStatus 查询这个证书当前是不是有效、属于哪个实体、对应哪个用户。 所以插件做的主鉴权不是用户名/密码,而是: mTLS 握手 远端证书状态校验。 证书里面的内容是什么?基于什么的呢? 这套系统底层是基于 X.509 证书 + PKI/CA 体系 的 OpenVPN 双向 TLS。 插件实际会读取证书里的 CN 和...
2026-03-26
csig_腾讯云(一面)
面经C++ 八股 继承和多态这种面向对象的设计?(把共同点抽出来复用,把不同点留给子类自己实现) 多态解决了什么问题,C++ 为什么要使用多态? 多态:主要用于对同一个接口,进行不同的实现; C++ 使用多态主要是解决代码复用; 不用继承,多态的这种设计应该怎么做呢? 静态多态:模板、函数重载、工厂函数 多态的虚函数可以是内联函数嘛? 虚函数可以是内联函数,类内定义的成员函数默认就有 inline 属性,在语法上完全没问题; “能声明成 inline” 和 “调用时真的被内联展开” 不是一回事。 inline 本质上只是给编译器一个建议 虚函数在通过 父类指针/引用调用时,是 运行时动态绑定,编译器在 编译阶段 通常不知道最终会调用哪个版本,所以一般不能直接内联; 纯虚函数是干嘛的? 这个行为必须有,但父类没法给出通用实现; 纯虚函数不可以被实例化; 强制子类实现接口,子类没有实现父类的纯虚函数,那子类自己也还是抽象类。 STL 了解吧,一起讲 map 和 unordered_map map 底层使用 红黑树; 按 key...
2026-03-23
csig_腾讯视频 (一面凉经)
面试问题 有没有实际上有用户使用这个 vpn,插件是不是只是把客户端上报的数据存储起来?是线上的业务嘛? 第一版,确实有用户在使用; 插件 不只是一个只做客户端上报存储的插件,而是一个和 客户端 进行通信的 服务端控制组件; 插件至少做了三类实质工作: 在 OpenVPN 的 TLS_VERIFY 阶段调用平台的 CertStatus 做证书状态校验; 拉取 UserAccessRules,再用 nftables 下发用户级访问控制; 通过 UserConnection 上报连接状态,并通过 PluginMsgPipe 接收动态规则更新; 拥有 流量解析 和 Kafka 投递能力,这已经不是单纯埋点了; grpc 同步和异步通信框架怎么去实现的?原来是什么样的?提升了什么性能? 同步 RPC 主要用在必须马上拿结果的链路上,这些请求如果不马上返回,后续流程就走不下去; 异步 RPC 主要用在不应该阻塞 OpenVPN 主线程的地方,比如 用户访问规则拉取 和 连接状态上报。 双向流主要用在 长生命周期 控制通道上; 托管节点和平台之间是...
公告
This is GYu Blog
