IP Library Granted Patent US 9,755,916
Granted Patent B2
US 9,755,916 · App. 14/818,220 · Granted Sep 5, 2017

System, method and computer program product for serving an application from a custom subdomain

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,755,916
App. No.
14/818,220
Granted
Sep 5, 2017
Kind
B2
Abstract

In accordance with embodiments, there are provided mechanisms and methods for serving an application from a custom subdomain. These mechanisms and methods for serving an application from a custom subdomain can enable improved data security, enhanced system performance, optimized resource utilization, etc.

Claims (53)

1. A non-transitory computer-readable storage medium having computer instructions stored thereon that, when executed by a computer system, cause operations comprising:

providing, to a user corresponding to a particular organization of a plurality of organizations that store web content within a system, a setup page that requests a custom subdomain name from the user;

receiving, from the user via the setup page, a request to create a custom subdomain within a domain of the system, wherein the request includes a requested name for the custom subdomain;

creating, using the requested name, the custom subdomain within the domain of the system;

associating the custom subdomain with the web content of the particular organization such that the web content can be subsequently accessed via the custom subdomain; and

associating a range of internet protocol (IP) addresses with the custom subdomain;

tracking, based on the custom subdomain, resource usage of the particular organization associated with the custom subdomain;

receiving an access request for the web content;

determining whether the access request has an IP address in the range;

determining whether the particular organization has exceeded an allotted amount of resources of the system; and

based on determining that the IP address is in the range and that the particular organization has not exceeded the allotted amount, processing the access request.

2. The non-transitory computer-readable storage medium of claim 1 , wherein the requested name received from the user includes, at least in part, a name of the user.

3. The non-transitory computer-readable storage medium of claim 1 , further comprising, prior to associating the custom subdomain with the web content of the particular organization, determining that the custom subdomain that uses the requested name is available.

4. The non-transitory computer-readable storage medium of claim 3 , wherein determining that the custom subdomain is available comprises determining that the custom subdomain is not prohibited.

5. The non-transitory computer-readable storage medium of claim 1 , wherein the associating includes requesting a domain name system (DNS) alias from the custom subdomain to a location within the system.

6. The non-transitory computer-readable storage medium of claim 1 , wherein, after the custom subdomain has been associated with the web content of the particular organization, the web content can be accessed via a full uniform resource locator (URL) that identifies the custom subdomain.

7. The non-transitory computer-readable storage medium of claim 1 , wherein the system is a multitenant database system.

8. The non-transitory computer-readable storage medium of claim 1 , wherein the custom subdomain includes a domain that is part of the domain of the system.

9. The non-transitory computer-readable storage medium of claim 1 , wherein the operations further comprise serving the web content of the particular organization via the custom subdomain.

10. The non-transitory computer-readable storage medium of claim 9 , wherein serving the web content of the particular organization via the custom subdomain includes:

receiving a request from a different user corresponding to the particular organization, a request for at least a portion of the web content, wherein the request for the at least a portion of the web content identifies the custom subdomain;

based on the custom subdomain identifying the web content; and

sending at least a portion of the identified web content to the different user.

11. The non-transitory computer-readable storage medium of claim 10 , wherein the request from the different user includes a uniform resource locator (URL) that includes the custom subdomain.

12. The non-transitory computer-readable storage medium of claim 1 , where the operations further comprise:

based on determining that the IP address is in the range and that the particular organization has exceeded the allotted amount, rejecting the access request.

13. A method, comprising:

storing, by a system, web content of a plurality of organizations;

providing, by the system to a user corresponding to a particular organization of the plurality of organizations, a setup page that requests a custom subdomain name from the user;

receiving, by the system from the user via a setup page, a requested name for a custom subdomain;

creating, by the system using the requested name, the custom subdomain within a domain of the system;

associating, by the system, the custom subdomain with the web content of the particular organization;

associating, by the system, the custom subdomain with a range of internet protocol (IP) addresses;

tracking, by the system based on the custom subdomain, resource usage of the particular organization associated with the custom subdomain;

receiving, by the system, an access request for the web content;

determining, by the system, whether the access request has an IP address in the range;

determining, by the system, whether the particular organization has exceeded an allotted amount of resources of the system; and

based on determining that the IP address is in the range and that the particular organization has not exceeded the allocated amount, the system processing the access request.

14. An apparatus, comprising:

a processor; and

a memory that includes one or more stored sequences of instructions that, when executed by the processor, cause the processor to carry out operations comprising:

providing, to a user corresponding to a particular organization of a plurality of organizations that store web content within a system, a setup page that requests a custom subdomain name from the user;

receiving, from the user via the setup page, a request to create a custom subdomain within a domain of the system, wherein the request includes a requested name for the custom subdomain;

creating, using the requested name, the custom subdomain within the domain of the system;

associating the custom subdomain with the web content of the particular organization such that the web content can be subsequently accessed via the custom subdomain; and

associating a range of internet protocol (IP) addresses with the custom subdomain;

tracking, based on the custom subdomain, resource usage of the particular organization associated with the custom subdomain;

receiving an access request for the web content;

determining whether the access request has an IP in the range;

determining whether the particular organization has exceed an allotted amount of resources of the system; and

based on determining that the IP address is in the range and that the particular organization has exceeded the allocated amount, rejecting the access request.

15. The apparatus of claim 14 , wherein the memory is further configured to store the web content of the particular organization.

16. The apparatus of claim 14 , wherein the operations further comprise serving the web content of the particular organization via the custom subdomain.

Assignments (1)
CHANGE OF NAME Recorded Jan 27, 2025
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 070016/0355 →