Security configuration for minors Lifecycle account protection
By introducing a collection of capability-security pairs in the computing system, the security configuration of minor user accounts is automatically adjusted, and the problem of inappropriate account security configuration during user growth is solved, and the dynamics of account security and permission management are realized Adjustments ensure the security of online service access for underage users.
Patent Information
- Application Number
- CN201980043412.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2018-06-28
- Filing Date
- 2019-06-21
- Publication Date
- 2025-01-07
- Estimated Expiration
- 2039-06-21
AI Technical Summary
The existing computing system cannot automatically adjust the account security configuration during the user's growth process, resulting in inappropriate security permission settings for minor users and ineffective management of life cycle changes in minor accounts.
By introducing a collection of capability-security pairs in the computing system, the security configuration of the main account and affiliated account is automatically adjusted according to the capability level of minor users, and the identity and security credentials are allocated in stages to ensure the security of the account at different life cycle stages. Consistent sexual configuration.
It realizes dynamic adjustment of account security configuration, adapts to the changes in permissions during the growth of underage users, improves the confidentiality and integrity of the account, and ensures the security of online service access for underage users.
Smart Images

Figure CN112334895B_ABST
Abstract
Description
Background Art
[0001] Security goals in computing systems include confidentiality, integrity, and availability. These goals are addressed by implementing administrative, technical, and physical security controls that attempt to detect, prevent, contain, or mitigate unauthorized access to secure items and allow authorized access to secure items. A secure item can be, for example, data, a service, or a physical item.
[0002] Computing system administrators in government departments, agencies, and commercial enterprises often follow the "principle of least privilege," which is to grant each user only the security permissions that the user needs to perform his or her assigned job. When users change job roles, privilege reviews help prevent users from retaining permissions that are no longer needed; this reduces "privilege creep." Specifically, when a user is fired, it is prudent to immediately disable or remove all permissions.
[0003] In many computing systems, secure items are accessed by a given user through a user account, which is established for the user by an authorized administrator of the computing system. Controlled access to an item typically goes through security stages such as identification, authentication, authorization, auditing, and accountability. Identification of a user relative to an account is performed using a username, email address, user number, or other user identifier. Verification of the asserted identity is performed using one or more factors such as something the user knows (e.g., a password), something the user has (e.g., a key card), and something the user has (e.g., a biometric such as an iris scan or fingerprint). Authorization can implement discretionary controls (e.g., access control lists managed by the user on a per-item basis) or mandatory controls (e.g., user privilege levels, need to know, and item classifications). Access activity can be audited by examining usage logs and automated tools such as intrusion detection systems. Accountability can be enforced by imposing technical, administrative, or legal consequences for unauthorized access activities, including actual access or attempted unauthorized access to secure items. Summary of the invention
[0004] Many of the teachings herein are motivated by the challenge of gradually providing appropriate account security credentials to minor users as they grow up. Some of the techniques described herein are directed to technical activities that automatically increase permissions in computing system accounts as users mature. As minor users of accounts gradually grow from toddlers to young children and then to teenagers, the security configuration of the account can automatically evolve in stages, for example, providing more permissions to the younger user as they grow up. Because authorization to the minor's account has been transferred from the adult to the minor who is about to become an adult, the relevant account of the parent, teacher or other adult can automatically lose the corresponding permissions.
[0005] Some teachings herein are directed to specific examples of stages in a security configuration lifecycle. Technical mechanisms for implementing lifecycle stages are described, such as for allocating identities and other security credentials between two related accounts (a primary account and a secondary account) based on the capability level of the secondary user or the current security configuration lifecycle stage of the account. These technical mechanisms may include specific security credential configurations, as well as data structures for selecting between configurations. Examples of automated services based on lifecycle stages are also discussed, such as for personalization, recommendation history maintenance, and other processes.
[0006] The specific technical tools and techniques described herein also address challenges associated with efficiently and effectively associating user-specific data with legally underage users. Some examples of user-specific data include recommendation resumes and age-appropriate consent forms.
[0007] Some of the examples in this article apply the security configuration lifecycle mechanism to user benefits in social relationships other than the minor-adult relationship. For example, consider a dependent elderly person and a more skilled caregiver. Over time, the elderly person's abilities may diminish, resulting in a reverse movement in the security configuration lifecycle.
[0008] One embodiment described herein may detect a secondary account creation trigger during use of a primary account by a primary user. In response, the embodiment may create a secondary account for the secondary user and designate the secondary account and the primary account as accounts with corresponding security configurations that are related to each other. In some cases, the embodiment obtains secondary user capability information that indicates that the secondary user has a physiological age of less than eighteen years old. Based on at least a portion of the secondary user capability information, the embodiment automatically configures the primary account and automatically configures the secondary account, thereby positioning the configured accounts in a security configuration lifecycle stage that allocates identities and other security credentials between the two accounts. The allocated credentials may include, for example, a secondary account login identity and a secondary account login credential. The embodiment may perform, modify, or verify identification and authentication provisioning of the primary and secondary accounts in a manner that is consistent with the physiological age of the secondary user being under eighteen years old, helps ensure that the secondary account is protected from unauthorized third-party access, and positions the primary and secondary accounts together within the security configuration lifecycle.
[0009] Another embodiment described herein includes: a set of three or more digitally implemented capability-security pairs. Each capability-security pair includes a respective capability level and a corresponding security specification, the security specification specifying a security configuration for a primary account of a primary user and a secondary account of a secondary user. In this embodiment, the capability-security pairs include at least the following pairs, labeled herein as A, B, and C.
[0010] In pair A, the security specification specifies that the subsidiary account has no login identity other than the primary account, and the subsidiary account has no login credentials. In pair B, the security specification specifies that the subsidiary account has an identity other than the login identity of the primary account, but the subsidiary account lacks sufficient login credentials for the subsidiary user to log in to the subsidiary account without assistance from the primary user. In pair C, the security specification specifies that the subsidiary account has a login identity other than the login identity of the primary account, the subsidiary account has sufficient login credentials for the subsidiary user to log in without assistance from the primary user, and the primary account also has a subsidiary account login credential that permits the primary user to log in to the subsidiary account. Capability-security pairs A, B, C may represent or correspond to security configuration lifecycle stages A, B, C of the same name.
[0011] The embodiment also includes account security configuration code residing in the memory, which, when executed by the processor: (i) obtains subsidiary user capability information, (ii) assigns capability levels to subsidiary users based at least in part on the subsidiary user capability information, (iii) selects a capability-security pair corresponding to the assigned subsidiary user capability level, and (iv) configures the primary account and the associated subsidiary accounts so that they are consistent with the security specifications of the selected capability-security pair. The capability-security pair gradually implements the security configuration lifecycle because the capability level for A indicates fewer subsidiary user capabilities than the capability level for B, and the capability level for B indicates fewer subsidiary user capabilities than the capability level for C.
[0012] Other technical activities related to the teachings of this article will also become apparent to those skilled in the art. The examples given are illustrative only. This summary is neither intended to identify the key features or essential features of the claimed subject matter nor to limit the scope of the claimed subject matter. On the contrary, this summary is provided to introduce some technical concepts in a simplified form, which will be further described in the following specific embodiments. The present invention is defined by the claims, and to the extent that this summary conflicts with the claims, the claims shall prevail. BRIEF DESCRIPTION OF THE DRAWINGS
[0013] A more detailed description will be given with reference to the accompanying drawings, which illustrate only selected aspects and therefore are not necessarily exhaustive in terms of coverage or scope.
[0014] Figure 1 is a block diagram illustrating a computer system and also illustrating a configured storage medium;
[0015] Figure 2 is a block diagram illustrating various aspects of a user accessing an item through an account;
[0016] Figure 3 is a block diagram illustrating account items, i.e., items that are accessible through a user account, or items that are associated with a user account as credentials or user-specific data, or items that provide services to the user through an account;
[0017] Figure 4 is a block diagram illustrating a capability-security pair;
[0018] Figure 5 is a block diagram illustrating aspects of a system configured for network security using a security configuration lifecycle;
[0019] Figure 6 is a diagram illustrating an example of stages in a security configuration life cycle;
[0020] Figure 7 is a flow chart illustrating an example security lifecycle phase configuration method;
[0021] Figure 8 is a flow chart further illustrating an example security lifecycle phase configuration method;
[0022] Fig. 9 is a flow chart illustrating an example method of using security configuration lifecycle phases; and
[0023] Fig.10 is a flow chart further illustrating some of the steps in the account security configuration life cycle method. DETAILED DESCRIPTION
[0024] Overview
[0025] Internet services today are protected by identity authentication services, which do not evolve as users grow up. A three-year-old has different expectations, needs, and capabilities as a software user than an eight-year-old or a fourteen-year-old. Users' expectations, needs, and capabilities continue to change until the user eventually reaches adulthood, and perhaps even after that milestone. The teachings herein define a lifecycle model that allows account security configurations to evolve as users grow up. Account security configurations control software usage and other services and items that a computing system provides to a user through an account.
[0026] In many familiar approaches, when a user creates an account, they are considered either a child or an adult. However, as described herein, as a child grows, the child's expectations, needs, and abilities change, and this progression can be modeled in the account security configuration lifecycle. Some embodiments described herein enable a gradual evolution of the account security system to provide a balance of control and independence between minors and their parents, with the balance changing over time as the minor's abilities grow.
[0027] As taught herein, the account system security lifecycle can help parents automatically and actively manage their children's accounts as young users grow up. The account lifecycle can even extend to the prenatal period. An expectant mother or father can mark an unborn baby in a photo of the child a few months before birth (e.g., in a photo of the expectant mother or an ultrasound examination). The mark can start the presence of an online or other digital user and create a placeholder for later items. In a relatively early period, such as when the child is 2 to 4 years old, a parent or guardian may want the minor child to have his own account, but retain full control of the account. In fact, parents may come to a reasonable conclusion that the only reason for opening an account for a child is to separate the child's online activities from the parent's activities, so that the child's video viewing preferences will not pollute the parent's video viewing preferences, so that the parent's account data will not be accidentally erased or damaged by the child. At this stage, because the parent has logged in to the account for the child, the child will not be able to use a traditional username or password to authenticate its account, and does not actually need to use his own password on his account, nor does he need to prove his identity.
[0028] As children grow up, independence becomes more important to them. At a certain age (probably in the range of four to seven years old), children begin to communicate electronically with small groups of people outside the child's family via email, chat, video calls, etc. At this stage, the child will benefit from solutions in the computing system, such as allowing grandfather to initiate a video call. Therefore, the child will benefit from having an email address associated with the online service, through which they receive electronic communications. This means having a username, but not necessarily a password or other credentials.
[0029] As child users get older, they begin to venture beyond their parents' control for longer periods of time. Perhaps they are at a friend's house and want to use an online service to play a video game. They already have an account, but they would benefit from being able to log in themselves or with real-time approval from their parents. Therefore, they would benefit from having their own mechanism for authenticating themselves to the online service.
[0030] During the teenage years, users may be almost completely independent and trusted, but will still benefit from a connection with their parents. For example, at this stage, if a teenager forgets their password, they can use their parents to reset their password. Nonetheless, given their increasing maturity, the system can be configured so that parents cannot use a teenager's account without the teenager's permission.
[0031] Finally, as a young adult, a mature user's account can be configured to be completely independent of their parents. But they can still browse all the photos and see themselves in their first ultrasound.
[0032] Some embodiments described herein provide one or more of the following unique features. Early subsidiary accounts had multiple users with different permissions. For a long period of time, subsidiary account permissions and primary account permissions for both users (not just subsidiary users) were based on the age or mental ability of the subsidiary users. Permissions change as subsidiary users grow and their resulting increase (or decrease) in mental ability. Other unique features are also disclosed.
[0033] Some may view some of the embodiments described herein in a broader context. For example, concepts such as assistance, capability, change, relationship, and security may be considered relevant to specific embodiments. However, it cannot be inferred from the availability of a broad context that this document seeks exclusive rights to abstract concepts; they are not. Instead, the present disclosure is committed to providing appropriate specific embodiments whose technical effects fully or partially solve specific technical problems, such as how to detect network intrusions using data that is too scarce or sparse to be effectively used as a machine learning training set for anomaly detection. Other configured storage media, systems, and methods involving assistance, capability, change, relationship, or security are not within the scope. Accordingly, with the proper understanding of the present disclosure, ambiguity, mere abstraction, lack of technical features, and the accompanying proof problems are also avoided.
[0034] Technical features
[0035] The technical features of the embodiments described herein will be apparent to those of ordinary skill in the art, and will also be apparent to a broad, dedicated reader in a variety of ways. Some embodiments address technical activities rooted in computing technology and improve the functionality of computing systems by helping to protect those systems in an adaptive manner over the course of several years to increase the availability, confidentiality, and integrity of account items. For example, some embodiments set or modify security credentials, such as login identity, non-login identity, login credentials, or account recovery mechanism settings. Some activities of the embodiments support allocating or reallocating security credentials between a primary account and associated subsidiary accounts.
[0036] Some embodiments include technology components, such as computing hardware, that interact with software in ways that go beyond typical interactions within a general-purpose computer. For example, in addition to conventional interactions, such as general memory allocation, general memory reads and writes, general instruction execution, and certain I / O, some embodiments described herein implement capability-security pair data structures and methods for automatically utilizing such data structures.
[0037] The technical effects provided by some embodiments include: more efficient configuration of account security credentials; secure association of user-specific data with accounts nominally belonging to minors; effective selection of age-appropriate consent acquisition processes for accounts nominally belonging to minors; and increased access to online services by safe and appropriately mature minors.
[0038] Some embodiments include technical adaptations, such as: account security codes that automatically reconfigure the security of two related accounts over time as the user of one of the accounts matures; and account security configuration lifecycle stages implemented in a data structure, which specify security configurations for related primary and secondary accounts based on the capability level of the secondary account user.
[0039] Other advantages based on the teachings of the technical features will also be apparent to those skilled in the art based on the description provided.
[0040] Acronyms and abbreviations
[0041] Some acronyms and abbreviations are defined below. Other acronyms and abbreviations may be defined elsewhere herein or may be understood by the skilled artisan without any definition.
[0042] ACL: Access Control List
[0043] ALU: Arithmetic and Logic Unit
[0044] API: Application Programming Interface
[0045] BIOS: Basic Input / Output System
[0046] CD: compact disc
[0047] CPU: Central Processing Unit
[0048] DVD: Digital Versatile Disc or Digital Video Disc
[0049] FPGA: Field Programmable Gate Array
[0050] FPU: Floating Point Processing Unit
[0051] GPU: Graphics Processing Unit
[0052] GUI: Graphical User Interface
[0053] GUID: Globally Unique Identifier
[0054] NIC: Network Interface Card
[0055] OS: Operating System
[0056] PIN: Personal Identification Number
[0057] RAM: Random Access Memory
[0058] ROM: Read Only Memory
[0059] SMS: Short Message Service
[0060] XML: Extensible Markup Language
[0061] Additional terms
[0062] Reference is made herein to exemplary embodiments such as those shown in the accompanying drawings, and specific language is used herein to describe them. However, changes and further modifications to the features shown herein and additional technical applications of the abstract principles shown in the specific embodiments herein that occur to those skilled in the art (s) and those having the present disclosure should be considered within the scope of the claims.
[0063] The meanings of the terms are set forth in this disclosure, and therefore these elaborations should be carefully noted when reading the claims. Specific examples are given, but (multiple) persons skilled in the relevant art will understand that other examples may also fall within the meaning of the terms used and fall within the scope of one or more claims. The terms herein do not necessarily have the same meaning as they do in general use (particularly in non-technical use), the use of a particular industry, a particular dictionary or a dictionary collection. Figure numerals may be used with various wordings to help illustrate the breadth of the terms. Omitting a figure numeral from a given fragment of the text does not necessarily mean that the text does not discuss the contents of the drawings. The inventors claim and exercise their right to compile their own dictionaries. Quoted terms are clearly defined, but terms may also be implicitly defined without the use of quotation marks. Terms may be explicitly or implicitly defined in the specific embodiments and / or elsewhere in the application document.
[0064] As used herein, a "computer system" may include, for example, one or more servers, motherboards, processing nodes, laptops, tablets, personal computers (portable or non-portable), personal digital assistants, smart phones, smart watches, smart bracelets, cellular or mobile phones, other mobile devices with at least a processor and memory, video game systems, augmented reality systems, holographic projection systems, televisions, wearable computing systems, and / or other (multiple) devices that provide one or more processors that are controlled at least in part by instructions. Instructions may take the form of firmware or other software in memory and / or dedicated circuits.
[0065] A "multithreaded" computer system is one that supports multiple threads of execution. The term "thread" should be understood to include any code that is capable of being scheduled or subject to scheduling (and possibly synchronization), and may also be referred to by other names such as "tasks", "processes", or "coroutines", for example. Threads may run in parallel, serially, or in a combination of parallel execution (e.g., multiprocessing) and serial execution (e.g., time slicing).
[0066] A "processor" is a thread processing unit, such as a core in a simultaneous multithreading implementation. A processor comprises hardware. A given chip may house one or more processors. Processors may be general purpose or customized for specific uses, such as vector processing, graphics processing, signal processing, floating point arithmetic processing, encryption, I / O processing, etc.
[0067] The "kernel" includes the operating system, hypervisor, virtual machine, BIOS code, and similar hardware interface software.
[0068] "Code" refers to processor instructions, data (including constants, variables, and data structures), or both. "Code" and "software" are used interchangeably herein. Executable code, interpreted code, and firmware are some examples of code. Code that must be interpreted or compiled in order to execute is called "source code."
[0069] "Program" is used broadly herein to include applications, kernels, drivers, interrupt handlers, firmware, state machines, libraries, and other code written by programmers (also referred to as developers) and / or automatically generated.
[0070] “Services” means consumable programs provided in a cloud computing environment or other network or computing system environment.
[0071] "IoT" or "Internet of Things" refers to any networked collection of addressable embedded computing nodes. Such nodes are examples of computer systems as defined herein, but they also have at least two of the following characteristics: (a) no local human-readable display; (b) no local keyboard; (c) the primary source of input is a sensor that tracks the source of non-verbal data; (d) no local rotating disk storage - RAM chips or ROM chips provide the only local storage; (e) no CD or DVD drive; (f) embedded in household appliances; (g) embedded in implanted medical devices; (h) embedded in vehicles; (i) embedded in process automation control systems; or (j) designs focused on one of the following: environmental monitoring, municipal infrastructure monitoring, industrial equipment monitoring, energy usage monitoring, human or animal health monitoring, or physical transportation system monitoring. IoT storage devices can be the target of unauthorized access via the cloud, via another network, or via direct local access attempts.
[0072] As used herein, "includes" allows for additional elements unless otherwise noted (ie, includes refers to open inclusions).
[0073] "Optimization" means improvement, not necessarily perfection. For example, a program or algorithm that has been optimized can be further improved.
[0074] "Process" is sometimes used herein as a term from the field of computer science, and in this technical sense encompasses resource users, i.e., for example, coroutines, threads, tasks, interrupt handlers, application processes, kernel processes, procedures, and object methods. "Process" is also used herein as a technical term in patent law, e.g., when describing a process claim, as opposed to a system claim or an article of manufacture (configured storage medium) claim. Similarly, "method" is sometimes used herein as a technical term from the field of computer science (a type of "routine"), and also as a term in the field of patent law ("process"). Those skilled in the art will understand the meaning intended to have in a particular case, and will also understand that a given claimed process or method (in the patent law sense) may sometimes be implemented using one or more processes or methods (in the computer science sense).
[0075] In contrast to without automation, "automatically" means through the use of automation (e.g., general-purpose computing hardware configured by software for the specific operations and technical effects discussed herein). Specifically, the steps performed "automatically" are not performed by hand on paper or in a person's brain, although they may be initiated by a person or directed interactively by a person. Automatic steps are performed using a machine to obtain one or more technical effects that would not be achieved without the technical interaction so provided.
[0076] The technician understands that the technical effect is the presumed purpose of the technical embodiment. For example, one embodiment involves calculations, and some calculations can also be performed without technical components (e.g., by paper and pencil, or even as a mental step), and this fact does not eliminate the existence of technical effects or change the specific technical nature of the embodiment. Operations such as executing, modifying or verifying security credentials and using capabilities-security to data structures are understood herein as inherently digital. The human brain cannot directly engage with the CPU or other processors or with RAM or other digital storage devices to read and write necessary data to perform the security configuration lifecycle steps described herein, or create the security configuration lifecycle mechanism described herein. In view of this disclosure, those skilled in the art will understand this well, but sometimes it may be necessary to inform or remind others of the fact. Unless otherwise stated, contrary to pure thought experiments, it is also assumed that the embodiment can be operated on a large scale (i.e., one thousand or more main users) in a production environment or a test laboratory in a production environment.
[0077] "Computationally" also means that a computing device (at least a processor plus memory) is being used, and excludes results obtained by human thought alone or by human action alone. For example, as understood herein, arithmetic performed with paper and pencil is not arithmetic performed computationally. The computational results are faster, more extensive, deeper, more accurate, more consistent, more comprehensive, and / or provide technical effects beyond the scope of human performance alone. A "computational step" is a step performed computationally. Neither "automatically" nor "computationally" necessarily means "immediately." "Computationally" and "automatically" are used interchangeably herein.
[0078] "Actively" means without direct request from the user. In fact, the user may not even be aware that active steps of the embodiments are possible until the results of the steps have been presented to the user. Unless otherwise stated, any calculation and / or automatic steps described herein may also be performed actively.
[0079] Throughout this document, the optional plural "(s)", "(es)" or "(ies)" is used to indicate the presence of one or more of the indicated features. For example, "processor(s)" means "one or more processors" or equivalently "at least one processor".
[0080] A “cloud” or “cloud network” is a network accessible via the Internet or through an institutional or corporate or government network that provides computing, storage, and networking capabilities from pooled resources to one or more entities on an as-needed basis with elastic and measured service usage.
[0081] For purposes of U.S. law and practice, use of the word "step" herein, in the claims or elsewhere, is not intended to invoke means-plus-function, step-plus-function, or 35 U.S.C. 112(f) claim construction. Any presumption to such effect is hereby expressly rebutted.
[0082] For purposes of U.S. law and practice, a claim is not meant to invoke a means-plus-function interpretation unless the claim uses the phrase “means for.” Claim language that is intended to be interpreted as means-plus-function language, if present, will expressly record that intent through the use of the phrase “means for.” When a means-plus-function interpretation is employed, whether through the use of “means for” and / or through legal interpretation of the claim language by a court, a means recited in the specification for a given noun or a given verb should be understood to be linked to the claim language and linked together herein by any of the following: appearance within the same box in a block diagram of the accompanying drawings, referenced by the same or similar name, referenced by the same figure number, a functional relationship depicted in any of the accompanying drawings, a functional relationship indicated in the text of the present disclosure. For example, if a claim limitation recites a "zac widget" and that claim limitation is subject to a means-plus-function interpretation, then all structures identified at least anywhere that "zac widget" is mentioned in any figure box, paragraph, or example in the specification, or all structures connected together by any figure markings assigned to the zac widget, or all structures disclosed as having a functional relationship to the structure or operation of the zac widget will be considered part of the structure identified for the zac widget in this application and will help define an equivalent set of zac widget structures.
[0083] Throughout this document, unless explicitly stated otherwise, any reference to a step in a process assumes that the step may be performed directly by an interested party and / or performed indirectly by a party through intervening mechanisms and / or intervening entities and still be within the scope of the step. That is, a step need not be performed directly by an interested party unless direct performance is an explicitly stated requirement. For example, steps involving actions of an interested party with respect to a destination or other subject (such as, assigning, assisting, based on, choosing, configuring, creating, authenticating, representing, specifying, detecting, having, including, indicating, lacking, logging, maintaining, providing, obtaining, operating, executing, locating, providing, building, recommending, reconfiguring, associating, requesting, residing, modifying, protecting, selecting, extending, covering, marking, transitioning, triggering, using, verifying (assigns, assigned, assisting, assisted, etc.), with respect to a target or other subject, may involve intervening actions by some other party (such as, forwarding, copying, uploading, downloading, encoding, decoding, compressing, decompressing, encrypting, decrypting, authenticating, calling, etc.), but should still be understood to be performed directly by the interested party.
[0084] Whenever data or instructions are mentioned, it should be understood that these items configure the computer-readable memory and / or computer-readable storage medium to transform it into a specific item, rather than simply existing on paper, in a person's mind, or just a signal propagating on a wire. For the purpose of U.S. patent protection, according to the interpretation of the U.S. Patent and Trademark Office (USPTO) in the ReNuijten case, the memory or other computer-readable storage medium is not a propagating signal, carrier wave, or pure energy that falls outside the scope of patentable subject matter. In the United States, no claim itself covers signals or pure energy, and it is unreasonable on the surface to assert other claim interpretations in view of this disclosure. Unless otherwise expressly stated in a claim granted outside the United States, the claim does not cover signals themselves or pure energy.
[0085] Furthermore, despite explicit statements to the contrary elsewhere herein, a distinct distinction should be understood between (a) computer-readable storage media and computer-readable memory on the one hand, and (b) transmission media, also known as signal media, on the other hand. Transmission media are computer-readable media that propagate signals or carrier waves. In contrast, computer-readable storage media and computer-readable memory are not computer-readable media that propagate signals or carrier waves. Unless otherwise expressly stated in the claims, "computer-readable medium" refers to computer-readable storage media that are not propagating signals themselves and are not pure energy.
[0086] The "embodiments" herein are examples. The term "embodiments" is not interchangeable with "the present invention." The embodiments may freely share or borrow aspects to create other embodiments (as long as the results are operable), even if the resulting combinations of the aspects are not explicitly described herein itself. Requiring an explicit description of each permitted combination is not necessary for a person skilled in the art, and this is contrary to the policy of recognizing that patent specifications are written for those skilled in the art. Formal combinatorial calculations and informal intuition about the number of possible combinations caused by even a small number of combinable features will also show that there are a large number of aspect combinations of the aspects described herein. Therefore, requiring explicit recording of each combination would be contrary to the policy of requiring concise patent specifications and making the reader aware of the technical fields involved.
[0087] Reference numerals list
[0088] The following list is provided for the convenience and support of the drawings and as part of the specification text, which describes the innovation by reference to multiple items. Nevertheless, items not listed here may still be part of a given embodiment. In order to make the text more readable, given reference numerals are cited near some (but not all) referenced items in the text. The same reference numerals are used to refer to different examples or different instances of a given item. The list of reference numerals is:
[0089] 100 Operating Environment, also known as Computing Environment
[0090] 102 Computer system, also called computing system (computational system or computing system)
[0091] 104 users
[0092] 106 Peripheral devices
[0093] 108 is usually network
[0094] 110 processors
[0095] 112 Computer readable storage medium, such as RAM, hard disk
[0096] 114 Removable computer readable storage medium
[0097] 116 uses processor executable instructions; may be located on a removable storage medium or in other memory (volatile or non-volatile or both)
[0098] 118 Data
[0099] 120(s) cores, e.g.(s) operating systems, BIOS, device drivers
[0100] 122 Tools, for example, antivirus software, firewalls, packet sniffer software, intrusion detection systems (IDS), intrusion prevention systems (IPS), software development tools, diagnostic
[0101] 124 applications, e.g., word processors, web browsers, spreadsheets, games
[0102] 126 display screen
[0103] 128 computing hardware not otherwise associated with reference numerals 106, 108, 110, 112, 114
[0104] 202 Accounts
[0105] 204 Security code, such as a login code, user identification code, user authentication code, code to read or write security credentials, access control list, digital certificate, or cookie
[0106] 206 is generally an account item, such as a file, service interface, or security certificate.
[0107] 208 User ID, e.g., username, screen name, avatar, handle, email address
[0108] 210 Password or passcode
[0109] 212 Digital certificate or token
[0110] 214 Electronically communicated request
[0111] 216 Electronically communicated responses
[0112] 302 User age, for example, a number representing the user's physical or mental age in years, or a category or enumeration representing the user's physical or mental age such as "womb," "infant," "toddler," "preschooler," "explorer," "teen between 10 and 12," "adolescent," or a similar sequence of maturity or ability stages
[0113] 304 Digital photographs, video or audio recordings, collectively referred to as “recording media”
[0114] 306 Posting to a blog, forum, online bulletin board, wiki, or social networking site
[0115] 308 usually refers to one or more files; the file content can be recorded media, executable code, text or other digital content
[0116] 310 One or more games or files for playing games; a game is an example of an account service item because it provides services (entertainment or educational entertainment) to users through the account
[0117] 312 Email address, instant messaging or SMS address
[0118] 314 Non-login ID, i.e., a GUID or other identifier that is not used as a user ID 208 by a human user but is used to automatically identify a software account
[0119] 316 Recommendation history, e.g., at least one recommendation automatically generated by a recommendation service, or a data structure containing clickstream or other user activity tracking data that a recommendation service can use as part or all of the basis for automatically recommending products or services to a user
[0120] 318 designates, i.e., digital data, a secondary account and a primary account as accounts whose respective security configurations are related to each other and are therefore configured together according to the security configuration lifecycle teachings of this document; it can be implemented as, for example, an account identifier 314 in each account that identifies the other account.
[0121] 320 Social data, e.g., data indicating that at least one of the following social relationships exists between the secondary user and the primary user: child and parent, child and teacher, child and guardian, patient and guardian, patient and provider, recipient and caregiver, dependent parent and offspring; may be implemented, for example, as an integer or enumeration value representing a corresponding social role in a specified account; the social relationship may also be implicit in the code or in a license or account subscription using the code, or may be apparent in account data obtained through a user interface (e.g., “child’s name” or “parent’s email address”)
[0122] 322 is typically account settings, such as login and security settings, privacy settings, preferences such as preferred natural language, payment methods, purchased storage capacity, subscription renewal options, etc.
[0123] 324 Credentials, e.g., digital settings or certificates, that facilitate one or more of confidentiality, availability, and integrity of an account, in particular to allow, regulate, or deny account activities such as login, account item read access, account item modification, account item deletion, or account recovery
[0124] 326 Account recovery settings, e.g., an email containing a recovery link will be sent
[0125] 328 Any account item not covered in item descriptions 302-326
[0126] 400 Capability-security pair, i.e., a structure, union, record, object or other data structure that includes (directly or through a pointer, handle, ID, address or other association mechanism) at least one capability level and a corresponding security specification; an identifier such as a pointer, index or address that identifies a particular capability-security pair may also be referred to as a capability-security pair
[0127] 402 Capability Level, i.e., a consent or privacy requirement regarding information used to personally identify a minor or person with reduced capacity, an integer or enumeration value indicating maturity or capacity or legal status
[0128] 404 Security Specification, i.e., a list, array, tree, graph, bitmap, XML text, or other data structure that specifies security credentials for a primary account and two or more corresponding secondary accounts based on the capability level of the user(s) of the secondary account(s)
[0129] 406 Multiple capability-security pairs in a sequence, array, set, list, collection, or other data structure
[0130] 500 computing system, configured using a security configuration lifecycle in the form of capability-security pairs, security configuration lifecycle stages, or security configuration codes, the security configuration lifecycle allocating identities and other security credentials between two related accounts (a primary account and a secondary account) based on the capability level of the secondary user or the current security configuration lifecycle stage of the account
[0131] 502 Security configuration lifecycle, i.e., a sequence of capability-security pairs or security configuration lifecycle phases or their functional equivalents
[0132] 504 security configuration code, i.e., code that, when executed, allocates identities and other security credentials between two related accounts (primary account and secondary account) based on the capability level of the secondary user or the current security configuration lifecycle stage of the account; may be implemented as part of security code 204
[0133] 506 User capability information, i.e., information that implies, states, or indicates the user's capability level, such as "3 years old", "baby", "novice", "30%", "level 99", or other values
[0134] 508 Master Account
[0135] 510 Identity credential, e.g., a digital structure within a computing system that represents a user ID 208 or otherwise asserts an identity; may also refer to the assertable identity itself
[0136] 512 login credentials, for example, a digital structure of a password 210 or a certificate 212 that represents an authentication identity credential within a computing system,
[0137] 514 Subsidiary Accounts
[0138] 516 The security configuration of the account, i.e., the set of security credentials currently used to protect the confidentiality, integrity, or availability of the account; including the designation of the relevant subsidiary account or the primary account for the primary account or the subsidiary account, respectively; may include one or more login credentials, a non-logged-in identity, a logged-in identity, a pointer or other identifier of the capability-security pair applied to the account, a pointer or other identifier of the security configuration lifecycle stage to which the account currently belongs, and a capability level
[0139] 518 Affiliate User Age Range
[0140] 602 Security configuration lifecycle phases; may be implemented as a credential bundle; pointer or index to a set of capability-security pairs; record, object, structure or other data structure in a list, array or other more inclusive data structure containing at least three phases
[0141] 604 Scenarios involving adults with reduced capacity
[0142] 606The Nature of the Security Configuration Lifecycle Phase
[0143] 608 Trigger for creating a subsidiary account
[0144] 610 Growth in the security configuration lifecycle, e.g., by noting that the physiological age of a secondary user has exceeded a maximum age specified for a particular security configuration lifecycle stage, and automatically transitioning the secondary user's account to a subsequent security configuration lifecycle stage having an age range that includes the secondary user's current physiological age; growth transitions a pair of related accounts (secondary account and primary account) from one security configuration lifecycle stage to an adjacent security configuration lifecycle stage that provides greater secondary account functionality than prior to growth
[0145] 700 is a method for configuring a master account and a subsidiary account according to a security configuration lifecycle, for example, even if no changes are made to the master account, executing steps whose result is that the master account and the subsidiary account are uniformly configured according to the security configuration lifecycle, or executing steps that change both the master account and the subsidiary account to uniformly configure them according to the security configuration lifecycle; 700 also refers to Figure 7 A flowchart of such a method is shown in
[0146] 702 Detection of triggers for creating secondary accounts
[0147] 704 Creates a secondary account; this allocates at least one internal account data structure, but does not fully configure the account's security configuration during its lifecycle
[0148] 706 Designates subsidiary accounts and master accounts as having related security configurations; a subsidiary account has only a single designated master account, but a master account can have zero or more designated subsidiary accounts
[0149] 708 Obtaining the capability information of the subordinate user, for example, the expected date of birth, date of birth, year of birth, physiological age in years, psychological age in years, enumeration values such as "infant", "teenager", "expert", etc.
[0150] 710 The secondary account and the primary account are configured with relevant security configurations, such as by configuring the secondary account and the primary account according to security specifications selected based on the capabilities of the secondary account user, or by configuring the secondary account and the primary account according to the nature of the security configuration life cycle stage that matches the capabilities or maturity of the secondary account user.
[0151] 712 Locate the account pair (subsidiary account and corresponding designated master account) in the security configuration lifecycle stage; this assumes a selection between at least three available stages 602
[0152] 800 is a method for configuring a master account and a subsidiary account according to a security configuration lifecycle, for example, even if no changes are made to the master account, executing steps whose result is that the master account and the subsidiary account are uniformly configured according to the security configuration lifecycle, or executing steps that change both the master account and the subsidiary account to uniformly configure them according to the security configuration lifecycle; 800 also refers to Figure 8 A flowchart of such a method is shown in
[0153] 802 Assigning capability levels to subordinate users based on their capability information
[0154] 804 Select a capability-security pair from at least three capability-security pairs
[0155] 806 Transitioning the related account pair (subsidiary account and master account) from one security configuration lifecycle stage to another security configuration lifecycle stage; unless explicitly stated or shown otherwise, transitions occur between adjacent stages; transitions may be the result of growth, or the result of an explicit request by the master user to transition, or the result of the master user agreeing to the subordinate user's request for a transition
[0156] 900. A method for using one or more accounts configured according to a security configuration lifecycle; 900 also refers to Fig. 9 A flowchart of such a method is shown in
[0157] 902 Choose to agree to the acquisition process
[0158] 904 Consent-obtaining processes, i.e., code that, when executed, attempts to obtain consent to receive, use, or otherwise affect the confidentiality, availability, or integrity of data related to a user's private or personally identifiable information
[0159] 906 Maintaining separate recommendation biographical data 316 for the secondary user compared to the corresponding primary user, or vice versa, for example, placing the corresponding data in different storage locations and providing separate addressing or other identification for the corresponding data
[0160] 908 Personalize the secondary account content; this can be done even though the secondary account has no login identity other than the primary account; for example, this can be done by placing the secondary user data in a different storage location and providing separate addressing or other identification for that data to distinguish it from the primary user data
[0161] 910 Increase the ability of the secondary user to access account items, for example, by adding secondary user account login credentials, by removing the requirement for login assistance from the primary user, or by allowing the secondary user to access account items that were previously denied access to based on the secondary user's lower capability level
[0162] 912 Protect account item(s) from unauthorized access
[0163] 914 Preserve the integrity of account item(s)
[0164] 1000 Fig.10 The flowchart shown, which incorporates Figure 7 , Figure 8 and Fig. 9 Step 1002 shown in FIG. 1 uses a computing system account; the person using the account is the user
[0165] 1004 Indicates the user's biological age in an explicit or implicit manner
[0166] 1006 has a login identity or login authentication credentials (such as a password or token)
[0167] 1008 Missing login identity, missing login authentication credentials
[0168] 1010 assisting the affiliated user to log into the affiliated account, for example by electronically expressing consent to log in
[0169] 1012 Protect account security, such as by using access controls, security credentials or other technical measures to prevent breaches of confidentiality, availability or integrity
[0170] 1014 A third party, that is, someone who is not the primary user and is not a secondary user
[0171] 1016 Configure the account recovery mechanism, for example by specifying an email address for receiving account recovery emails
[0172] 1018 Assigning a non-login account identifier to an account
[0173] 1020 Tagging a photograph or other recorded media to digitally identify the user as the person depicted in the recorded media
[0174] 1022 Operate computing systems, e.g., log in, change settings, access account items
[0175] 1024 provides an email address, e.g., connects the email address to the account so that the email address will be recognized as an identifier for the account
[0176] 1026 Indicates the social relationship between users
[0177] 1028 Perform account security setup, e.g., install credentials in the first instance
[0178] 1030 Modify account security settings, such as adding, modifying, or deleting previously installed credentials
[0179] 1032 Verify account security configuration by determining credentials without changing security setup
[0180] 1034 Establishing account security, such as by installing, modifying, or deleting security credentials
[0181] 1036 Provide API
[0182] 1038 Manual transition to another life cycle stage, as opposed to automatic transition due to the effects of growth 610
[0183] Operating Environment
[0184] refer to Figure 1 , an operating environment 100 for an embodiment includes at least one computer system 102. Computer system 102 may or may not be a multiprocessor computer system. An operating environment may include one or more machines in a given computer system, one or more of which may be clustered, client-server networked, and / or peer-to-peer networked within a cloud. An individual machine is a computer system, and a group of cooperating machines is also a computer system. A given computer system 102 may be configured, for example, for an end user with an application, for an administrator, as a server, as a distributed processing node, and / or in other ways.
[0185] Human users 104 can interact with computer system 102 via typed text, touch, voice, movement, computer vision, gestures, and / or other forms of I / O using displays, keyboards, and other peripherals 106. Screen 126 can be a removable peripheral 106 or can be an integral part of system 102. A user interface can support interaction between an embodiment and one or more human users. The user interface can include a command line interface, a graphical user interface (GUI), a natural user interface (NUI), a voice command interface, and / or other user interface (UI) presentations, which can be presented as different options or can be integrated.
[0186] System administrators, network administrators, software developers, engineers, and end users are each specific types of users 104. End users can be adults or minors. Automated agents, scripts, playback software, etc. that represent one or more people can also be users 104, for example to facilitate testing system 102, but unless otherwise explicitly stated, end users are people (not processes). Depending on the separability of storage devices and / or networking devices from processor 110, they can be considered peripherals in some embodiments and can be considered part of system 102 in other embodiments. For example, not in Figure 1 The other computer systems shown in the drawings may technically interact with computer system 102 or with another system embodiment by using one or more connections to network 108 via a network interface device.
[0187] Each computer system 102 includes at least one processor 110. Similar to other suitable systems, the computer system 102 also includes one or more computer-readable storage media 112. The storage media 112 can be of different physical types. The storage media 112 can be volatile memory, non-volatile memory, local fixed media, removable media, magnetic media, optical media, solid-state media, and / or other types of physical persistent storage media (as opposed to just a propagated signal or pure energy). In particular, when inserted or otherwise installed, a configured storage medium 114 such as a portable (i.e., external) hard drive, CD, DVD, memory stick, or other removable non-volatile storage medium can functionally become a technical part of the computer system, making its content accessible to interact with and be used by the processor 110. The configured removable storage medium 114 is an example of a computer-readable storage medium 112. Some other examples of computer-readable storage media 112 include built-in RAM, ROM, hard disks, and other memory storage devices that are not easily removed by the user 104. For purposes of compliance with current US patent requirements, under any pending or issued US claim, a computer-readable medium, computer-readable storage medium, or computer-readable memory is not a signal per se or simply energy.
[0188] The storage medium 114 is configured with binary instructions 116 that are executable by the processor 110; "executable" is used in a broad sense herein to include, for example, machine code, interpretable code, byte code, and / or code running on a virtual machine. The storage medium 114 is also configured with data 118, which is created, modified, referenced, and / or otherwise used for technical effect by executing the instructions 116. The instructions 116 and data 118 configure the memory or other storage medium 114 in which they reside; when the memory or other computer-readable storage medium is a functional part of a given computer system, the instructions 116 and data 118 also configure the computer system. In some embodiments, a portion of the data 118 represents items in the real world, such as product characteristics, inventory, physical measurements, settings, images, readings, targets, volumes, etc. Such data is also transformed by backup, restore, submission, abort, reformat, and / or other technical operations.
[0189] Although the embodiments may be described as software instructions executed by one or more processors in a computing device (e.g., a general-purpose computer, a server, or a cluster), such description is not meant to exhaust all possible embodiments. It will be appreciated by those skilled in the art that the same or similar functions may also be implemented in whole or in part directly in hardware logic to provide the same or similar technical effects. Alternatively or in addition to software implementations, the technical functions described herein may be performed at least in part by one or more hardware logic components. For example, and without excluding other implementations, the embodiments may include hardware logic components 110, 128, such as field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), system-on-chip components (SOCs), complex programmable logic devices (CPLDs), and similar components. The components of the embodiments may be grouped into interactive functional modules based on, for example, their inputs, outputs, and / or their technical effects.
[0190] In addition to the processor 110 (e.g., CPU, ALU, FPU and / or GPU), memory / storage medium 112 and display 126, the operating environment may also include other hardware 128, such as, for example, batteries, buses, power supplies, wired and wireless network interface cards. The terms "screen" and "display" are used interchangeably herein. The display 126 may include one or more touch screens, a screen that responds to input from a pen or tablet computer, or a screen that is only used for output. In some embodiments, peripheral devices 106 such as human user I / O devices (screens, keyboards, mice, tablet computers, microphones, speakers, motion sensors, etc.) will be in operable communication with one or more processors 110 and memory. The software process may be a user 104, but unless otherwise explicitly stated, the end user is a person.
[0191] In some embodiments, the system includes multiple computers connected via a network 108. A network interface device may provide access to the network 108 using components such as a packet-switched network interface card, a wireless transceiver, or a telephone network interface, which components may be present in a given computer system, for example. However, embodiments may also communicate technical data and / or technical instructions via direct memory access, removable non-volatile storage media, or other information storage retrieval and / or transmission methods.
[0192] Those skilled in the art will appreciate that the foregoing aspects and other aspects presented herein in the context of an "operating environment" may form part of a given embodiment. The headings of this document are not intended to strictly categorize features into embodiment and non-embodiment feature sets.
[0193] One or more items are shown in outline form in the figures, or listed in brackets, to emphasize that they are not necessarily part of the operating environment or all embodiments shown, but can interoperate with the operating environment or items in some embodiments as described herein. In any figure or any embodiment, items that are not outlined or in brackets are not necessarily required. In particular, Figure 1 is provided for convenience; Figure 1 The inclusion of an item does not imply that the item or the use of the item described was known prior to the current innovation.
[0194] Account Environment
[0195] refer to Figure 2 and Figure 3 , various aspects of the present disclosure relate to account security. An account 202 is a collection of account items 206 protected by a security code 204, which implements access control on behalf of an end user 104 based on one or more security credentials 324. The security code 204 can implement arbitrary access control, mandatory access control, role-based access control, other access control, or a combination thereof. An initial access request 214 for access to an account item is through a security code; subsequent authorized access may also be through a security code, or the item may be accessed directly once the end user's access authorization is identified. An end user is identified to the security code by a user ID 208, which is authenticated by the security code, or by other code that the security code calls or communicates with. Authentication may be performed using an authentication mechanism such as a password 210 or a digital certificate 212.
[0196] like Figure 2 As shown by the arrows in , the interaction between the end user and the security code 204 or the account item 206 includes a request 214 from one side and a response 216 from the other side. A given request can go to or from the end user, where the corresponding response will go in the other direction.
[0197] Figure 3Account item examples are shown. In this figure, all account item examples are shown in dashed lines to emphasize that a given account does not necessarily include any specific subset of these examples. However, it will be understood that in an actual account 202, the set of account items 206 is not empty. The illustrated examples of account items 206 include an indication of the user's age 302, photos and other recording media 304, posts 306, files 308 (including photos and other data stored in files), games 310, email addresses 312, non-login IDs 314 (such as GUIDs), recommended biographical data 316, designations of one or more security configuration-related accounts 318 (subsidiary accounts specify a single primary account, but in some implementations, a primary account can specify more than one subsidiary account and can have different security configurations for each designated subsidiary account), data 320 indicating social relationships between users 104, account settings 322, account security credentials 324, data related to account recovery mechanisms 326, and other account items 328. Other account items 328 include any digital artifact or digitally provided service protected by the security code 204, which implements access control to the items on behalf of the account's (multiple) end users 104 based on one or more of the account security credentials 324.
[0198] about Figure 4 and 5 , system 102 can be configured as system 500 according to the teachings of this document, and system 500 operates according to life cycle 502 by modifying the security configuration 516 of the account, and the life cycle 502 controls the changes of security over time. The security configuration 516 of the account resides on the system 500 or is accessed through the system 500.
[0199] In some embodiments, the security configuration lifecycle 502 is implemented using a group 406 of capability-security pairs 400. Each capability-security pair 400 associates a capability level 402 of an affiliated end user with a security specification 404. The security specification 404 specifies an account security configuration 516 for an affiliated user account 514 and a primary user account 508 designated by the affiliated user account. For example, a capability-security pair A may associate a first security specification with a toddler capability level, while a capability-security pair B associates a second security specification with a 10- to 12-year-old capability level, and a capability-security pair C associates a third security specification with a teen capability level. In this example, the first security specification provides a toddler as a user with fewer rights than the second security specification provides a 10- to 12-year-old as a user, while the third security specification provides a teen account with more rights than the 10- to 12-year-old receives.
[0200] The security specification 404 can specify an identity 510 for each account 202. The security specification 404 can specify login credentials 512 for authenticating the identity 510.
[0201] The capability-security pair grouping 406 may arrange the capability-security pairs 400 in a sequence, such as a sequence based on the range of user ages 302. The capability-security pairs 400 and the executable code that reads them may be part of the security configuration code 504. The capability level applied to a given end user (in this example, a secondary account user, also referred to as a secondary user) may be determined by the security configuration code 504 based on the end user's capability information 506, such as the end user's physiological age or a descriptive category label (such as "toddler", "teen between 10 and 12 years old", "teenager", etc.). The security configuration code 504 may be part of the security code 204.
[0202] Figure 6 The security configuration lifecycle 502 is illustrated as having a plurality of phases 602, and example properties of each of the illustrated phases are given. This example illustrates another view of how the security configuration lifecycle 502 can be architected. Using the capability-security pair 400 is to implement Figure 6 One way of example, where each specific stage corresponds to a specific capability-security pair 400. However, other implementations may also be used. An embodiment may, for example, include: a state machine that moves through states corresponding to corresponding stages 602; or include a collection of objects, the members of which implement properties 606, and the current stage 602 is represented by the object address; or include executable code, in which the stages are different sections of code and the current stage 602 is implicit in the instruction counter or explicit in the global variable. Those skilled in the art will recognize that multiple other implementations are possible without departing from the teachings provided herein.
[0203] Figure 6 Also shown is a Boolean variable is-child, whose value indicates whether the affiliated user is a minor. As another example of the range of possible implementations, one implementation may include such a Boolean variable, while another implementation does not include a Boolean variable that is used only to indicate the distinction between a child and an adult.
[0204] Figure 6Also illustrated is a flow through different stages 602 as indicated by arrows. The flow may begin with a trigger 608, which triggers the creation of a subsidiary account. For example, the trigger 608 may be an explicit request by a child for the system to obtain permission from their parents and create an account for them (the child). Or the trigger 608 may be an explicit request from a parent to create a child's account as a subsidiary of the parent's account, or the trigger may be an explicit request from a teacher to create N subsidiary accounts for N corresponding students. Or the trigger 608 may be a mark and label of an ultrasound or image of an expectant mother (using a name previously unknown to the system 500), from which the system infers the presence of an unborn baby who will become a subsidiary account user in due time. As previously described, the creation of a subsidiary account does not necessarily place the resulting subsidiary account in life cycle stage A; for example, an account for an older child may start at stage B or even stage C.
[0205] In the illustrated set of life cycle stages 602, a parent or other primary user has a large or complete control when the account is in stage A or stage B. In stage C, control is shared with the secondary user. In stage D, a child or other secondary user has a large control over the secondary account.
[0206] All applicable laws, regulations, end-user license agreement terms, service provider policies, and other privacy protections and commitments should be enforced with respect to account creation trigger 608, user age 302, pregnancy status, and all other personal data in system 102 or configured system 500. System implementers, system administrators, system debuggers, and any other personnel who have access or may have access to any user's personally identifiable information or other private information should receive appropriate training and incentives to understand and follow all standards, procedures, policies, regulations, and laws that apply to protecting user privacy in a particular situation. Any interpretation of this disclosure that indicates that an invasion of privacy is acceptable is an incorrect and unreasonable interpretation.
[0207] like Figure 6 As shown by the arrows in , accounts may undergo natural growth 610, where the primary account and the secondary account are automatically reconfigured over time as the secondary user grows. For example, consider an implementation where state A corresponds to a secondary user from non-birth to three years old, and state B corresponds to a secondary user from three years old to six years old. Assume that the system has been assigned a birthday for a particular secondary user and calculates that the secondary user has just turned three years old. The system 500 can then automatically transition the secondary user's account and the primary account specified therein from stage A to stage B. A transition notification can then be sent to the primary user or the secondary user or both.
[0208] like Figure 6As shown by the arrow in , from stage E back to stage C, the account may undergo a reverse transition, i.e., the rights granted to the subsidiary user are reduced. For example, this may occur in an elder care scenario 604 where the elder is losing ability (physical, mental, or both) or is simply not interested or willing to take full responsibility for his or her account. In this case, the elder's account can be considered a subsidiary account, while the account of the elder's caregiver (their offspring or professionals) is considered the primary account. Therefore, the two accounts can be configured or reconfigured to give more responsibilities and corresponding functions to the caregiver and remove some account functions from the elder.
[0209] More information about the system
[0210] Examples are provided herein to help illustrate various aspects of the technology, but the examples given in this document do not describe all possible embodiments. The embodiments are not limited to the specific implementations, arrangements, displays, features, methods, or scenarios provided herein. A given embodiment may include, for example, additional or different technical features, mechanisms, sequences, or data structures, and may otherwise depart from the examples provided herein.
[0211] Some embodiments use or provide a system 500 configured via a network security lifecycle, for example, a computing system 102 configured using a user capability-based security configuration lifecycle 502. The system 500 includes at least one processor 110 and a digital memory 112 in operable communication with the processor. The system 500 also includes a set 400 of three or more digitally implemented capability-security pairs, each capability-security pair including a corresponding capability level 402 and a corresponding security specification 404. The security specification 404 specifies a security configuration 516 for a primary account 508 of a primary user 104 and a secondary account 514 of a secondary user 104.
[0212] In this example, these capability-security pairs 400 include at least the following. The pair 400, represented here as pair A, has a security specification that specifies that the secondary account does not have a login identity 510 other than the primary account, and the secondary account does not have login credentials 512. The pair 400, represented here as pair B, has a security specification that specifies that the secondary account has an identity 510 different from the login identity of the primary account, but the secondary account lacks sufficient login credentials 512 for the secondary user to log in to the secondary account without the assistance of the primary user. The pair 400, represented here as pair C, has a security specification that specifies that the secondary account has a login identity 510 different from the login identity of the primary account, the secondary account has sufficient login credentials 512 for the secondary user to log in without assistance from the primary user, and the primary account also has a login credential for the secondary account that allows the primary user to log in to the secondary account.
[0213] In this example, and now at least with reference to Figure 4 , Figure 5 , Figure 7 , Figure 8 , the system 500 also includes account security configuration code 504 residing in the memory 112. When executed by the processor 110, the security configuration code 504 performs the following operations: (i) obtains 708 subsidiary user capability information 506, (ii) assigns 802 a capability level 402 to a subsidiary user based at least in part on the subsidiary user capability information, (iii) selects 804 a capability-security pair 400 corresponding to the assigned subsidiary user capability level 402, and (iv) configures 710 the primary account 508 and the related (e.g., designated 318) subsidiary account 514 so that they are consistent with the security specification 404 of the selected capability-security pair. In this example, the capability level for A indicates less subsidiary user capability than the capability level for B, and the capability level for B indicates less subsidiary user capability than the capability level for C.
[0214] In some embodiments, in the computing system 500, at least two of the following conditions are satisfied: the ability level 402 for A indicates that the physiological age of the subsidiary user is within a range with a highest endpoint not greater than five years old; the ability level 402 for B indicates that the physiological age of the subsidiary user is within a range with a lowest endpoint not less than four years old; the ability level 402 for B indicates that the physiological age of the subsidiary user is within a range with a highest endpoint not less than eight years old; the ability level 402 for C indicates that the physiological age of the subsidiary user is within a range with a lowest endpoint not less than eight years old; the ability level 402 for C indicates that the physiological age of the subsidiary user is within a range with a highest endpoint not greater than thirteen years old; or the physiological age of the subsidiary user is greater than 18 years old, but based on the subsidiary user ability information, the ability level 402 assigned to the subsidiary user is the ability level for C or lower.
[0215] In the conditions, the given ages are not necessarily endpoints; they are constraints on endpoints. Thus, the range from zero to three years old, the range from zero to but not including four years old, and the range from zero to five years old are each "a range whose highest endpoint is not greater than five years old." In addition, the last listed condition (where the physiological age of the affiliated user is greater than eighteen years old) is related to the elderly care scenario (also known as the "dependent elderly" scenario) 604, while the other listed conditions are related to scenarios involving affiliated users who are minors (as defined by applicable local laws, regulations, policies, standards, or end user license agreements).
[0216] In some embodiments, in the computing system 500 , as the secondary account grows 610 , the account security configuration code 504 will, when executed, automatically transition 806 at least the secondary account 514 , thereby increasing the capability level 402 assigned 802 to the secondary user over time.
[0217] In some embodiments, in computing system 500 , a secondary account has a globally unique identifier 314 that does not appear as login identity 510 , but is visible to applications 124 to distinguish the secondary account 514 from the primary account 508 .
[0218] In some embodiments, the account security configuration code 504 selects capability-security pair B or its functional equivalent named something other than "B", and the secondary account 514 has a different email address 312 than the primary account.
[0219] In some embodiments, computing system 500 includes data 320 indicating that at least one of the following social relationships exists between the subsidiary user and the primary user: child and parent, child and teacher, child and guardian, patient and guardian, patient and provider, care recipient and caregiver, dependent parent and offspring. For example, these social roles can be presented in a user interface as data tags or field tags or other tags. In some cases, social roles can be presented as examples in online tutorials or other user documents. In some implementations, social roles can be presented by role indication identifiers in source code that is compiled to create security configuration code 504, and thus the role indication identifiers can appear internally as symbols in a symbol table, etc. in code 504.
[0220] In some embodiments, in computing system 500, capability-safety pair capability levels 402 are indicated by attached user age ranges 518, and the capability-safety pair capability levels collectively span a continuous physiological age range from five years old or younger to thirteen years old or older. For example, capability level groups can have embedded or otherwise corresponding age ranges 518, according to any of the following examples, where {} indicates a group 406, and [] indicates a single age range, and unless otherwise indicated, integers represent ages, with zero at birth:
[0221] {[2..3],[3..5],[5..7],[7..11],[11..13],[13..17],[18..21],[21..111]}
[0222] {[0..2],[2..4],[4..7],[7..13],[13..18],[18..99]}
[0223] {[-6 months..2 years],[2..4],[4..7],[7..13],[13..18],[18..100]}
[0224] {[5..9],[9..13]}
[0225] {[0..5],[5],[6],[7],[8],[9],
[10] ,
[11] ,
[12] ,
[13] ,[14..18]}
[0226] Those skilled in the art will recognize that many other ability level groups may be defined, where the ability-safety pair ability levels collectively span a continuous physiological age range from 5 years or younger to 13 years or older.
[0227] method
[0228] Figure 7 A method 700 is illustrated, which is an example of a method performed or assisted, for example, by security configuration code 504, and creates and configures a secondary account with a primary account according to a security configuration lifecycle 502. The method includes detecting 702 a secondary account creation trigger, which can be achieved, for example, by receiving GUI input or other data that explicitly or implicitly requests 214 creation of a secondary account.
[0229] The illustrated method then creates 704 the secondary account, which may include allocating space for the account in the system structure. Account creation may also include assigning a user ID 208 to the account, which may be provided in the creation request but may be generated internally. Account creation may also include associating any default account items 206 (e.g., default settings 322 and possibly automatically generated GUID 314) with the new account.
[0230] The illustrated method then designates 706 the new secondary account and the primary account as security configurations associated with each other. The primary account may be identified in the secondary account creation request 214, or may be the primary account of interest when the trigger 608 occurs, for example, or may be determined based on an email address provided by the minor in the secondary account creation request.
[0231] The illustrated method then obtains 708 the secondary user capabilities information 506. This information 506 may be in the account creation request, or may be obtained from the user of the primary account.
[0232] The illustrated method then configures 710 the satellite and primary accounts in accordance with the implementation of the security configuration lifecycle 502 teachings herein, e.g., based at least on the capability level of the satellite user whose account is being created and configured, by adding, modifying, or deleting security credentials in each account to match the nature of the lifecycle stage 606 or the security specification of the capability-security pair. The primary user preferences may also be considered, e.g., Figure 6 Any properties shown as "optional" in the example above can be configured based on the master user preferences 328 or, in some embodiments, based on system default settings. The configuration results in positioning 712 the secondary account and the primary account within the security configuration lifecycle 502, for example, by positioning the secondary account and the primary account at a specific stage 602 in the lifecycle.
[0233] Figure 8 A method 800 is illustrated, which is another example of a method for configuring a secondary account with a primary account according to a security configuration lifecycle 502. The method obtains 714 secondary user capability information 506, assigns 802 capability levels 402 to secondary users (or equivalently, secondary user accounts 514) based on the capability information 506, and configures 710 the secondary account and the primary account according to the implementation of the security configuration lifecycle 502 teachings herein. Then some time passes, and age growth 610 occurs. Depending on the age of the secondary user when the capability level 802 was last assigned and the endpoints of the age range 518 of the implementation lifecycle 502, the amount of time that passes during this age growth process may range from as short as a day to several years, or even longer. At some point, the age of the secondary user exceeds the maximum age of the previously assigned capability level, and the system 500 will transition 806 to a later life cycle stage.
[0234] Fig. 9 A method of performing one or more utilizations of a security lifecycle is illustrated. System 500 has accounts 508 and 514 that have been or are currently configured 710 to have a security configuration lifecycle 502 as taught herein. This provides various advantages by improving computing system functionality.
[0235] For example, the system 500 can select 902 or recommend a consent acquisition process 904 based on the current capability level of the secondary user or the current security configuration lifecycle stage 602 of the secondary account. The consent acquisition process is a procedure for obtaining the primary user's consent for the actions or inactions of the secondary user. Depending on the age of the secondary user, different consent procedures may be enforced or may be preferred as a policy.
[0236] For example, in one jurisdiction, parental consent is required before a website may ask any child under the age of 13 for personal information such as name, address, any photographs or other recording media 304 that include the child's image or recording of the child's voice. Another jurisdiction may require such parental consent for any child under the age of 14. Users over the applicable threshold in a jurisdiction may be able to legally provide consent on their own.
[0237] Different account items 206 may have different associated consent ages. For example, a jurisdiction may have a consent threshold of 13 for uploading personal information and 18 for browsing web pages with reduced or no content filtering (through an account).
[0238] For example, by querying one or more account APIs on the primary account or the secondary account, service item 206 can effectively select a legal and valid consent procedure. This function can reduce inefficient or ineffective use of computing system resources and avoid delays caused by non-automatic consent.
[0239] In a given system 500, the consent acquisition process is implemented by code 504, which generates user interface forms, processes input responses, and otherwise performs to obtain and save consent. This may include charging a credit card or otherwise performing automated steps to verify the authority to give consent.
[0240] The system 500 can maintain 906 separate recommendation histories 316 for the subsidiary user and the primary user. Thus, even if the life cycle stage is such that the child does not have a separate login from the parent, the video selections made by the child in the child's account will not distort the content recommended to the parent for the parent to watch. In addition, after the child's account transitions 806 to a later stage 602 (in which the child does log in separately), the child's recommendation history continues to inform the recommended content for the child and remains separate from the parent's recommendation history. In some embodiments, the transition itself or the current stage of the child's account or both are visible to the service or other account item 206 that provides the recommendation, and thus can notify the recommendation being made. For example, by querying one or more account APIs, the video streaming service can automatically determine that the primary user R is an adult, the subsidiary user G is a child between 4 and 6 years old, and the subsidiary user T is a teenager between 13 and 17 years old. This age information allows more relevant recommendations to be made. As shown elsewhere in this article, personal information (such as, user age range) should only be provided through an API or other means if the user agrees to provide personal information, and is subject to all applicable privacy rights.
[0241] Even if the secondary account has no login credentials other than the login credentials of its primary account, the system 500 can include a non-login ID 314 with the secondary account. The non-login ID 314 allows the application 124 and the account service item 206 to personalize the content 908 for the secondary user. For example, the sonogram 304 can be a part of personal content whose access control mechanism will be transitioned over time 806 as the user matures. The life cycle stage information also helps to connect recorded media items created many years apart to the same secondary user, such as during the creation of a timeline with additional media. The application or service can also connect photos created many years apart to a specific secondary user, even though the user's appearance has changed over the years. When the secondary user reaches the age of majority, or the secondary account transitions 806 to a user such as Figure 6 During stage D of the lifecycle (where the primary user can no longer log into the secondary account), the secondary user can still access their personal data.
[0242] Over time, and subject to privacy and security protections and appropriate consent, machine learning can be applied to tag (or tag for confirmation) or otherwise consistently identify affiliated users in recorded media 304, on social networking sites, using non-login ID 314. Such user identification can be performed to support providing advertisements or recommendations customized for affiliated users, and to provide other personalized services. Machine learning guided by non-login ID 314 can help identify affiliated users at different ages.
[0243] Particularly in the past few years, identifying different content as belonging to the same affiliated user can also help encode reasons about that user. For example, automated reasoning can be performed when determining how best to obtain legal consent for actions involving the affiliated user's personal information or privacy or maturity or legal status, and when separating content that is entirely or primarily related to the primary user from content that is entirely or primarily related to the affiliated user. Over time, an affiliated user can take full control of an affiliated account without losing digital history data (pictures and other content, preferences, etc.) that was created in the account before the affiliated user fully matured.
[0244] More generally, as taught herein by implementing the security configuration lifecycle 502 , the system 500 can increase 910 access to secondary accounts by secondary users while still protecting 912 and preserving 914 the integrity of primary account items. Figure 6An example of adding 910 secondary user access is provided. At stage A, the secondary user does not actually have access except perhaps viewing account items while being held by a parent primary user or while sitting on a parent's lap. At stage B, secondary user access may be through the secondary user's own ID 208. At stage C, the secondary user may log in directly using their own login credentials, which they did not have in stage A or stage B. At stage D, the secondary user access control 910 is further enhanced in the sense that now the primary user cannot log in directly to the secondary user account.
[0245] Fig.10 Some method embodiments are further illustrated in the overall flowchart 1000. Unless otherwise indicated, the technical methods shown in the figures or otherwise disclosed will be automatically executed, for example, by the network security system 500 overall or specific security configuration code 504. To the extent that human administrators or other human actions are involved, the methods may also be partially automatically and partially manually executed, for example, in some embodiments, a parent or other primary user may set an age range 518 endpoint that determines which stage 602 is applicable. None of the methods contemplated as innovative herein are entirely manual. In a given embodiment, zero or more of the illustrated steps of the method may be repeated, possibly with different parameters or data to be operated on. The steps in the embodiments may also be performed in a manner similar to the above. Fig.10 The steps may be performed in a different order from the order shown from top to bottom. The steps may be performed sequentially, in a partially overlapping manner, or completely in parallel. The order in which the flowchart 1000 is traversed to indicate the steps performed during the method may vary from one execution of the method to another execution of the method. The order in which the flowchart is traversed may also vary from one method embodiment to another method embodiment. Steps may also be omitted, combined, renamed, regrouped, or otherwise deviate from the flow shown if the method performed is operable and complies with at least one claim.
[0246] Some embodiments use or provide a computer-implemented method for configuring a computing system account based on a security configuration lifecycle. During use 1002 of a primary account 508 by a primary user in a computing system 500, the system electronically detects 702 a secondary account creation trigger 608. In response to the secondary account creation trigger, the system electronically creates 704 a secondary account 514 for the secondary user. The system designates 706 the secondary account and the primary account as accounts with respective security configurations 516 associated with each other, and obtains 708 secondary user capability information 506. In this example, the secondary user capability information 506 indicates 1004 that the secondary user has an actual age of less than 18 years old. Different ages may be indicated 1004 in other ways, such as fourteen or thirteen years old, or another legally binding age. Based on at least a portion of the secondary user capability information, the system performing the method automatically configures 710 the primary account and automatically configures 710 the secondary account, thereby precisely positioning 712 the configured account in one of the predetermined groups of security configuration lifecycle stages.
[0247] In this example, the predefined group of security configuration lifecycle stages include: a stage represented here as stage A, in which the satellite account does not have a login identity other than the primary account, and the satellite account does not have login credentials; a stage represented here as stage B, in which the satellite account has an identity other than the login identity of the primary account, but the satellite account lacks sufficient login credentials for the satellite user to log in to the satellite account without assistance from the primary user; and a stage represented here as stage C, in which the satellite account has a login identity other than the login identity of the primary account, the satellite account has sufficient login credentials for the satellite user to log in without assistance from the primary user, and the primary account also has the satellite account login credentials that permit the primary user to log in to the satellite account.
[0248] In short, the method performs 1028, modifies 1030, or verifies 1032 identification and authentication setup 1034 of the primary and secondary accounts. The setup controls are performed in a manner that: (i) is consistent with the secondary user's biological age being under eighteen years of age; (ii) helps protect 1012 the secondary account from unauthorized third-party access 1014; and (iii) positions the primary and secondary accounts together 712 in the security configuration lifecycle 502. For example, consistency with the secondary user's actual age being under eighteen years of age would be violated by violating any law, regulation, standard, or policy in an applicable jurisdiction regarding the privacy and protection of minors.
[0249] In some embodiments, the method includes at least reconfiguring 710 a satellite account and thereby transitioning 806 from stage A to stage B or from stage B to stage C, or between differently named but functionally equivalent stages.
[0250] In some embodiments, the method includes reconfiguring 710 at least the master account, and thereby transitioning 806 from stage C to stage D, in which the master account no longer has the secondary account login credentials. In some of these, the method also includes configuring 1016 the master account in stage D as part of an account recovery mechanism 326 for restoring access to the secondary account.
[0251] In some embodiments, the method includes automatically selecting 902 a consent acquisition process 904 based at least in part on (i) a current security configuration lifecycle stage, or (ii) a subordinate user capability level associated with the current security configuration lifecycle stage.
[0252] In some embodiments, the accounts 508, 514 are in stage B or they are in stage C, and the method further includes maintaining 906 separate recommendation histories 316 for the secondary user and the primary user.
[0253] In some embodiments, creating 704 a secondary account for the secondary user includes assigning 1018 a non-logged-in account identifier 314 to the secondary account, and making the non-logged-in account identifier available to an application for content personalization, such as via providing 1036 an API.
[0254] In some embodiments, the method positions 712 the accounts 508, 514 in stage A or some other functionally equivalent stage, and the subsidiary account creation trigger is generated by or otherwise corresponds to the action of marking 1020 in the image any of the following: an unborn child, an infant under 18 months of age. In other embodiments, different age thresholds are used, such as twelve months or twenty-four months.
[0255] In some embodiments, the method includes transitioning 806 through at least two prior security configuration lifecycle stages to stage E, in which the secondary account and the primary account each have their own login identities, each have their own login credentials, and each does not have login credentials to log in to the other account.
[0256] Configured storage media
[0257] Some embodiments include a configured computer-readable storage medium 112. The storage medium 112 may include a disk (magnetic, optical or other), RAM, EEPROM or other ROM and / or other configurable memory, particularly including a computer-readable storage medium (not simply a propagating signal). The configured storage medium may specifically be a removable storage medium 114, such as a CD, DVD or flash memory. A general purpose memory, which may be removable or non-removable and volatile or non-volatile, may be configured into an embodiment using items such as capability-security pairs 400, security configuration code 504 and security configuration lifecycle stages 602, in the form of data 118 and instructions 116 read from a removable storage medium 114 and / or another source such as a network connection. As disclosed herein, the configured storage medium 112 enables a computer system to perform technical process steps for enhancing network security by locating 712 accounts together in the security configuration lifecycle 502 and transitioning 806 them together through the lifecycle stages 602 as the affiliated users mature. The accompanying drawings thus help illustrate the configured storage medium embodiments and process embodiments, as well as the system and process embodiments. In particular, Figure 7 , Figure 8 , Fig. 9 or Fig.10 Any process steps shown in or otherwise taught herein may be used to help configure a storage medium to form a configured storage medium embodiment.
[0258] Some embodiments use or provide a computer-readable storage medium 112 configured with executable code for performing a method for configuring a computing system account based on a security configuration lifecycle. The method includes obtaining 714 subsidiary user capability information, the subsidiary user capability information indicating that the subsidiary user has a capability level corresponding to an age of less than eighteen years old. Based on the subsidiary user capability level, the method automatically configures 710 the primary account and initially automatically configures 710 the subsidiary account, thereby accurately positioning 712 the account in one of the following security configuration lifecycle stages 602: a stage represented herein as stage A, in which the subsidiary account does not have a login identity other than the primary account, and the subsidiary account does not have login credentials; a stage represented herein as stage B, in which the subsidiary account has an identity other than the login identity of the primary account, but the subsidiary account lacks sufficient login credentials for the subsidiary user to log in to the subsidiary account without assistance from the primary user; and a stage represented herein as stage C, in which the subsidiary account has a login identity other than the login identity of the primary account, the subsidiary account has sufficient login credentials for the subsidiary user to log in without assistance from the primary user, and the primary account also has a subsidiary account login credential that permits the primary user to log in to the subsidiary account. Other life cycle 502 phases may also be implemented in the code configuring the storage medium 112. The method distributes identification and authentication security controls between the primary account and the secondary account and helps protect the secondary account from unauthorized third party access.
[0259] This example also includes the aging of the account.At least one month after initially configuring the secondary account, the method at least reconfigures 710 the secondary account by transitioning 806 from stage A to stage B, or by transitioning 806 from stage B to stage C.
[0260] In some embodiments, the computer-readable storage medium is configured such that the method further comprises at least one of the following additional steps. One possible additional step is to automatically select 902 a consent acquisition process based at least in part on (i) the current security configuration lifecycle stage of the subsidiary account, or (ii) the current capability level of the subsidiary user. Another possible additional step is to maintain 906 a separate recommendation resume for the subsidiary user compared to the primary user of the primary account. Another possible additional step is to position 712 the primary account and the second subsidiary account in another security configuration lifecycle stage 602, so that the same primary account is associated with two different subsidiary accounts in two different corresponding security configuration lifecycle stages. Another possible additional step is to automatically create 704 a subsidiary account in response to the primary user of the primary account tagging the subsidiary user in a photo. Another possible additional step is to create 704 a subsidiary account in response to an explicit account creation request from the primary user of the primary account.
[0261] In some embodiments, the method includes transitioning 806 the primary account and the satellite account through at least three security configuration lifecycle stages 602 over a period of at least twelve months. In this example, the stages include at least one stage in which only the primary user has credentials to log into the satellite account, at least one stage in which the primary user and the satellite user each have credentials to log into the satellite account, and at least one stage in which only the satellite user has credentials to log into the satellite account.
[0262] Some additional combinations and variations
[0263] Any of these combinations of code, data structures, logic, components, communications, and / or their functional equivalents may also be combined with any of the above systems and variations thereof. The process may include any of the steps described herein in any subset or combination or sequence that is operable. Each variation may occur alone or in combination with any other one or more other variations. Each variation may occur with any process, and each process may be combined with any one or more other processes. Each process or combination of processes (including variations) may be combined with any of the above configured storage media combinations and variations.
[0264] In some embodiments, the security code 204 guides the primary user through a sequence such as the following to log in to stage B via a user interface:
[0265] "Login" -> "More options" -> "Login for a child" -> "Log in to your own account for the first time" -> Primary User ID and Password entered and accepted -> "Choose a child account to log in" -> Child account selected for e.g. "Bobby" -> "Bobby is now logged in". To keep your items out of the reach of your child, we will log you out of your account unless you tick the box below; the box will be labeled "Keep me logged in on this device".
[0266] Depending on the implementation, the type of account items to be accessed, the age of the affiliated users, and other factors, specific implementations of the teachings provided herein may provide advantages over other methods for account security management. Some implementations reduce registration friction by reducing the number of user actions required to create security-configured affiliated accounts. Some implementations help separate parental account items from child account items to prevent accidental damage to parental items and to prevent confusion in recommendation results. In some (if not all) implementations, the programming model that the application previously used to interact with user accounts can still be used, thereby mitigating the loss of application functionality and avoiding the redevelopment of the application.
[0267] In some conventional methods, the process of adding a child account to a family account is as follows. Through the GUI, the adult parent asks the system 102 to add the child to the family account. The child account registration process asks for the parent's email and verifies it, asks for the family account password, asks for the child's first and last name, the child's date of birth, the family's country or other jurisdiction identifier, and finally obtains one or more proofs of the parent's age. When parental consent is required, the program asks for the parent's consent and may charge the parent's credit card or take other actions to verify that the claimed parent is indeed an adult.
[0268] Under the modified procedure taught herein, the system 500 requests only the child's name and date of birth to create the child's account 514 in life cycle stage A. This improved method allows, for example, a 5-year-old child to have her or his own subsidiary account through which to play age-appropriate online games 310. The child's parents have complete security control over the child's account, which is separate from the parent's account 508 (notional family account). The vendor providing the online game to the account 514 does not need to make any changes to the game code to enable the child to access the game; from the vendor and game's perspective, the child's account is just another account.
[0269] In some conventional methods, the child creates a child account as follows. Through the GUI, the child asks the system 102 to create an account. The child account registration process asks for the parent's email, asks for a password for the new child account, asks for the child's first and last name, the child's date of birth, the child's country or other jurisdiction identifier, and finally one or more proofs of the parent's age. If parental consent is required, the program contacts the parent and asks for the child's personal information again, and if necessary, obtains parental consent based on the child's age and jurisdiction identifier. The process can charge the parent's credit card or take other actions to verify that the claimed parent is indeed an adult.
[0270] In the modified procedure taught thereby, the child is only asked for the child's name and date of birth, a jurisdiction identifier (which can be inferred), and the parent's email. The program contacts the parent, logs the parent in, has them confirm the child's name, date of birth, and country, obtains parental consent as needed, and creates the child's account. This improved method is much easier for the child. It allows the child to easily obtain her or his own subsidiary account through which to play age-appropriate online games 310. The vendor providing the online game to the account 514 does not need to make any changes to the game code to enable the child to access the game; from the vendor's perspective (from the game's perspective), the child's account is just another account.
[0271] In some implementations, as the child grows and the parent wishes to make the child's account more functional, the parent gives the child more functionality (i.e., more "freedom") in the account. One implementation provides the parent with a slider, radio button, or other widget in the GUI that the parent can move from "parent owned" to "jointly owned" to "graduated," or similar labels indicating increasing functionality. At least in this example, these transitions 806 can be commanded by the parent, i.e., they can be manual transitions 1038 that are independent of the child's biological age. Some children will be ready to take on more responsibility for their account at different ages than other children.
[0272] In one implementation, the explanation text displayed by the GUI for the least capable stage 602 is described as follows: "Parent-owned: With this account, you can choose exactly when and where your child can log into their account."
[0273] In one implementation, the explanation text for the medium capability stage 602 is described as follows: "Co-ownership: When your child goes to a friend's house, they can log in even when you're not there. Add a password to let them log in. Don't worry, if they forget their password, you'll be able to reset it."
[0274] In one implementation, the explanatory text for the high-capability stage 602 is described as follows: "Graduation: Your kids are no longer little. It's time for them to take control of their own accounts. But you can still share licenses, calendars, and other features."
[0275] During the consideration or investigation of situations where parents set up child accounts, some technical problems that motivated the innovative aspects described herein emerged. For example, the inventors asked themselves: how to simplify the registration process from the user's perspective, while still providing children with online game access, protecting parents' account items, and complying with consent requirements. However, those skilled in the art will recognize that the teachings herein can also be extended to other relationships, such as grandparent / grandchild, guardian / child, teacher / child, guardian / impaired patient, etc. Accordingly, the terms "primary user" and "subsidiary user" cover "parent" and "child", but are not limited to "parent" and "child".
[0276] Those skilled in the art will also recognize that the security lifecycle teachings herein can be applied to transitions in both directions of change in attached user capabilities (increased capabilities and decreased capabilities). One might informally talk about someone entering their "second childhood" and someone who has Alzheimer's or is "child-like" with reduced capabilities. Informal observations can be applied (in hindsight) in the operational context of the security configuration lifecycle. Similarly, one can speak informally of "psychological age" and "physiological age," and informal characteristics can be applied (in hindsight) to the techniques herein, for example, by implementing automatic growth 610 transitions 806 and user-initiated 1038 transitions 806 based on physiological age.
[0277] Although this example is in the original scenario, the teachings herein include more than just the specific example of a growing child. People who grow out of childhood have increased capabilities and therefore gain increased secondary account privileges, while elderly, injured, sick, or other people with reduced capabilities gain reduced account privileges over time. These are additional reasons to understand "primary user" and "secondary user" as broader than "parent" and "child."
[0278] in conclusion
[0279] Although specific embodiments are explicitly illustrated and described herein as processes, configured storage media, or systems, it should be understood that discussion of one embodiment type also generally extends to other embodiment types. Figures 7 to 10 The description of the process also helps to describe the configured storage medium, and helps to describe the technical effects and operations similar to the systems and manufactures discussed in conjunction with other figures. Limitations from one embodiment are not necessarily introduced into another embodiment. In particular, the process is not necessarily limited to the data structures and arrangements presented when discussing systems or articles such as configured memory.
[0280] Those skilled in the art will appreciate that implementation details may be related to specific code (such as, specific API, specific fields and specific example programs) and therefore need not appear in each embodiment. Those skilled in the art will also appreciate that program identifiers and some other terms used when discussing details are implementation specific and therefore need not relate to each embodiment. Nevertheless, although they are not necessarily required to exist here, such details may help some readers and / or may illustrate some of the many possible implementations of the technology discussed herein by providing context.
[0281] Unless such exclusion is explicitly stated herein, references herein to an embodiment having some feature X and references elsewhere herein to an embodiment having some feature Y do not exclude from the present disclosure embodiments having both feature X and feature Y. All possible negative claim limitations are within the scope of the present disclosure, in the sense that any feature indicated as part of an embodiment may be explicitly deleted from the content of another embodiment even if no specific exclusion is given in any example herein. The term "embodiment" is used herein merely as a more convenient form of "process, system, article, configured computer-readable storage medium, and / or other example of the teachings herein applied in a manner consistent with applicable law." Accordingly, a given "embodiment" may include any combination of the features disclosed herein as long as the embodiment is consistent with at least one claim.
[0282] Not every item shown in the figure must be present in every embodiment. On the contrary, an embodiment may include (multiple) items that are not explicitly shown in the figure. Although some possibilities are illustrated in the text and the accompanying drawings by specific examples herein, an embodiment may be separated from these examples. For example, a specific technical effect or technical feature of an example may be omitted, renamed, grouped differently, repeated, instantiated in hardware and / or software in different ways, or a mixture of effects or features that appear in two or more examples. In some embodiments, a function shown at one location may also be provided at a different location; for example, a person skilled in the art recognizes that a functional module may be defined in various ways in a given implementation without having to omit a desired technical effect from a set of interactive modules that are considered as a whole.
[0283] Reference is made to the accompanying drawings throughout the text by reference numerals. Any apparent inconsistency in the wording associated with a given reference numeral in the drawings or text is to be understood as simply expanding the scope of the reference to that reference numeral. Different instances of a given reference numeral may refer to different embodiments even when the same reference numeral is used. Similarly, a given reference numeral may be used to refer to a verb, a noun, and / or a corresponding instance of each, e.g., a processor 110 may process 110 instructions by executing the instructions.
[0284] As used herein, terms such as "a", "an" and "the" include one or more of the indicated items or steps. In particular, in the claims, reference to an item generally means that there is at least one such item, and reference to a step means that at least one instance of the step is performed.
[0285] Headings are for convenience only; information about a given topic may be found outside the section whose heading indicates that topic.
[0286] All claims and the abstract as filed are part of the specification.
[0287] Although exemplary embodiments have been shown in the drawings and described above, it is obvious to those skilled in the art that various modifications may be made without departing from the principles and concepts set forth in the claims and that the modifications do not necessarily include the entire abstract concept. Although the subject matter is described in a language specific to structural features and / or program actions, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific technical features or actions described in the claims. Each mode or aspect or technical effect identified in a given definition or example does not necessarily exist or is utilized in every embodiment. Instead, the specific features, actions, and effects described are disclosed as examples to be considered when implementing the claims.
[0288] All changes that do not encompass the entire abstract concept but come within the meaning and range of equivalency of the claims are to be embraced to the full extent permitted by law.
Claims
1. A method for configuring a computing system account based on a security configuration lifecycle, the method comprising: electronically detecting a secondary account creation trigger during use of the primary account by the primary user in the computing system; responsive to the satellite account creation trigger, electronically creating a satellite account for the satellite user; designating the subsidiary account and the primary account as accounts having respective security configurations associated with each other; Acquiring subsidiary user capability information, the subsidiary user capability information indicating that the subsidiary user has a physiological age less than eighteen years old; Based on at least a portion of the subsidiary user capability information, the primary account is automatically configured and the subsidiary account is automatically configured, thereby accurately positioning the configured accounts in one of the following three security configuration lifecycle stages: A stage represented here as stage A, wherein the subsidiary account has no login identity other than the primary account, and the subsidiary account has no login credentials; a stage represented herein as stage B, wherein the secondary account has an identity in addition to the login identity of the primary account, but the secondary account lacks login credentials for the secondary user to log into the secondary account without assistance from the primary user; A stage represented herein as stage C, wherein the secondary account has a login identity in addition to the login identity of the primary account, the secondary account has login credentials for the secondary user to log in without assistance from the primary user, and the primary account also has secondary account login credentials that permit the primary user to log in to the secondary account; The method thereby performs, modifies, or verifies the identification and authentication establishment of the primary account and the secondary account in a manner that: (i) is consistent with the secondary user's physiological age being less than eighteen years old; (ii) help protect said Affiliate Accounts from unauthorized third party access; and (iii) locating the primary account and the secondary account together within a security configuration lifecycle.
2. The method according to claim 1, further comprising: At least the satellite account is reconfigured and thereby transitioning from phase A to phase B or from phase B to phase C.
3. The method according to claim 1, further comprising: At least the primary account is reconfigured and thereby transitions from stage C to stage D, in which the primary account no longer has secondary account login credentials.
4. The method according to claim 3, further comprising: The primary account in stage D is configured as part of an account recovery mechanism for restoring access to the secondary account.
5. The method of claim 1 further comprises automatically selecting a consent acquisition process based at least in part on (i) a current security configuration lifecycle stage, or (ii) a subordinate user capability level associated with the current security configuration lifecycle stage.
6. The method of claim 1, wherein the account is in stage B or stage C, and the method further comprises: Separate recommendation histories are maintained for the secondary user and the primary user.
7. The method of claim 1 , wherein creating a secondary account for the secondary user comprises: A non-login account identifier is assigned to the secondary account and the non-login account identifier is made available to an application for content personalization.
8. The method of claim 1, wherein the method positions the account in stage A, and the subsidiary account creation trigger corresponds to an action of marking any of the following in an image: an unborn child, an infant less than eighteen months old.
9. The method according to claim 1, wherein the method comprises: Transitioned to stage E through at least two previous security configuration lifecycle stages, in which the secondary account and the primary account each have their own login identities, each have their own login credentials, and each do not have login credentials to log in to the other account.
10. A computing system configured using a security configuration lifecycle based on user capabilities, the system comprising: processor; a memory in operable communication with the processor; A set of three or more digitally implemented capability-security pairs, each capability-security pair comprising a respective capability level and a corresponding security specification, the security specification specifying a security configuration for a primary account of a primary user and a secondary account of a secondary user, the capability-security pair comprising at least the following items: Herein, it is represented as a pair of A, whose security specification specifies that the subsidiary account has no login identity other than the primary account, and the subsidiary account has no login credentials; A pair, represented here as pair B, whose security specification specifies that the secondary account has an identity in addition to the login identity of the primary account, but the secondary account lacks login credentials for the secondary user to log into the secondary account without assistance from the primary user; A pair, represented here as pair C, whose security specification specifies that the secondary account has a login identity in addition to the login identity of the primary account, the secondary account has login credentials for the secondary user to log in without assistance from the primary user, and the primary account also has secondary account login credentials that permit the primary user to log in to the secondary account; account security configuration code resident in the memory, the account security configuration code, when executed by the processor: (i) obtains subsidiary user capability information, (ii) assigns a capability level to the subsidiary user based at least in part on the subsidiary user capability information, (iii) selects a capability-security pair corresponding to the assigned subsidiary user capability level, and (iv) configures a primary account and associated subsidiary accounts so that they are consistent with the security specifications of the selected capability-security pair; Wherein the pair-A capability level indicates less subordinate user capability than the pair-B capability level, and the pair-B capability level indicates less subordinate user capability than the pair-C capability level.
11. The computing system of claim 10, wherein at least two of the following conditions are satisfied: The A-capability level indicates that the physiological age of the secondary user is within a range whose highest endpoint is no greater than five years old; The pair B capability level indicates that the physiological age of the secondary user is within a range whose lowest endpoint is not less than four years old; The pair B capability level indicates that the physiological age of the secondary user is within a range whose highest endpoint is no greater than eight years old; The C-capability level indicates that the physiological age of the secondary user is within a range whose lowest endpoint is not less than eight years old; The C-capability level indicates that the physiological age of the secondary user is within a range whose highest endpoint is no greater than thirteen years old; or The physiological age of the auxiliary user is greater than eighteen years old, but based on the auxiliary user capability information, the auxiliary user is assigned a capability level at the C capability level or lower.
12. The computing system of claim 10, wherein the account security configuration code will, when executed, at least automatically transition the secondary account as the secondary account grows, thereby increasing the level of capabilities assigned to the secondary user over time.
13. The computing system of claim 10, wherein the secondary account has a globally unique identifier that does not appear as a login identity but is visible to applications to distinguish the secondary account from the primary account.
14. The computing system of claim 10, wherein the account security configuration code selects capability-security pair B, and the secondary account has an email address other than the primary account.
15. The computing system of claim 10, wherein the system includes data indicating that at least one of the following social relationships exists between the secondary user and the primary user: child and parent, child and teacher, child and guardian, patient and guardian, patient and provider, care recipient and caregiver, dependent parent and offspring.
16. The computing system of claim 10, wherein the capability-safety pair capability levels are indicated by the subordinate user age range, and the capability-safety pair capability levels collectively span a continuous physiological age range from five years old or younger to thirteen years old or older.
17. A computer readable storage medium configured with executable code for performing a method for configuring a computing system account based on a security configuration lifecycle, the method comprising: acquiring subsidiary user capability information, the subsidiary user capability information indicating that the subsidiary user has a capability level corresponding to an age of less than eighteen years old; Based on the subordinate user capability level, the master account is automatically configured and the subordinate account is initially automatically configured to accurately position the account in one of the following three security configuration life cycle stages: A stage represented herein as Stage A, wherein the secondary account has no login identity other than the primary account, and the secondary account has no login credentials; a stage represented herein as stage B, wherein the secondary account has an identity in addition to the login identity of the primary account, but the secondary account lacks login credentials for the secondary user to log into the secondary account without assistance from the primary user; A stage represented herein as stage C, wherein the secondary account has a login identity in addition to the login identity of the primary account, the secondary account has login credentials for the secondary user to log in without assistance from the primary user, and the primary account also has secondary account login credentials that permit the primary user to log in to the secondary account; Thus, the method distributes identification and authentication security controls between the primary account and the secondary account and helps protect the secondary account from unauthorized third-party access; as well as At least one month after initially configuring the satellite account, the satellite account is at least reconfigured by transitioning from phase A to phase B, or from phase B to phase C.
18. The computer-readable storage medium of claim 17, wherein the method further comprises at least one of the following: automatically selecting a consent acquisition process based at least in part on (i) a current security configuration lifecycle stage of the affiliated account, or (ii) a current capability level of the affiliated user; maintaining a separate recommendation profile for the secondary user as compared to a primary user for the primary account; or The primary account and the second satellite account are positioned in another security configuration lifecycle stage, whereby the same primary account is associated with two different satellite accounts in two different corresponding security configuration lifecycle stages.
19. The computer-readable storage medium of claim 17, wherein the method further comprises one of: automatically creating the secondary account in response to a primary user of the primary account tagging the secondary user in a photo; or The secondary account is created in response to an explicit account creation request from a primary user of the primary account.
20. The computer-readable storage medium of claim 17, wherein the method comprises: During a period of at least twelve months, transitioning the primary account and the satellite account through at least three security configuration lifecycle stages, including: at least one stage in which only the primary user is provided credentials to log into the satellite account, at least one stage in which the primary user and the satellite user are each provided credentials to log into the satellite account, and at least one stage in which only the satellite user is provided credentials to log into the satellite account.
Citation Information
Patent Citations
Systems, methods, and software applications for providing an identity and age-appropriate verification registry
US20110072039A1