摘要:
The present invention extends to validating measurable aspects of computing system. A provider causes a challenge to be issued to the requester, the challenge requesting proof that the requester is appropriately configured to access the resource. The requester accesses information that indicates how the requester is to prove an appropriate configuration for accessing the resource. The requester formulates and sends proof that one or more measurable aspects of the requester's configuration are appropriate. The provider receives proof that one or more measurable aspects of the requester's configuration are appropriate and authorizes the requester to access the resource. Proof of one more measurable aspects of a requester can be used along with other types of authentication to authorize a requester to access a resource of a provider. Solutions to challenges can be pre-computed and stored in a location accessible to a provider.
摘要:
A method of building a dataset in a computing system includes extracting data meeting a predetermined criteria from at least a first database, filling the dataset with data items, extracting from the first database relationships between the data items meeting the predetermined criteria, and filling the dataset with the relationships. A system for building a dataset in a computing system includes a data extraction module, a data populating module, a relationship extraction module, and a relationship populating module. The data extraction module extracts data meeting a predetermined criteria from at least a first database. The data populating module fills the dataset with data items. The relationship extraction module extracts from the first database relationships between the data items meeting the predetermined criteria. The relationship populating module fills the dataset with the relationships. A dataset contained within memory of a computing system includes a table component for containing data extracted from a database. The dataset also includes a relations component for containing relationships extracted from the database.
摘要:
Data is separated from source. Datasets store tables of data and a graph of the relationships between the tables. The relationship can change at any time. The relationships are described by metadata that describe primary key, foreign key, and lookups, and other relationships between tables. In one embodiment, the tables of data are typed columns of data. The dataset also includes information on the rowstate and differential preservation, therefore, the source does not need to manage states of the data access. Adapters abstract the interface to datasets. More specifically, adapters manage the input/output to the datasets of the tables of data and the relationships. Adapters can be specialized in their purpose, such as an adapter for OLE data or XML data or generalized in their purpose. Furthermore, a composite adapter is specialized for the purpose of interacting with other adapters. Adapters manage the connection to the dataset and the name of the server that hosts the dataset. Data hoisting is implemented, in which the fluid relationship of data is changed in response to current data needs.
摘要:
A distributed security system is provided. The distributed security system uses a security policy that is written in a policy language that is transport and security protocol independent as well as independent of cryptographic technologies. This security policy can be expressed using the language to create different security components allowing for greater scalability and flexibility. By abstracting underlying protocols and technologies, multiple environments and platforms can be supported.
摘要:
The present invention provides for a channel model capable of generating a runtime communication channel with pluggable modular channel components. These channel components implement one of a set of standard interfaces that allow processing details of communication semantics between components to be represented in a polymorphic way. A message and corresponding communication semantics are recursively passed through the channel components using the standard interface, thereby abstracting other modules and components from specific implementation details of how the communication semantics are performed. The message may then be sent to the next appropriate module for further processing, or the processing may be completed at that particular component or module. Note also that the message can also be de-multiplexed on the service side in a similar fashion as that described above.
摘要:
Implementations are described and claimed herein to detect an invalid policy that may reside in a cache at a client. An expired policy is removed from cache and a current policy is requested. Otherwise the cached policy may be used. The client indicates which policy it is using by generating a policy digest, including, in compressed form, one or more assertions. If the host determines the policy digest is invalid, the host issues an invalid digest fault. If the policy digest is valid, but the assertions included in the policy digest are invalid, the host issues an invalid policy fault. In either case, the client is notified that the cached policy is no longer valid and that a current policy should be requested.
摘要:
An object oriented programming environment is extended to allow a client object oriented application running under a client/server operating system to communicate with a plurality of server object oriented applications located on one or more remote computers in a distributed computer environment. The extended object oriented programming environment provides the capability for a client object oriented application to connect to, and communicate with remote server object oriented applications as well as make object references to remote objects and remote object data. The extended object oriented programming environment is used for designing N-tiered logical models for distributed computing applications, while providing a flexible and adaptable M-tiered physical model underneath the N-tiered logical model. This environment is also used to provide the ability to reference remote objects from Internet and other client network applications.
摘要:
An object oriented programming environment is extended to allow a client object oriented application running under a client/server operating system to communicate with a plurality of server object oriented applications located on one or more remote computers in a distributed computer environment. The extended object oriented programming environment provides the capability for a client object oriented application to connect to, and communicate with remote server object oriented applications as well as make object references to remote objects and remote object data. The extended object oriented programming environment is used for designing N-tiered logical models for distributed computing applications, while providing a flexible and adaptable M-tiered physical model underneath the N-tiered logical model. This environment is also used to provide the ability to reference remote objects from Internet and other client network applications.
摘要:
An object oriented programming environment is extended to allow a client object oriented application running under a client/server operating system to communicate with a plurality of server object oriented applications located on one or more remote computers in a distributed computer environment. The extended object oriented programming environment provides the capability for a client object oriented application to connect to, and communicate with remote server object oriented applications as well as make object references to remote objects and remote object data. The extended object oriented programming environment is used for designing N-tiered logical models for distributed computing applications, while providing a flexible and adaptable M-tiered physical model underneath the N-tiered logical model. This environment is also used to provide the ability to reference remote objects from Internet and other client network applications.
摘要:
An efficient, logical and expressive type system is provided for flexibly defining types of a declarative programming language so that efficient and structurally compact data intensive applications can be generated. The type system supports the combination of refinement types and type membership expressions, as well as a top type that encompasses all valid values as members. With the type system, types can be expressed as intersections and/or unions of other types. Thus, types can be efficiently represented for a full range of types of data as may be found in real world data stores.