1. A compound of the formula II or a pharmaceutically acceptable salt or an in vivo hydrolysable ester thereof
wherein
each of G1, G2 and G4 is a monocyclic ring structure comprising each of up to 7 ring atoms independently selected from cycloalkyl, aryl, heterocycloalkyl or heteroaryl, with each ring structure being independently optionally substituted by one or two substituents independently selected from halogen, hydroxy, haloalkoxy, amino, N-alkylamino, N,N-dialkylamino, cyano, nitro, alkyl, alkoxy, alkyl sulfone, haloalkyl sulfone, alkylcarbamate, alkylamide, wherein any alkyl radical within any substituent may itself be optionally substituted with one or more groups selected from halogen, hydroxy, amino, N-alkylamino, N,N-dialkylamino, cyano, nitro, alkoxy, haloalkoxy, aryloxy, heteroaryloxy, carbamate;
Z is SO2;
each of B and F is independently selected from a direct bond, O, (C1-6)alkyl, (C1-6)heteroalkyl, alkynyl, CO, NCO, CON, NH, S;
R2 is selected from H, alkyl, hydroxyalkyl, alkoxyalkyl, aryloxy alkyl, aminoalkyl, (N-alkylamino)alkyl, (N,N-dialkylamino)alkyl, amidoalkyl, thioalkyl cycloalkyl-alkyl, alkyl-cycloalkyl, arylalkyl, alkylaryl, alkyl-heteroaryl, heteroalkyl, heterocycloalkyl-alkyl, alkyl-heterocycloalkyl, heteroaryl-alkyl, heteroalkyl-aryl;
R3 and R4 are independently selected from H or (C1-3)alkyl;
Optionally R2 and R3 may join to form a ring comprising up to 7 ring atoms, or R2 and R4 may join to form a ring comprising up to 7 ring atoms, or R3 and R4 may join to form a ring comprising up to 7 ring atoms.
2. A compound of the formula II as claimed in claim 1 or a pharmaceutically acceptable salt or an in vivo hydrolysable ester thereof, wherein R2 is alkyl, aminoalkyl, alkyl-heteroaryl, alkyl-heterocycloalkyl or heteroaryl-alkyl.
3. A pharmaceutical composition which comprises a compound of the formula II as claimed in claim 1 or a pharmaceutically acceptable salt or an in vivo hydrolysable ester thereof and a pharmaceutically acceptable carrier.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A method of maintaining the confidentiality of data provided by an organization for storage on a third party database system, the method comprising:
receiving data encrypted using a first key, wherein the first key is stored on an internal network of the organization;
storing the encrypted data on the third party database system;
associating, on the third party database system, metadata with the encrypted data, wherein the metadata includes information usable to locate the first key;
receiving a request for the encrypted data from a computing device communicating on the internal network of the organization; and
sending the encrypted data with the associated metadata to the computing device.
2. The method of claim 1, wherein the first key is located on a server on the internal network of the organization.
3. The method of claim 1, wherein the computer device is operable to:
locate the first key utilizing the associated metadata;
decrypt the encrypted data using the first key; and
display the unencrypted data.
4. The method of claim 1, further comprising:
sending code to the computing device, wherein the code uses the metadata to obtain the first key.
5. The method of claim 4, wherein the code is provided by the third party database system.
6. The method of claim 1, wherein the information usable to locate the first key is an address of where the first key is stored on the internal network of the organization.
7. The method of claim 6, wherein the address is a URL.
8. The method of claim 6, wherein the address is an address usable for LDAP or SOAP.
9. The method of claim 1, wherein the metadata further includes an identifier associated with the encrypted data.
10. The method of claim 9, wherein the data provided by the organization is encrypted with two or more different keys.
11. The method of claim 10, wherein the different keys are utilized for different users or groups of users within the organization.
12. The method of claim 9, wherein the identifier is an identifier that is unique on the internal network of the organization.
13. The method of claim 9, wherein the internal network identifies the first key using the identifier and sends the first key to the computing device.
14. The method of claim 9, wherein the identifier is an identifier that is globally unique on the third party database system.
15. The method of claim 1, wherein the unencrypted data is provided transparently to the user.
16. The method of claim 1, further comprising:
determining an IP address of the requestor, and not sending the metadata from the requestor if the IP address does not meet a predetermined criteria.
17. The method of claim 1, wherein data for multiple organizations are stored on the third party server.
18. A system of maintaining confidentiality of data provided by an organization for storage on a third party database system, the system comprising:
one or more processors;
a network interface; and
a memory for storing instructions to control the processors, the instructions including:
receiving data encrypted using a first key, wherein the first key is stored on an internal network of the organization;
storing the encrypted data on the third party database system;
associating, on the third party database system, metadata with the encrypted data, wherein the metadata includes information usable to locate the first key;
receiving a request for the encrypted data from a computing device communicating on the internal network of the organization; and
sending the encrypted data with the associated metadata to the computing device.
19. The system of claim 18, wherein the computing device is operable to:
locate the first key;
decrypt the encrypted data using the first key; and
display the unencrypted data.
20. The system of claim 18, wherein the instructions further comprise:
sending code to the computing device, wherein in the code uses the metadata to locate the first key.
21. The system of claim 18, wherein the metadata includes:
an address of where the first key is stored on an internal server of the organization; and
an identifier associated with the encrypted data.
22. The system of claim 18, wherein data provided by the organizations is encrypted with two or more keys.
23. A computer program product comprising a tangible computer readable medium storing a plurality of instructions for controlling one or more processors of a third party database system to perform an operation for maintaining the confidentiality of data provided by an organization for storage on a the database, the instructions comprising:
receiving, from the organization, data encrypted using a first key, wherein the first key is stored on an internal server of the organization;
storing the encrypted data on the third party database system;
associating, on the third party database system, metadata with the encrypted data, wherein the metadata includes information usable to locate the first key,
receiving a request for the encrypted data from a computing device communicating with an internal network of the organization; and
sending the encrypted data with the associated metadata to the computing device.
24. A method of maintaining the confidentiality of data provided by an organization to a third party server, the method comprising:
encrypting data using a first key, wherein the first key is located on a first server at the organization;
sending the encrypted data to the third party server for storage, wherein the data is associated with metadata including information usable to locate the first key on the first server;
a computing device requesting, from the third party server, a page of encrypted data, the computing device being in communication with the first server;
receiving, from the third party server, the page and associated metadata;
locating the first key on the first server; and
decrypting the encrypted data using the first key to obtain the requested data.
25. The method of claim 24, further comprising:
displaying the requested data on the computing device.