Patents by Inventor Richard B. Ward

Richard B. Ward has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 7434257
    Abstract: A dynamic authorization callback mechanism is provided that implements a dynamic authorization model. An application can thus implement virtually any authorization policy by utilizing dynamic data and flexible policy algorithms inherent in the dynamic authorization model. Dynamic data, such as client operation parameter values, client attributes stored in a time-varying or updateable data store, run-time or environmental factors such as time-of-day, and any other static or dynamic data that is managed or retrievable by the application may be evaluated in connection with access control decisions. Hence, applications may define and implement business rules that can be expressed in terms of run-time operations and dynamic data. An application thus has substantial flexibility in defining and implementing custom authorization policy, and at the same time provides standard definitions for such dynamic data and policy.
    Type: Grant
    Filed: May 4, 2001
    Date of Patent: October 7, 2008
    Assignee: Microsoft Corporation
    Inventors: Praerit Garg, Robert P. Reichel, Richard B. Ward, Kedarnath A. Dubhashi, Jeffrey B. Hamblin, Anne C. Hopkins
  • Patent number: 7401235
    Abstract: Methods and systems are provided to allow users that are authenticated by a trusted external service to gain controlled levels of access to selected local computing resources without requiring the user to also have conventional access control capabilities for the resources.
    Type: Grant
    Filed: May 10, 2002
    Date of Patent: July 15, 2008
    Assignee: Microsoft Corporation
    Inventors: David R. Mowers, Daniel Doubrovkine, Roy Leban, Donald E. Schmidt, Ram Viswanathan, John E. Brezak, Richard B. Ward
  • Patent number: 7360096
    Abstract: The present invention provides for securely processing client credentials used for Web-based access to resources. A login page with an interface for entering user credentials is presented at a client and entered user credentials are sent to the server. In response to receiving user credentials, the server generates a unique session identifier for the client. The server also derives a digital signature for the user credentials based on a current key in a rotating key store and the unique session identifier. The server then encrypts the digital signature and the user credentials based on an encryption key derived from the current key and the unique session identifier. When encrypted credentials are received back at the client, keys from the rotating key store are used to attempt to validate the credentials. If user credentials can not be validated, a user is again presented with the login page.
    Type: Grant
    Filed: June 12, 2003
    Date of Patent: April 15, 2008
    Assignee: Microsoft Corporation
    Inventors: Shawn Derek Bracewell, Richard B. Ward, Russell Lee Simpson, Jr., Karim Michel Batthish
  • Patent number: 7308709
    Abstract: A methododology is provided for facilitating authentication of a service. The methodology includes making a request to a first party for authentication of a service, the request including a first alias. A list of aliases associated with the service is then searched enabling a second party making the request to access the service if a match is found between the first alias and at least one alias of the list of aliases.
    Type: Grant
    Filed: April 27, 2000
    Date of Patent: December 11, 2007
    Assignee: Microsoft Corporation
    Inventors: John E. Brezak, Jr., Richard B. Ward, Paul J. Leach, Michael M. Swift
  • Patent number: 7305548
    Abstract: A client sends a request to an authentication server requesting access to a service at an application server. The authentication server returns a token containing an encrypted version of a session key that was encrypted using a secret shared between the authentication server and the application server. The client encrypts application data using a corresponding unencrypted version of the session key and text-encodes both the encrypted application data and the encrypted version of the session key. The text-encoded application and text-encoded encrypted version of the session key are both included in a message and sent to the application server. The application server decrypts the encrypted version of the session key using the shared secret so as to reveal the unencrypted version of the session key. The application server then decrypts the encrypted application data using the revealed unencrypted version of the session key.
    Type: Grant
    Filed: October 22, 2002
    Date of Patent: December 4, 2007
    Assignee: Microsoft Corporation
    Inventors: Shaun D. Pierce, Mark H. Lucovsky, Shaun D. Cox, Richard B. Ward, Paul J. Leach
  • Patent number: 7305701
    Abstract: In accordance with certain aspects of the present invention, improved methods and arrangements are provided that improve access control within a computer. The methods and arrangements specifically identify the authentication mechanism/mechanisms, and/or characteristics thereof, that were used in verifying that a user with a unique name is the actual user that the name implies, to subsequently operating security mechanisms. Thus, differentiating user requests based on this additional information provides additional control.
    Type: Grant
    Filed: April 30, 2001
    Date of Patent: December 4, 2007
    Assignee: Microsoft Corporation
    Inventors: John E. Brezak, Peter T. Brundrett, Richard B. Ward
  • Patent number: 7302634
    Abstract: A schema-based service for Internet access to per-user services data, wherein access to data is based on each user's identity. The service includes a schema that defines rules and a structure for each user's data, and also includes methods that provide access to the data in a defined way. The services schema thus corresponds to a logical document containing the data for each user. The user manipulates (e.g., reads or writes) data in the logical document by data access requests through defined methods. In one implementation, the services schemas are arranged as XML documents, and the services provide methods that control access to the data based on the requesting user's identification, defined role and scope for that role. In this way, data can be accessed by its owner, and shared to an extent determined by the owner.
    Type: Grant
    Filed: October 22, 2001
    Date of Patent: November 27, 2007
    Assignee: Microsoft Corporation
    Inventors: Mark H. Lucovsky, Shaun Douglas Pierce, Steven D. White, Ramu Movva, Jagadeesh Kalki, David Benjamin Auerbach, Peter Sewall Ford, Jay Christopher Jacobs, Paul Andrew Steckler, Walter C. Hsueh, Kendall D. Keil, Burra Gopal, Suresh Kannan, Yi-Wen Guu, Samuel John George, William Raymond Hoffman, Philip Michael Smoot, Lijiang Fang, Michael B. Taylor, Winnie C. Wu, Paul J. Leach, Richard B. Ward, Yun-Qi Yuan
  • Patent number: 7284271
    Abstract: Authorizing a requesting entity to have a service perform a particular action in a manner that is at least partially independent of the underlying target data structure. An authorization station maintains a number of role templates that each define basic access permissions with respect to a number of command methods. The authorization station also maintains a number of role definitions that each define access permissions for specific requesting entities by using one or more of the role templates. When the authorization station receives a request from the requesting entity, the authorization station then identifies the appropriate role definition. Using this role definition, the authorization station determines access permissions for the requesting entity with respect to the requested action.
    Type: Grant
    Filed: October 22, 2001
    Date of Patent: October 16, 2007
    Assignee: Microsoft Corporation
    Inventors: Mark Lucovsky, Shaun D. Pierce, Michael G. Burner, Richard B. Ward, Paul J. Leach, George M. Moore, Arthur Zwiegincew, Robert M. Hyman, Jonathan D. Pincus, Daniel R. Simon
  • Patent number: 7251822
    Abstract: The present invention relates to a system and methodology to facilitate security for data items residing within (or associated with) a hierarchical database or storage structure. A database security system is provided having a hierarchical data structure associated with one or more data items. The system includes a security component that applies a security policy to the data items from a global location or region associated with a database. Various components and processes are employed to enable explicit and/or inherited security properties to be received by and propagated to the data items depending on the type of data structure encountered or processed.
    Type: Grant
    Filed: October 23, 2003
    Date of Patent: July 31, 2007
    Assignee: Microsoft Corporation
    Inventors: Sameet H. Agarwal, Balan Sethu Raman, Sanjay Anand, Paul J. Leach, Richard B. Ward
  • Patent number: 7136859
    Abstract: Directly operating on data structures in a generic manner regardless of the type of data structure being operated upon and without requiring dedicated executable code for manipulating data structures of the particular data type. A common set of commands (e.g., insert, delete, replace, update, query) are recognized that may be used to operate on data structures of a number of different data types. A navigation module accesses a request to execute one of the common command methods on at least an identified portion of an identified data structure. Then, the navigation module accesses a navigation assistance module to access a set of rules associated with the particular data type, the set of rules allowing the navigation module to find the portion of the data structure that is to be operated on. If appropriate, the command operation is then executed on the identified portion of the data structure.
    Type: Grant
    Filed: October 22, 2001
    Date of Patent: November 14, 2006
    Assignee: Microsoft Corporation
    Inventors: Mark Lucovsky, Shaun D. Pierce, Alexander T. Weinert, Michael G. Burner, Richard B. Ward, Paul J. Leach, George M. Moore, Arthur Zwiegincew, Robert M. Hyman, Jonathan D. Pincus, Daniel R. Simon
  • Patent number: 7113994
    Abstract: A method of controlling access to network services enables an authorized proxy client to access a service on behalf of a user. To permit the client to function as a proxy, the user registers proxy authorization information with a trusted security server. The proxy authorization information identifies the proxy client and specifies the extent of proxy authority granted to the proxy client. When the proxy client wants to access a target service on behalf of the user, it sends a proxy request to the trusted security server. The trusted security server checks the proxy authorization information of the user to verify whether the request is within the proxy authority granted to the proxy client. If so, the trusted security server returns to the proxy client a data structure containing information recognizable by the target service to authenticate the proxy client for accessing the target service on behalf of the user.
    Type: Grant
    Filed: January 24, 2000
    Date of Patent: September 26, 2006
    Assignee: Microsoft Corporation
    Inventors: Michael M. Swift, Neta Amit, Richard B. Ward
  • Patent number: 7096367
    Abstract: An authorization handle is supported for each access policy determination that is likely to be repeated. In particular, an authorization handle may be assigned to access check results associated with the same discretionary access control list and the same client context. This likelihood may be determined based upon pre-set criteria for the application or service, based on usage history and the like. Once an access policy determination is assigned an authorization handle, the static maximum allowed access is cached for that policy determination. From access check to access check, the set of permissions desired by the client may change, and dynamic factors that might affect the overall privilege grant may also change; however, generally there is still a set of policies that is unaffected by the changes and common across access requests. The cached static maximum allowed access data is thus used to provide efficient operations for the evaluation of common policy sets.
    Type: Grant
    Filed: May 4, 2001
    Date of Patent: August 22, 2006
    Assignee: Microsoft Corporation
    Inventors: Praerit Garg, Robert P. Reichel, Richard B. Ward, Kedarnath A. Dubhashi, Jeffrey B. Hamblin, Anne C. Hopkins
  • Patent number: 7062753
    Abstract: A system method and apparatus are disclosed for testing software at a low level during its operation. The system comprises a registry, a test criteria store, a report generator and a tester. The system selects elements of software from a program under test, tests the elements against predetermined test criteria and reports the results.
    Type: Grant
    Filed: March 10, 2000
    Date of Patent: June 13, 2006
    Assignee: British Telecommunications public limited company
    Inventors: Richard B Ward, John A Graham, Martin R Aylett
  • Patent number: 6985958
    Abstract: A messaging data structure for accessing data in an identity-centric manner. An identity may be a user, a group of users, or an organization. Instead of data being maintained on an application-by-application basis, the data associated with a particular identity is stored by one or more data services accessible by many applications. The data is stored in accordance with a schema that is recognized by a number of different applications and the data service. The messaging data structure includes fields that identify the target data object to be operated upon using an identity field, a schema field, and an instance identifier field. In addition, the desired operation is specified. Thus, the target data object is operated on in an identity-centric manner.
    Type: Grant
    Filed: October 22, 2001
    Date of Patent: January 10, 2006
    Assignee: Microsoft Corporation
    Inventors: Mark Lucovsky, Shaun D. Pierce, Alexander T. Weinert, Michael G. Burner, Richard B. Ward, Paul J. Leach, George M. Moore, Arthur Zwiegincew, Vivek Gundotra, Robert M. Hyman, Jonathan D. Pincus, Daniel R. Simon
  • Publication number: 20040210767
    Abstract: Computers on a local computer network, such as a home network or a small business network, are formed into a secured network group that provides common user access control and enables resource sharing among the computers in the group. A computer on the local network discovers whether there are secured network groups existing on the local network. If one secured network group is found, the computer indicates to a second computer in the group its desire to join the group, and establishes trust with that computer, such as by entering a proper user name and password, or a secret identification number. Once the trust is established, the first computer joins the group. Within the secured network group, user accounts and user profiles are replicated to each of the computers in the group. The establishment of trust and the replication of user accounts and profiles among the computers in the group enable the implementation of security policies and user access control in a group-wide manner.
    Type: Application
    Filed: April 15, 2003
    Publication date: October 21, 2004
    Applicant: Microsoft Corporation
    Inventors: Andrew P. Sinclair, John E. Brezak, Eric Flo, Chris Guzak, Sean O. Lyndersay, Sterling Reasor, Richard B. Ward
  • Publication number: 20040199648
    Abstract: A computer assigns networks to network zones based on predefined properties for each zone and/or the properties of the networks. An application program installed on the computer provides the computer with preference information that indicates the network zone whose network policies or properties are best suited for the application program. Thereafter, when executing the application program, the computer limits network contact for the application program to the network(s) that is assigned to the network zone(s) identified as a preferred network zone(s) or identified by a preferred network property or properties by the preference information from the application program.
    Type: Application
    Filed: April 1, 2003
    Publication date: October 7, 2004
    Inventors: Art Shelest, Richard B. Ward
  • Publication number: 20040098615
    Abstract: Systems and related methods enable a web service to map a unique identifier received from a client to the client's user account in a directory service using an authentication protocol and thereby receive permission to access resources for the client in the service's domain or in a distant domain. When the unique identifier is a web service unique identifier (PUID), the PUID is changed to a user principal name (UPN) mappable to the client's user account object in the directory service.
    Type: Application
    Filed: November 16, 2002
    Publication date: May 20, 2004
    Inventors: David R. Mowers, John E. Brezak, Richard B. Ward, Scott A. Field, Todd F. Stecher, Paul J. Leach, Donald E. Schmidt
  • Publication number: 20040098609
    Abstract: The present invention provides for securely processing client credentials used for Web-based access to resources. A login page with an interface for entering user credentials is presented at a client and entered user credentials are sent to the server. In response to receiving user credentials, the server generates a unique session identifier for the client. The server also derives a digital signature for the user credentials based on a current key in a rotating key store and the unique session identifier. The server then encrypts the digital signature and the user credentials based on an encryption key derived from the current key and the unique session identifier. When encrypted credentials are received back at the client, keys from the rotating key store are used to attempt to validate the credentials. If user credentials can not be validated, a user is again presented with the login page.
    Type: Application
    Filed: June 12, 2003
    Publication date: May 20, 2004
    Inventors: Shawn Derek Bracewell, Richard B. Ward, Russell Lee Simpson, Karim Michel Batthish
  • Publication number: 20030212806
    Abstract: Methods and systems are provided to allow users that are authenticated by a trusted external service to gain controlled levels of access to selected local computing resources without requiring the user to also have conventional access control capabilities for the resources.
    Type: Application
    Filed: May 10, 2002
    Publication date: November 13, 2003
    Inventors: David R. Mowers, Daniel Doubrovkine, Roy Leban, Donald E. Schmidt, Ram Viswanathan, John E. Brezak, Richard B. Ward
  • Publication number: 20030191953
    Abstract: Improved intrusion detection and/or tracking methods and systems are provided for use across various computing devices and networks. Certain methods, for example, form a substantially unique audit identifier during each authentication/logon process. One method includes identifying one or more substantially unique parameters that are associated with the authentication/logon process and encrypting them to form at least one audit identifier that can then be generated and logged by each device involved in the authentication/logon process. The resulting audit log file can then be audited along with similar audit log files from other devices to track a user across multiple platforms.
    Type: Application
    Filed: April 8, 2002
    Publication date: October 9, 2003
    Inventors: Bhalchandra S. Pandit, Praerit Garg, Richard B. Ward, Paul J. Leach, Scott A. Field, Robert P. Reichel, John E. Brezak