用于多域环境的密码重置的制作方法

文档序号:23068000发布日期:2020-11-25 17:55阅读:100来源:国知局
用于多域环境的密码重置的制作方法



背景技术:

由用户在与安全环境共存的企业计算环境中重置密码可能是有问题的。用户倾向于选择易于用户记忆的密码,这也可能使其他人更容易推出密码。

一种重置用户密码的方法是在安全环境中的域控制器上使用管理人员(管理员),并且将新密码发送给用户。该方法使用手动重置,管理员也可以知道密码。将密码分发给用户也可能是一个安全问题,因为其他人可能可以查看密码。

重置密码的其他方法包括提供使用联合认证的自动化的由外而内(outside-in)的解决方案。很多环境没有联合认证。



技术实现要素:

一种计算机实现的方法用于在多域环境中改变密码。该方法包括:在用户域中的用户设备处从安全卡获取私钥和公钥;将公钥传送到安全域中的控制器;请求密码改变;从安全域接收公钥加密的新密码,以及使用私钥解密新密码。

一种在多域环境中生成用于访问用户帐户的新密码的计算机实现的方法包括:在安全域中接收证书,该证书安全地标识来自用户域中的用户并且包括用户公钥;利用公钥更新安全域中的活动目录中的用户帐户数据条目;接收重置用户帐户密码的请求;经由目录验证请求;响应于验证而生成新密码;使用公钥加密新密码;以及将经加密的密码发送给用户域中的用户。

一种设备包括一个或多个处理器以及耦合到该一个或多个处理器并且存储有供处理器执行以执行操作的程序的存储器设备。这些操作包括:在安全域中接收证书,该证书安全地标识来自用户域中的用户并且包括用户公钥;利用公钥更新安全域中的活动目录中的用户帐户数据条目;接收重置用户帐户密码的请求;经由目录验证请求,响应于验证而生成新密码;使用公钥加密新密码;以及将经加密的密码发送给用户域中的用户。

附图说明

图1是根据示例实施例的系统的框图,其中在多域环境中通过安全域来重置帐户密码。

图2是示出根据示例实施例的密码重置方法的流程图。

图3是示出根据示例实施例的在用户域中的用户设备与安全域中的控制器之间的通信流程的通信流程图。

图4是示出根据示例实施例的在安全的多域环境中改变密码的方法的流程图。

图5是示出根据示例实施例的生成用于在多域环境中访问用户帐户的新密码的方法的流程图。

图6是用于实现一个或多个示例实施例的计算机系统的示意性框图。

具体实施方式

在下面的描述中,参考形成其一部分的附图,并且在附图中通过图示的方式示出了可以实践的特定实施例。对这些实施例进行了足够详细的描述,以使得本领域技术人员能够实践本发明,并且应当理解,在不脱离本发明的范围的情况下,可以利用其他实施例,并且可以进行结构、逻辑和电气改变。因此,以下示例实施例的描述不应当被认为是限制性的,并且本发明的范围由所附权利要求书限定。

在一个实施例中,本文中描述的功能或算法可以用软件实现。该软件可以包括存储在计算机可读介质或计算机可读存储设备(诸如一个或多个非暂态存储器或本地或联网的其他类型的基于硬件的存储设备)上的计算机可执行指令。此外,这样的功能对应于模块,该模块可以是软件、硬件、固件或其任何组合。可以根据需要在一个或多个模块中执行多种功能,并且所描述的实施例仅是示例。该软件可以在数字信号处理器、asic、微处理器、或者在诸如个人计算机、服务器或其他计算机系统等计算机系统上运行的其他类型的处理器上执行,从而将这样的计算机系统转变为专门编程的机器。

该功能可以被配置为使用例如软件、硬件、固件等来执行操作。例如,短语“被配置为”可以涉及用于实现相关功能的硬件元件的逻辑电路结构。短语“被配置为”也可以涉及用于实现固件或软件的相关功能的编码设计的硬件元件的逻辑电路结构。术语“模块”是指可以使用任何合适的硬件(例如,处理器等)、软件(例如,应用等)、固件、或者硬件、软件和/或固件的任何组合来实现的结构元件。术语“逻辑”涵盖用于执行任务的任何功能。例如,流程图中示出的每个操作对应于用于执行该操作的逻辑。可以使用软件、硬件、固件等来执行操作。术语“组件”、“系统”等可以是指计算机相关实体、硬件、以及执行软件、固件或其组合。组件可以是在处理器、对象、可执行文件、程序、函数、子例程、计算机、或者软件和硬件的组合上运行的进程。术语“处理器”可以是指硬件组件,诸如计算机系统的处理单元。

此外,使用标准编程和工程技术产生软件、固件、硬件或其任何组合以控制计算设备实现所公开的主题,可以将所要求保护的主题实现为方法、装置或制品。本文中使用的术语“制品”旨在涵盖从任何计算机可读存储设备或介质可访问的计算机程序。计算机可读存储介质可以包括但不限于磁存储设备,例如硬盘、软盘、磁条、光盘、压缩盘(cd)、数字多功能磁盘(dvd)、智能卡、闪存设备等。相反,计算机可读介质(即,不是存储介质)可以另外包括通信介质,诸如用于无线信号的传输介质等。

由用户在与安全环境共存的企业计算环境中重置密码可能是有问题的。用户倾向于选择易于用户记忆的密码,这也可能使其他人更容易推出密码。让管理员在可信环境中重置密码可以带来强度更高的密码,但是管理员则知道该密码。另外,以安全的方式向用户告知密码可能是有问题的。

在各个实施例中,可以使用安全环境中的密码重置服务来重置密码并且为企业环境中的用户设备生成新的可选的随机密码。安全环境通常不与其他环境建立信任关系,因此很难确定企业环境中的用户设备是否实际上已经被授权请求密码改变。以安全方式将新密码传送回用户设备也是困难的。

在一个实施例中,针对用户的基于证书的认证利用在安全环境(也称为生产环境)与用户环境之间的查找表。诸如智能卡等安全卡可以用于向安全环境提供公钥,并且向用户设备提供私钥,从而促进通过安全环境中的密码重置服务密码对密码的非对称加密/解密。

基于组的成员资格可以用于发信号通知重置账户密码的用户意图并且从服务的角度来查询要重置密码的账户。密码重置服务利用安全文件传送服务,该服务允许在企业环境与安全环境之间传送文件。

诸如idm(身份管理器)等组管理服务可以用于从企业环境管理安全环境。请求接口可以用于与idm接口,该idm管理安全环境中的组成员身份。例如,idm可以利用企业环境中用户的用户名与安全环境中其对应帐户之间的映射。用户可以使用智能卡来访问安全环境。

图1是系统100的框图,其中可以由指示为安全环境115的安全域中的域控制器110重置密码。安全环境可以在耦合到域控制器110的活动目录120中维护用户及其帐户118的列表或映射。被示出为连接图1中的各个元件的线表示通信连接,其可以使用各种不同的通信协议和用于数据传送的网络进行硬连线或无线连接。

由用户设备125表示的用户位于诸如企业环境130等不同域中。用户可以使用安全卡,诸如智能卡135或安全地存储数据并且可以用于向用户设备125提供证书的其他类型的设备。智能卡可以包含集成电路系统,并且可以经由接触式或非接触式数据传送进行操作以提供个人标识、认证、数据存储和其他功能。智能卡可以为系统或用户设备访问提供强大的安全认证。在一个实施例中,智能卡135包含用于公共/私密加密的公钥和私钥,其中具有公钥的设备可以加密可以用私钥解密的信息。证书可以包括公钥和用户标识信息,诸如用户id。证书应当由可信机构颁发给用户。

在一个实施例中,不允许用户改变他们自己的帐户密码。帐户可以包括从电子邮件帐户到提供对银行或其他金融帐户的电子访问的帐户的任何类型。很多其他类型的帐户可以被托管在各种安全域中。在请求密码重置之前的任何时间,可以经由证书上传接口140将证书上传到安全文件传送服务145,该安全文件传送服务145可以驻留在网络/云中,并且提供到安全环境115中的设备(诸如域控制器110)的安全文件传送。域控制器110将利用所传送的用户证书针对用户更新活动目录120条目。在一个实施例中,活动目录120可以包括安全环境用户id、企业环境用户id和智能卡公钥。

用户可以经由用户设备125使用组管理接口150将其帐户添加到用于改变针对安全环境的密码的组中,从而使用组管理服务(诸如idm(身份管理器)155)跨企业环境进行组同步。idm155将正在被请求针对其重置密码的帐户提供给组同步服务160,使得该帐户被添加到密码重置组中。密码重置组160由密码重置服务165监测,该密码重置服务165监测密码重置组中的新条目,拾取(pickup)该帐户并且将其添加到密码重置队列170中。服务165和队列170可以位于安全环境115内部或外部,并且在某些实施例中,可以是域控制器110的一部分。

证书上传接口140要求用户将智能卡135放入设备中。在找到智能卡时,接口140读取智能卡上的信息以确保已经将智能卡发布给正在执行该上传的用户并且证书有效。在进行所有检查和验证之后,它将证书转换为base64编码的字节数组并且利用安全文件传送服务145以便仅将证书及其公钥上传到安全环境115内部的特定位置。在安全环境115中的域控制器110上运行的服务(监测器165)轮询该位置以获取新证书。在找到新证书时,服务拾取证书,从证书中找到标识信息,并且与该证书所属的活动目录120中的帐户进行关联。然后,该服务将利用该证书更新ad中的帐户。

组管理接口150是对idm155资格(eligibilities)的用户接口。idm155中的资格被配置为查找帐户在企业环境130与安全环境115之间的关联,并且在由企业环境130中的用户请求时,将其对应安全环境帐户添加到安全环境115中的组。

“资格”还具有生存时间(ttl),该ttl基本上表示,在达到ttl之后,安全环境帐户从组中被移除。

在一个实施例中,用户通过组管理接口150“请求”所配置的密码重置资格。在获得该资格之后,idm找到用户的对应安全环境帐户并且将其添加到安全环境115中的“密码重置”ad组中。在达到所配置的ttl之后,该帐户便从该组中移除。在帐户在密码重置组中的时间期间,在域控制器105(监测器165)上运行的密码重置服务将轮询该组,找到该帐户,并且执行密码重置。

图2是示出密码重置方法200的流程图,该密码重置方法200可以分解为几种常规操作。首先,在操作210,将智能卡证书从用户设备上传到安全环境。智能卡可以物理地插入用户设备中,或者可以保持在用户设备附近,以将证书从智能卡无线或物理地传送到用户设备。接下来,在操作220,通过组管理服务请求密码重置。最终,使用安全环境智能卡经由用户设备,在步骤230生成密码,在操作240将密码发送给用户,并且在操作250解密密码。在一个实施例中,从设备的用户要求个人标识号用于进行上述一个或多个步骤以增加安全性。例如,仅响应于提供了正确的个人标识号而提供私钥。

图3是示出用户设备310与域控制器315之间的通信流程的通信流程图300。用户设备310驻留在第一域(企业环境130)中并且在其中执行。域控制器315驻留在第二安全域(称为安全环境115)中并且在其中执行。安全环境可以托管一个或多个用户帐户。注意,通信也可以流过其他服务,诸如图1所示的组同步和安全文件传送服务,但为便于说明而在图3中未示出。

在请求密码重置之前的任何时间,执行证书上传320。证书上传320涉及用户设备125与证书更新接口140交互。用户设备拾取用户智能卡135证书的公钥,并且使用安全文件传送服务145将其上传到安全环境115中的文件位置。安全文件传送服务145可以要求用户在企业环境130中被认证,并且检查证书以确保上传证书的用户是被分配证书的用户。一旦证书被上传到安全环境110,在域控制器315上运行的密码重置服务就在325拾取证书,查找其所属的用户的信息,并且利用证书公钥更新用户的帐户。

然后,由用户设备310生成密码重置请求330。请求330可以响应于密码到期或出于其他原因而被生成。在一个实施例中,通过使用组管理服务155跨企业环境130进行同步,用户设备与组管理接口150进行交互以将用户账户添加到组同步服务160中的密码重置组中。由密码重置服务165监测密码重置组,密码重置服务165提取要重置密码的帐户并且将该帐户添加到密码重置队列170中。

密码重置服务165通过检查335目录120来验证是否已经针对这些帐户上传了证书,并且通过在340生成新密码来重置帐户密码。新密码可以是具有安全意识字符数以确保密码难以确定的随机密码。使用公钥对新密码进行加密,并且在345诸如通过具有到期时间的电子邮件将其发送给用户。到期时间可以是适合于期望安全策略的任何时间。针对更高级别的安全性可以使用更短的时间,诸如5-20分钟。在其他实施例中,针对更低级别的安全性可以使用几个小时。在接收到电子邮件时,用户可以将其智能卡放入与用户设备310相关联的智能卡读取器中,从而使解密工具取回私钥,并且使用私钥对加密的密码进行解密以向用户提供密码。在一个实施例中,个人标识号(pin)用于实现解密以进一步提高安全性。经解密的密码可以存储在用户设备中,以用于访问在安全环境中的帐户。当密码的长度和随机性使普通用户难以记住和正确输入时,存储密码会有所帮助。将智能卡与密码的本地存储结合使用来访问用户设备可以减轻用户记住和输入密码的负担,从而使密码相当长,诸如超过10个或20个字符,同时维护安全性。例如,用户可能只需要记住4到8个字符的个人标识号即可。

图4是示出在安全的多域环境中改变密码的方法400的流程图。在操作410,用户设备响应于安全卡的使用而从安全卡获取私钥和公钥。可以将安全卡与访问个人标识号结合使用以控制用户对用户设备的访问。在一个实施例中,用户设备在用户域中,诸如企业域或其他域中。用户设备可以经由操作420将公钥传送到安全文件传送服务,以进一步传送到安全域。安全域中的目录获取公钥,并且将其与目录中的一个或多个用户帐户相关联。

在操作430,用户设备请求密码改变。该请求可以用于将用户的标识添加到组同步服务中的密码重置组。对该组进行监测,并且导致将用户的标识添加到密码重置队列中,对照安全域中的目录进行检查,并且生成新的密码,并且利用用户的公钥对其进行加密。加密的密码经由电子邮件或其他消息传送服务发送给用户。

在操作440,用户设备从第二域接收公钥加密的新密码。为了解密密码,可以从安全卡获取私钥(可选地,在输入pin后),并且在操作450使用私钥解密新密码。

图5是示出生成用于在多域环境中访问用户帐户的新密码的方法500的流程图。在一个实施例中,方法500可以与方法400协同工作,每种方法将重置密码的数据交换到给安全域中的用户帐户,同时用户正在不同域中的用户设备上工作。

在操作510,在安全域中接收证书。证书安全地标识来自用户域的用户,并且包括用户公钥。在操作520,安全域在安全域中的活动目录中更新用户帐户数据条目。该条目还利用所述公钥进行更新。操作530从用户接收重置用户账户密码的请求。响应于用户将请求添加到用户域中的组管理接口,该请求可以以密码重置组中的条目的形式被组同步服务添加。安全域可以针对这样的条目监测密码重置组。

经由操作540经由安全域中的目录验证该请求。如果请求正确,则操作550生成新密码。从安全的角度来看,密码可以是足够长以使其强的字符串,或者很难猜出或推出。在操作560,可以使用从目录获取的公钥来加密新密码。然后,经由操作579,将加密的密码发送到用户域中的用户以进行解密,并且用于访问对应的帐户。

图6是根据示例实施例的用于实现和管理用于多域环境的密码重置功能以及用于执行方法和算法的计算机系统600的示意性框图。在各种实施例中不需要使用所有组件。注意,一个或多个这样的计算机系统可以用于各种环境和服务,诸如运行一个或多个虚拟机的基于云的系统、或者用于一个或多个不同的环境和服务的本地计算机系统。计算机系统600的变体可以用于一个域中的智能卡和用户设备,用于安全文件传送和组管理服务,以及用于控制器和目录、以及安全域中的帐户服务。

计算机600形式的一个示例计算设备可以包括处理单元602、存储器603、可移除存储装置610和不可移除存储装置612。尽管该示例计算设备被图示和描述为计算机600,但是在不同的实施例中,计算设备可以具有不同的形式。例如,计算设备可以替代地是智能手机、平板电脑、智能手表、智能存储设备(ssd)或其他计算设备,其包括与图6所示出和所描述的相同或相似的元件。诸如智能手机、平板电脑和智能手表等设备通常统称为移动设备或用户设备。

尽管各种数据存储元件被示出为计算机600的一部分,但是该存储装置可以另外地或替代地包括经由网络可访问的基于云的存储装置,诸如基于互联网或服务器的存储装置。还应当注意,ssd可能包括运行解析器的处理器,从而允许通过ssd与主存储器之间的i/o通道传送已解析的经过滤的数据。

存储器603可以包括易失性存储器614和非易失性存储器608。计算机600可以包括或者可以访问包括各种计算机可读介质的计算环境,诸如易失性存储器614和非易失性存储器608、可移除存储装置610和不可移除存储装置612。计算机存储装置包括随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom)或电可擦除可编程只读存储器(eeprom)、闪存或其他存储技术、光盘只读存储器(cdrom)、数字多用途磁盘(dvd)或其他光盘存储设备、磁带、磁带、磁盘存储设备或其他磁性存储设备、或者能够存储计算机可读指令的任何其他介质。

计算机600可以包括或者可以访问包括输入接口606、输出接口604和通信接口616在内的计算环境。输出接口604可以包括诸如触摸屏等显示设备,该显示设备还可以用作输入设备。输入接口606可以包括触摸屏、触摸板、鼠标、键盘、相机、一个或多个设备专用按钮、集成在计算机600中或经由有线或无线数据连接耦合到计算机600的一个或多个传感器、以及其他输入设备中的一个或多个。该计算机可以使用通信连接连接到诸如数据库服务器等一个或多个远程计算机来在联网环境中操作。远程计算机可以包括个人计算机(pc)、服务器、路由器、网络pc、对等设备或其他公共数据流网络交换机等。通信连接可以包括局域网(lan)、广域网(wan)、蜂窝网络、wi-fi、蓝牙或其他网络。根据一个实施例,计算机600的各种组件与系统总线620连接。

存储在计算机可读介质上的计算机可读指令由计算机600的处理单元602可执行,诸如程序618。在一些实施例中,程序618包括用于实现一个或多个…的软件。硬盘、cd-rom和ram是包括非暂态计算机可读介质(诸如存储设备)的一些物品示例。术语计算机可读介质和存储设备不包括载波,因为载波被认为是太暂态(transitory)的。存储装置还可以包括网络存储装置,诸如存储区域网络(san)。计算机程序618以及工作空间管理器622可以用于引起处理单元602执行本文中描述的一种或多种方法或算法。

示例:

在示例1中,一种计算机实现的方法用于在多域环境中改变密码。方法包括:在用户域中的用户设备处从安全卡获取私钥和公钥;将公钥传送到安全域中的控制器;请求密码改变;从安全域接收公钥加密的新密码;以及使用私钥解密新密码。

示例2包括根据示例1的方法,其中公钥被传送到安全文件传送服务以用于传送到安全域中的控制器。

示例3包括根据示例2的方法,其中公钥经由证书上传接口被传送到安全文件传送服务。

示例4包括根据示例1至3中任一项的方法,其中请求密码改变包括:经由组管理接口请求密码重置。

示例5包括根据示例4的方法,其中密码重置请求经由组管理接口将用户帐户的指示添加到密码重置组。

示例6包括根据示例5的方法,其中密码从安全域被排他性地重置。

示例7包括根据示例1至6中任一项的方法,还包括接收与智能卡相对应的个人标识号以获取公钥和私钥。

示例8包括根据示例7的方法,还包括在解密新密码之前接收个人标识号。

在示例9中,一种在多域环境中生成用于访问用户帐户的新密码的计算机实现的方法包括:在安全域中接收证书,证书安全地标识来自用户域中的用户并且包括用户公钥;利用公钥更新安全域中的活动目录中的用户帐户数据条目;接收重置用户帐户密码的请求;经由目录验证请求;响应于验证而生成新密码;使用公钥加密新密码;以及将经加密的密码发送给用户域中的用户。

示例10包括根据示例9的方法,其中接收重置用户帐户密码的请求包括:监测与组同步服务相关联的密码重置组;以及从密码重置组中取回与请求相关联的用户帐户的指示。

示例11包括根据示例9至10中任一项的方法,其中在安全域中接收证书包括:从安全文件传送服务接收证书,其中证书经由用户设备源自用户的智能卡。

示例12包括根据示例11的方法,其中经由目录验证请求包括:使用用户帐户的指示来访问目录以获取公钥。

示例13包括根据示例9至12中任一项的方法,其中经加密的密码经由电子邮件被发送给用户。

示例14包括根据示例13的方法,其中目录包括用于向用户发送电子邮件的电子邮件地址。

示例15包括根据示例9至14中任一项的方法,其中用户帐户密码与安全域中的用户帐户相关联以供用户域中的用户设备访问。

在示例16中,一种设备包括一个或多个处理器,以及耦合到一个或多个处理器并且存储有供处理器执行以执行操作的程序的存储器设备。操作包括:在安全域中接收证书,证书安全地标识来自用户域中的用户并且包括用户公钥;利用公钥更新安全域中的活动目录中的用户帐户数据条目;接收重置用户帐户密码的请求;经由目录验证请求;响应于验证而生成新密码;使用公钥加密新密码;以及将经加密的密码发送给用户域中的用户。

示例17包括根据示例16的设备,其中接收重置用户帐户密码的请求包括:监测与组同步服务相关联的密码重置组;以及从密码重置组取回与请求相关联的用户帐户的指示。

示例18包括根据示例16至17中任一项的设备,其中在安全域中接收证书包括:从安全文件传送服务接收证书,其中证书经由用户设备源自用户的智能卡,并且经由目录验证请求包括:使用用户帐户的指示来访问目录以获取公钥。

示例19包括根据示例16至18中任一项的设备,其中经加密的密码使用存储在目录中的电子邮件地址经由电子邮件被发送给用户。

示例20包括根据示例16至19中任一项的设备,其中用户帐户密码与安全域中的用户帐户相关联以供用户域中的用户设备访问。

尽管上面已经详细描述了一些实施例,但是其他修改也是可能的。例如,附图中描绘的逻辑流程不需要所示的特定顺序或连续顺序来实现期望的结果。可以提供其他步骤,或者可以从所描述的流程中去除步骤,并且可以将其他组件添加到所描述的系统或从所描述的系统移除。其他实施例可以在所附权利要求的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1