Systems and methods for providing security through sessions
AssigneeMicrosoft Corporation
InventorsAra Bernardi, Klaus U. Schutz, Richard B. Ward, Sriram Sampath
Life of this patent
Estimating the term…
Abstract
Systems and methods are described for providing security through sessions. In an implementation, a method includes initiating a session, by an operating system, in which operating system services are executable and initiating another session, by the operating system, in which a user-interactive application is executable.
Claims37
A method comprising:
- initiating a first session on a computing device, by an operating system, operating system services being executable in the first session;
- initiating a second session on the computing device, by the operating system, a first user-interactive application being executable in the second session, the first user-interactive application having a first set of security considerations;
- and
- initiating a subsequent session on the computing device, by the operating system, a second user-interactive application being executable in the subsequent session, the second user-interactive application having a different set of security considerations than the first user-interactive application;
- and
- wherein the first session, the second session, and the subsequent session are configured to each provide a different security functionality by controlling permissible and non-permissible interaction between each of the service of the first session, the application in the second session, and the application in the subsequent session.
A method comprising on a computer:
- commencing a boot process of an operating system;
- in response to the commencing, initiating a first session on the computer for:
- inclusion of operating system services;
- and
- isolation of the operating system services from a user-interactive application that is executable in another session according to a set of security considerations;
- initiating a subsequent session on the computer when a requested user-interactive application has security considerations that differ from the security considerations of the user-interactive application executable in the another session;
- and
- controlling permissible and non-permissible interaction of each of the operating system services, the user-interactive application and the requested user-interactive application with other applications and/or services executed in other sessions.
A computer comprising:
- a processor;
- and
- memory configured to maintain an operating system that is executable on the processor to initiate a plurality of sessions on the computer, the plurality of sessions controlling isolation and permissible and non-permissible interaction among services and applications in the plurality of sessions, wherein the plurality of sessions comprises:
- a first session, on the computer, in which operating system services are executable;
- and
- a second session, on the computer, in which a first application having a set of security considerations is executable;
- and
- a subsequent session, on the computer, in which a second application, having a different set of security considerations than the security considerations of the first application, is executable;
- wherein:
- the first session isolates the operating system services from the first application in the second session and the second application in the subsequent session, and
- the second session and the subsequent sessions control permissible and non-permissible interaction between the first application in the second session and the second application in the subsequent session.
A computing device comprising a processor and a memory configured to maintain an operating system that is executable on the processor to initiate sessions comprising:
- a first session containing operating system services on the computing device,
- a second session containing an interactive application on the computing device, the second session being associated with a set of security considerations, and
- a third session containing another interactive application on the computing device, the third session being associated with another set of security considerations which are different from the set of security considerations,
- wherein the first session isolates the operating system services from the interactive application and the other interactive application, and
- wherein the second session and the third session control permissible and non-permissible interaction between the interactive application in the second session and the other interactive application in the third session.
A system comprising:
- one or more processors;
- and
- memory storing instructions executable by the one or more processors to implement acts comprising:
- initiating a first session in which operating system services are executable;
- initiating a second session in which a first user-interactive application is executable;
- initiating a third session in which a second user-interactive application is executable;
- isolating the operating system services in the first session from the first user-interactive application in the second session and the second user-interactive application in the third session;
- controlling permissible and non-permissible interaction between the first user-interactive application in the second session and the second user-interactive application in the third session;
- receiving a request to execute a third application in a current session;
- determining whether the third application complies with at least one of a first set of security considerations of the second session and a second set of security considerations of the third session;
- and
- in response to determining that the third application does not comply with at least one of the first set of security considerations of the second session or the second set of security considerations of the third session, executing the third application in another session having security considerations different from the second session and the third session.
A memory device comprising computer executable instructions that, when executed on a computing device, direct the computing device to perform acts comprising:
- initiating a first session on the computing device, the first session comprising a first application and a first set of security considerations;
- creating a second session from the first session on the computing device, the second session having a child-parent relationship with the first session and comprising a second application and a second set of security consideration;
- synchronizing an execution of one of the first application in the first session and the second application in the second session with an execution of the other of the first application in the first session and the second application in the second session in response to performing the execution of the other of the first application in the first session and the second application in the second session;
- controlling permissible and non-permissible interactions between the first application in the first session and the second application in the second session through a predefined channel that defines a permissible transfer of data between the first session and the second session, the predefined channel protecting the first session and the second session against impermissible transfer of data between the first session and the second session;
- receiving a request to execute a third application;
- determining whether the third application complies with at least one of the first set of security considerations of the first session and the second set of security considerations of the second session;
- and
- in response to determining that the third application does not comply with at least one of the first set of security considerations of the first session or the second set of security considerations of the second session:
- creating, on the computing device, a new session comprising a third set of security considerations with which the third application complies, and
- executing the third application in the new session.
Dependencies are inferred from the claim text.