刚刚调试成功exosip鉴权,现在总结下。

1.sip注册。流程:首先客户端发送注册包不带鉴权信息,服务器探测到不带鉴权信息的register包会回复401,后客户端回复带鉴权信息的注册包,服务器验证密码和账号,通过就返回200成功包,不通过返回403访问拒绝。

客户端注册方法:eXosip_register_build_initial_register,eXosip_register_send_register两个函数即可发送第一次注册包。后eXosip_event_wait检测事件,会检测到注册失败且状态号为401的事件,调用eXosip_add_authentication_info,eXosip_register_build_register,eXosip_register_send_register三个函数即可。也可以先eXosip_add_authentication_info,后在eXosip_event_wait后调用eXosip_automatic_refresh()即可自动处理并发送带鉴权的数据包。

重点是服务器端:当收到鉴权包后,需要对鉴权数据和服务器端数据进行比对。服务器端自动生成随机nonce字段,realm字段发送给客户端,客户端根据这些字段把nonce, realm, 用户名,密码一起通过MD5加密并放到response字段发送给服务器。服务器端根据客户端事先注册的用户密码,之前发给客户端的nonce, realm生成MD5,与客户端发来的的MD5进行比较,一样则鉴权通过,返回200 ok包,不一样返回403拒绝包。几个有关服务器端生成md5的链接希望能帮到大家。点击打开链接, 点击打开链接, 点击打开链接。

exosip鉴权及使用相关推荐

  1. java鉴权_一个开箱即用的高效认证鉴权框架,专注于restful api的认证鉴权动态保护...

    作者:tomsun28 来源:SegmentFault 思否 写在开头 看了看这个专栏的最近一篇文章已经是两年前了,时间过得好快.应该是出学校后时间就很快了.两年前因为用shiro后,自己就按着想法开 ...

  2. 请求令牌 接口_时序图说明JWT用户认证及接口鉴权的细节

    JWT用户认证及接口鉴权的细节以及原理 一.回顾JWT的授权及鉴权流程 在笔者的上一篇文章中,已经为大家介绍了JWT以及其结构及使用方法.其授权与鉴权流程浓缩为以下两句话: 授权:使用可信用户信息(用 ...

  3. 快速搭建一个网关服务,动态路由、鉴权看完就会(含流程图)

    [文章来源]https://sourl.cn/tcbSPi 前 言 本文记录一下我是如何使用Gateway搭建网关服务及实现动态路由的,帮助大家学习如何快速搭建一个网关服务,了解路由相关配置,鉴权的流 ...

  4. 面试官:谈谈JWT鉴权的应用场景及使用建议?

    作者:mantou叔叔 || 编辑:搜云库技术团队 出处:https://dwz.cn/7bikj3yk 1. JWT 介绍 JSON Web Token(JWT)是一个开放式标准(RFC 7519) ...

  5. ASP.netcore MVC钉钉H5微应用(二)鉴权

    官方文档:鉴权 由于官方文档没有C#的,所以自己弄了个C#的 需要注意的是,不是所有功能都需要鉴权,但是在需要鉴权的地方,一定要有 -第一步:获得access_token 我使用的是企业内部应用 具体 ...

  6. postman登录鉴权之接口测试

    一.背景 在做接口测试的时候,有些接口向后台请求数据的时候,是需要用户在登录情况下才有数据返回. 以电商平台为例,用户的个人中心,用户的订单列表,用户的支付信息等等,所有用户维度的数据都是需要登录态. ...

  7. labview的用户身份认证系统设计_elasticsearch 集群身份认证与用户鉴权

    elasticsearch在默认安装后,没有提供任何安全保护. 在elasticsearch.yml配置了server.host=0.0.0.0导致公网可以访问es集群. 数据安全的基本需求: 1.身 ...

  8. emqx配置mysql认证_emqx使用mysql完成用户密码验证和ACL鉴权-Go语言中文社区

    摘要:前几篇博客介绍的是使用配置文件配置了ACL和客户端用户名密码配置实现生产环境下的安全登录和权限控制,各项配置比较繁琐,修改起来比较麻烦,下面介绍使用mysql进行统一的管理控制. 环境说明: 1 ...

  9. php用户鉴权,app开发之鉴权 PHP版

    当我们在写接口的时候,一定会碰到接口安全相关.一般会有两种情况.不需要用户参与,比如客户端读取新闻列表.用户列表. 需要用户参与,比如修改用户的信息,评论新闻的内容等. 针对1的设计,可以在公共参数上 ...

  10. LiveGBS-GB28181流媒体服务如何实现跨域鉴权

    LiveGBS 实现了 GB28181 协议,能够接入各个厂家的监控设备和监控平台,实现统一管理,和 web 端无插件播放,同时支持手机.微信播放. LiveGBS 提供简单的登录鉴权,客户端通过用户 ...

最新文章

  1. GitHub开源新命令行工具:在终端里创建、管理PR成现实
  2. 数字图像处理与Python实现笔记之基础知识
  3. C++primer第十章 泛型算法 10.1 概述 10.2 初识泛型算法
  4. 【NOIP2015】D2-T1跳石头,二分答案
  5. sqlserver 更新 datetime 数据_SqlServer 关于 datetime 的更新引发的思考
  6. 【Linux 命令学习第一天
  7. 拓端tecdat|SAS可视化高级ODS图形:PROC SGPLOT,BY组和SG注释
  8. Template Method模板方法
  9. 张磊:极少有人真正理解时间的价值
  10. Linux中命令行终端切换工具screen
  11. html手机表白弹窗,火热的程序员表白方式,调皮弹窗表白代码,赶紧拿去试试吧...
  12. 实验二 概念模型ER图
  13. 双绞线连接布线方案(计算机网络)
  14. java实现远程控制
  15. C语言基础课 编写程序之1.编写一个判断素数的函数,并利用该函数输出100~200的所有素数2.编写一个函数fun(),函数功能是:判断一个整数是否既是5又是7的整倍数,若是,输出yes,不是,输出n
  16. SSD性能测试工具-AS_SSD Benchmark
  17. python pandas 实战 百度音乐歌单 数据分析
  18. web免登钉钉微应用
  19. 任务3、监控界面设计
  20. angular UI框架

热门文章

  1. mini programer(1)
  2. linux shell 列表循环,shell脚本中,for基于列表进行循环的实现方法
  3. java怎么实现直方图均衡化_直方图均衡化原理与实现
  4. Fluent UDF中调用Matlab函数(以误差函数erf为例)
  5. samba服务testparm时提示rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)处理办法
  6. Stata数据处理:清洗CFPS数据库
  7. 安卓10不支持qmc解码_基于安卓10的LineageOS 17.1来了,支持一加、小米、LG等机型...
  8. 使用Ghost还原系统为什么容易出问题?
  9. 电子通信协议之SPI通信协议篇
  10. 赫兹的单位换算_hz单位换算