【Django用户认证】通过阿里云如何实现实名认证

这篇具有很好参考价值的文章主要介绍了【Django用户认证】通过阿里云如何实现实名认证。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

我最近在我的项目上有实名认证的需求,主要实现人名和身份证号码的验证,针对这一块具体怎么做的文章比较少,我解决问题之后,觉得还是把这些坑都写清楚,方便初学者。

前世今生

网络并非法外之地。然而,却存在部分网络用户利用虚拟的网络空间,实施网络暴力、造谣诽谤、购买水军、传播违法侵权视频图片等行为,严重侵害了他人的合法权益与社会公共利益。为治理网络不良现象,净化网络空间,中国相关政府主管部门采用以网络用户实名认证为基础的网络实名制的管理方式,2015年3月1日生效的《互联网用户账号名称管理规定》强调“互联网信息服务提供者应当按照“后台实名、前台自愿”的原则,要求互联网信息服务使用者通过真实身份信息认证后注册账号。”自此,对互联网信息服务提供者明确了“后台实名、前台自愿”的实名认证原则。知

实践中,目前存在以下四种主流的实名认证方式:

1、基于手机号的实名认证方式。这是最简单、最基本的实名认证方式。指互联网平台运营者通过收集用户的实名认证的手机号并转给第三方服务商,由第三方服务商向用户发送验证码,如果用户输入验证码一致,则证明用户是在使用已经实名认证的手机号注册。

2、基于第三方应用接口的实名认证方式。指互联网平台运营者提供用户从第三方应用接口注册登录方式,例如微信、支付宝等接口登录,以获得第三方的相关实名认证信息。

3、基于身份证实名认证方式。在此种模式下,根据对于实名认证信息真实性的要求不同,与第三方身份验证服务商合作,通过收集二要素(姓名和身份证号码)、三要素(姓名、身份证号码、银行卡)、四要素(姓名、身份证号码、银行卡、手机预留号码)等信息进行实名认证。

4、基于视频活体检测实人认证方式。如果说实名认证是为了证明注册某账号使用的身份信息是真实的,那么实人认证就是为了证明持证者本人在使用此账号,通常会采用活体检测、人脸识别等方式,多用于金融机构(如支付宝)、政府机构(如随申办、交管12123)、网络游戏未成年人防沉迷系统等。

上述四种实名认证方式所需要的个人信息以及实名认证的准确性依次递增,一般而言,APP运营者通过“基于手机号的实名认证方式”即满足了最基本的实名认证要求,如APP所处行业类型需要遵守更加严格的安全要求,亦可增加更加准确的实名认证方式。

场景

场景一:用户实名注册

在很多网站或app里实现在线刷脸实名认证,可以有效防止冒名开户,减少用户现场开户的时间成本,提高服务效率。

场景二:身份验证

在保险行业,由于被保人因为年龄、疾病等原因无法由本人办理业务时,可以调用增强版实人认证服务,确定参保人的真实身份和存活状态。

基本概念

实名认证主要分为实名认证二三四要素,二要素就是身份证、姓名. 三要素就是身份证、姓名、银行卡号. 四要素就是身份证、姓名、银行卡号、手机号. 此外还有身份证,姓名、银行卡号,手机号,CVV2,EXP的六要素验证。我这里介绍的都是以阿里云平台上的二要素验证方案。

相关法律

《网络安全法》第四十三条规定,网络运营者应按照法律、行政法规的规定和与用户的约定,收集使用个人信息。 据此规定,以实名认证为由收集的个人信息不应用于其他用途,在使用实名认证接口服务时,不得私自截留、存储此部分信息。
《互联网用户账号信息管理规定》第九条规定,公众账号信息服务平台对申请注册从事经济、教育、医疗卫生、司法等领域信息内容生产的公众账号,应当要求用户在注册时提供其专业背景,以及依照法律、行政法规获得的职业资格或者服务资质等相关材料,并进行必要核验。


提示:以下是本篇文章正文内容,下面案例可供参考

一、实名二要素

实名二要素也有叫做身份证二要素

(一)阿里云云市场-三方公司

此处以云市场其中一个为例。

1.链接

https://market.aliyun.com/products/57000002/cmapi025518.html

2.参数

参数包括AppCode以及名字和号码,AppCode是在云视窗控制台获得。
【Django用户认证】通过阿里云如何实现实名认证

3.示例

import json
import requests
host = 'https://idenauthen.market.alicloudapi.com'
path = '/idenAuthentication'
method = 'POST'
appcode = ''  # 你自己的AppCode
querys = ''
bodys = {}
url = host + path

bodys['idNo'] = '13028********058' #身份证号码
bodys['name'] = '李四' # 名字

post_data = json.dumps(bodys)  #
headers = {
    'Authorization': 'APPCODE ' + appcode,
    'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'
}
request = requests.post(url=url, headers=headers, data=bodys)
print(request.json())

(二)阿里云服务-API接口

1.链接

https://help.aliyun.com/document_detail/190145.html

2.准备

需要企业账户,开通增强版实人认证,在控制台创建认证场景,才能获得认证场景ID。即SceneId参数。

3.参数

在使用参数时,实际使用是以Mode模式来传递不同的参数。
Mode模式为VERIFY_ID_NAME,就是使用名字和号码验证,应该使用以下参数:

{
	'SceneId':'2中获取的认证场景id',
	'OuterOrderNo':'OuterOrderNo', # 商户请求的唯一标识
	'Mode':'VERIFY_ID_NAME',  # 二要素认证需要VERIFY_ID_NAME模式
	'CertType':'IDENTITY_CARD',
	'CertName':'张三', # 姓名
	'CertNo':'330103xxxxxxxxxxxx', # 身份证号码
}

Mode模式为OCR_ID,就是使用身份证照片,应该使用以下参数:

{
	'SceneId':'2中获取的认证场景id',
	'OuterOrderNo':'OuterOrderNo', # 商户请求的唯一标识
	'Mode':'OCR_ID',  # 二要素认证需要VERIFY_ID_NAME模式
	'CertType':'IDENTITY_CARD',
	'CertUrl':'https://www.aliyun.com/cert.jpeg', # 照片的url
}

Mode模式为OCR_VERIFY_ID_NAME,就是使用身份证照片,同时输入名字和号码,应该使用以下参数:

{
	'SceneId':'2中获取的认证场景id',
	'OuterOrderNo':'OuterOrderNo', # 商户请求的唯一标识
	'Mode':'OCR_VERIFY_ID_NAME',  # 二要素认证需要VERIFY_ID_NAME模式
	'CertType':'IDENTITY_CARD',
	'CertName':'张三', # 姓名
	'CertNo':'330103xxxxxxxxxxxx', # 身份证号码
	'CertUrl':'https://www.aliyun.com/cert.jpeg', # 照片的url
}

【Django用户认证】通过阿里云如何实现实名认证

4.计费

【Django用户认证】通过阿里云如何实现实名认证

总结

本次实现的是实名二要素验证,其他要素验证未做说明,希望通过参考本章内容对您有所帮助。文章来源地址https://www.toymoban.com/news/detail-455506.html

到了这里,关于【Django用户认证】通过阿里云如何实现实名认证的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 阿里实名认证Java版(详细教程)

    【实名认证接口】身份证实名认证接口 /姓名和号码二要素一致性查询-【公安授权/实时更新】【最新版】-云市场-阿里云点击上面进入阿里实名认证api 来到这个界面之后,(测试的话直接领取免费的),购买完成会拿到AppKey和AppCode(实名认证这里没有用到AppKey)。 回到上面

    2024年02月11日
    浏览(47)
  • 阿里云账号企业实名认证和个人有什么区别?

    阿里云账号根据实名认证主体分为个人认证和企业认证两种,企业实名认证和个人实名认证有什么区别?区别大了,如果公司的阿里云账号使用员工的个人身份进行实名认证,一旦员工离职,公司账号就找不回来了。阿里云百科来详细说下阿里云账号个人实名认证和企业实名

    2024年01月19日
    浏览(62)
  • Python使用阿里API进行身份证实名认证

    孟莉苹,女,西安工程大学电子信息学院,2021级硕士研究生,张宏伟人工智能课题组 研究方向:机器视觉与人工智能 电子邮件:2425613875@qq.com 凭借领先的人工智能与知识图谱技术,对身份证正反面自动识别,并提取姓名、出生日期、身份证号、住址、性别、民族、发证机关

    2024年02月02日
    浏览(51)
  • 阿里云国际站注册充值方便吗用不用实名认证

    阿里云国际站注册充值方便吗用不用实名认证 阿里云国际站支持多种方式充值,免实名,免备案,免绑卡 备案前域名必须实名认证吗? 根据工信部2017年全面域名实名认证的要求,所有存量域名以及新注册域名均需完成域名实名认证。若域名注册成功后未通过实名审核,会被

    2023年04月18日
    浏览(51)
  • 阿里云国际站实名认证上传材料填写样例(域名持有者为组织)

           聚搜云是阿里云国际站代理商;阿里云,全球领先的云计算服务平台,现已支持国际业务,云计算第一平台,云产品解决方案,享多线独享带宽。 将您的业务放心托管给中国最大且最值得信赖的云服务提供商、全球第三大网站托管服务提供商。阿里云助支付宝实现了

    2024年02月11日
    浏览(42)
  • 阿里云国际站:实名认证上传材料填写样例(域名持有者为个人)

    为了您能成功提交及通过实名认证,本文向您介绍了域名持有者为个人时,实名认证上传材料的填写样例。 聚搜云是阿里云国际站代理商;阿里云,全球领先的云计算服务平台,现已支持国际业务,云计算第一平台,云产品解决方案,享多线独享带宽。 将您的业务放心托管

    2024年02月12日
    浏览(40)
  • Django用户认证: 利用Django Auth模块实现用户注册、登录与登出

    用户登录注册属于用户认证的一部分,Django内置了一套用户认证体系,使用起来比较方便,而且支持用户定制和拓展,足以满足任何复杂的业务需求。 Django框架中,用户权限管理被划分为三个层次: 用户 :系统使用者,拥有自己的权限。可被一个或多个用户组包含。 用户组

    2023年04月20日
    浏览(58)
  • Django 不到20行代码实现用户认证及权限管理完整功能

    几乎所有软件项目都不得不实现的1个功能需求就是: 用户认证与权限管理 。其基本要求包括: 提供用户登入,登出,密码更改,密码重置等页面。 对页面操作、数据访问的权限控制,包括增删改查。 权限控制基于用户、组、基于页面、基于表。 说起来容易,实现起来却非

    2023年04月27日
    浏览(43)
  • django authenticate--用户身份认证

    authenticate Django的contrib.auth模块中的authenticate()函数用于对用户的凭据进行身份验证,与已配置的身份验证后端进行比较。 当用户尝试登录时,authenticate()函数将使用用户的凭据(即用户名和密码)作为参数进行调用,该函数然后检查可用的身份验证后端以验证凭据,这些后端在

    2024年02月05日
    浏览(58)
  • Django_内置的用户认证系统

    目录 一、用户对象 1. 创建用户 2. 修改密码 3. 用户验证 二、权限与授权 1. 默认权限 2. 用户组 3. 在代码中创建权限 4. 权限缓存 三、在视图中认证用户 1、登录用户 2、注销用户 3、用户登录的访问限制 3.1、原始的办法 3.2、函数视图使用login_required装饰器 3.3、类视图继承Log

    2024年02月13日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包