IP Library Granted Patent US 12,229,318
Granted Patent B2
US 12,229,318 · App. 17/471,657 · Granted Feb 18, 2025

Applications permissions framework

Inventors: Michael Brevoort (Littleton, CO); Angela Kirchhof (Denver, CO); Anders Haig (Camarillo, CA); Sai Pinapati (Foster City, CA)
Assignee: Salesforce, Inc.
G06F21/629G06F21/604H04L63/101H04L63/102G06F2221/2141
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 12,229,318
App. No.
17/471,657
Granted
Feb 18, 2025
Kind
B2
Abstract

A system, method, and computer-readable media for establishing a framework for managing application permissions in a group-based communication system. Upon receipt, from an application in a group-based communication system, of an attempt to access a target internet domain, an application manifest associated with the application is accessed. The manifest includes a list of approved internet domains previously approved by an administrator of the group-based communication system which the application may access. Following access of the manifest, it is determined whether the target internet domain is included in the list of approved internet domains. If the target internet domain is included in the list of approved internet domains, the application is allowed to access the target internet domain. If the target internet domain is not included in the list of one or more approved internet domains, access to the domain by the application is denied.

Claims (47)

1. One or more non-transitory computer-readable media storing computer-executable instructions that, when executed by a processor, perform a method for establishing a framework for managing application permissions in a group-based communication system, the method comprising:

receiving, from an application in the group-based communication system a request to access a target internet domain, wherein the group-based communication system includes a plurality of virtual spaces that each facilitate communications between different groups of users of the group-based communication system;

accessing, based on an application manifest associated with the application, a list of one or more approved internet domains previously approved by an administrator of the group-based communication system for the application;

determining whether the target internet domain is included in the list of one or more approved internet domains;

determining one or more updates to the application; and

upon determining that the target internet domain is included in the list of one or more approved internet domains and based on the one or more updates, allowing the application to access the target internet domain.

2. The one or more non-transitory computer-readable media of claim 1 , wherein the list of the one or more approved internet domains is further based on an allow list, the allow list selected from a set consisting of a channel-specific allow list indicating a list of domains approved for access in a first context of a particular channel, a workspace-specific allow list indicating a list of domains approved for access in a second context of a particular workspace, and a global organization allow list indicating a list of domains globally approved for access in a third context of a given organization.

3. The one or more non-transitory computer-readable media of claim 1 , wherein the list of the one or more approved internet domains includes a prior-version history of one or more approved internet domains.

4. The one or more non-transitory computer-readable media of claim 1 , wherein the method further comprises:

responsive to denying access to the target internet domain, prompting a user to manually approve or deny access to the target internet domain, wherein the user is the administrator or a triggering user whose action triggered an attempt to access the target internet domain.

5. The one or more non-transitory computer-readable media of claim 4 , wherein the method further comprises:

responsive to the user manually approving access to the target internet domain, adding the target internet domain to the list of the one or more approved internet domains for the application.

6. The one or more non-transitory computer-readable media of claim 1 , wherein the method further comprises:

responsive to denying access to the target internet domain sending a notification of an attempt to the administrator.

7. The one or more non-transitory computer-readable media of claim 6 , wherein the notification includes an affordance allowing the administrator to approve access to the target internet domain.

8. A method for establishing a framework for managing application permissions in a group-based communication system, the method comprising:

receiving, from an application in the group-based communication system a request to access a target internet domain, wherein the group-based communication system includes a plurality of virtual spaces that each facilitate communications between different groups of users of the group-based communication system;

accessing, based on an application manifest associated with the application, a list of one or more approved internet domains previously approved by an administrator of the group-based communication system for the application;

determining whether the target internet domain is included in the list of one or more approved internet domains;

determining one or more updates to the application; and

upon determining that the target internet domain is included in the list of one or more approved internet domains and based on the one or more updates, allowing the application to access the target internet domain.

9. The method of claim 8 , wherein the list of the one or more approved internet domains is further based on an allow list, the allow list selected from a set consisting of a channel-specific allow list indicating a list of domains approved for access in a first context of a particular channel, a workspace-specific allow list indicating a list of domains approved for access in a second context of a particular workspace, and a global organization allow list indicating a list of domains globally approved for access in a third context of a given organization.

10. The method of claim 8 , wherein the list of the one or more approved internet domains includes a prior-version history of one or more approved internet domains.

11. The method of claim 8 , further comprising:

responsive to denying access to the target internet domain, prompting a user to manually approve or deny access to the target internet domain, wherein the user is the administrator or a triggering user whose action triggered an attempt to access the target internet domain.

12. The method of claim 11 , further comprising:

responsive to the user manually approving access to the target internet domain, adding the target internet domain to the list of the one or more approved internet domains for the application.

13. The method of claim 8 , further comprising:

responsive to denying access to the target internet domain sending a notification of an attempt to the administrator.

14. The method of claim 13 , wherein the notification includes an affordance allowing the administrator to approve access to the target internet domain.

15. A system for establishing a framework for managing application permissions in a group-based communication system, the system comprising:

a data store;

a processor; and

one or more non-transitory computer-readable media storing computer executable instructions that, when executed by the processor, perform a method of establishing a framework for managing application permissions in the group-based communication system, the method comprising:

receiving, from an application in the group-based communication system a request to access a target internet domain, wherein the group-based communication system includes a plurality of virtual spaces that each facilitate communications between different groups of users of the group-based communication system;

accessing, based on an application manifest associated with the application, a list of one or more approved internet domains previously approved by an administrator of the group-based communication system for the application;

determining whether the target internet domain is included in the list of one or more approved internet domains;

determining one or more updates to the application; and

upon determining that the target internet domain is included in the list of one or more approved internet domains and based on the one or more updates, allowing the application to access the target internet domain.

16. The system of claim 15 , wherein the list of the one or more approved internet domains is further based on an allow list, the allow list selected from a set consisting of a channel-specific allow list indicating a list of domains approved for access in a first context of a particular channel, a workspace-specific allow list indicating a list of domains approved for access in a second context of a particular workspace, and a global organization allow list indicating a list of domains globally approved for access in a third context of a given organization.

17. The system of claim 15 , wherein the list of the one or more approved internet domains includes a prior-version history of one or more approved internet domains.

18. The system of claim 15 , wherein the method further comprises:

responsive to denying access to the target internet domain, prompting a user to manually approve or deny access to the target internet domain, wherein the user is the administrator or a triggering user whose action triggered an attempt to access the target internet domain.

19. The system of claim 18 , wherein the method further comprises:

responsive to the user manually approving access to the target internet domain, adding the target internet domain to the list of the one or more approved internet domains for the application.

20. The system of claim 15 , wherein the method further comprises:

responsive to denying access to the target internet domain sending a notification of an attempt to the administrator.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 18, 2023
From: SLACK TECHNOLOGIES, LLC
To: SALESFORCE, INC.
Reel/Frame 064642/0564 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2021
From: BREVOORT, MICHAEL; KIRCHHOF, ANGELA; HAIG, ANDERS; PINAPATI, SAI
To: SLACK TECHNOLOGIES, LLC
Reel/Frame 057445/0181 →
Continuity (1)
Related Publication 20230087481A1 · Mar 23, 2023
References Cited (19)
US 20140331317A1 · Singh · 2014 [cited by examiner]
US 20180007053A1 · Grant · 2018 [cited by examiner]
US 20180287982A1 · Draeger et al. · 2018 [cited by applicant]
US 20200218798A1 · Kosaka · 2020 [cited by examiner]
“Die, Email, Die! A Flickr Cofounder Aims to Cut Us All Some Slack”, Readwriteweb, Lexisnexis, https://advance.lexis.com/api/permalink/33dd79e2-90f5-409d-ae27-5a2c7e86bf31/?context=1000516>. (dated Aug. 14, 2013, 4:15 P… [cited by applicant]
“How Slack changed the way we work by putting the customer experience first”, Repeat Customer Podcast, Episode 3, [online][retrieved May 9, 2019]. Retrieved from the Internet: <URL: https://www.zendesk.com/resources/sla… [cited by applicant]
Adrienne LaFrance, “The Triumph of Email”, Atlantic Online, Lexisnexis, https://advance.lexis.com/api/permalink/32d7ddd9-d4c1-4a73-86f7-08ab5842fde6/?context=1000516, (dated Jan. 6, 2016) 5 pages. [cited by applicant]
David Auberbach, “Re-Animator. How Stewart Butterfield created Flickr and Slack out of the ashes of failed projects” [online][retrieved May 9, 2019]. Retrieved from the Internet: <URL: https://slate.com/business/2014/05… [cited by applicant]
Ernie Smith, “Picking Up the Slack”, Tedium, [online][retrieved May 9, 2019]. Retrieved from the Internet: <URL: https://tedium.co/2017/10/17/irc-vs-slack-chat-history/>. (dated Oct. 17, 2017) 13 pages. [cited by applicant]
Internet Relay Chat, Wikipedia, [online][retrieved May 30, 2019]. Retrieved from the Internet: <URL: https://en.wikipedia.org/wiki/Internet_Relay_Chat>. (dated May 28, 2019) 20 pages. [cited by applicant]
Jonathan Vanian, “Why these startups think chat apps are the next big thing in workplace collaboration”, Gigaom, Lexisnexis, https://advance.lexis.com/api/permalink/e83778c8-09c8-43aa-9ba0-88526283de69/?context=1000516,… [cited by applicant]
Matsumoto, T. et al., “Chocoa Communicator—A New Communication System Based on Awareness and Text Communications—”, Fujitsu Sci. Tech. J., 36, 2, (Dec. 2000) 154-161. [cited by applicant]
Matthew Ingram, “Flickr co-founder launches Slack, an all-in-one messaging tool designed to kill email forever”, Gigaom, Lexisnexis, https://advance.lexis.com/api/permalink/0b676b7c-aec3-4560-861e-d030d1dd008c/?context=… [cited by applicant]
Michael Carney, “Slack is thriving on a cocktail of whimsy and great timing”, Pandodaily, Lexisnexis, https://advance.lexis.com/api/permalink/dd2d4ee5-2ddf-4d3a-a1d9-3bcee5e38b74/?context=1000516, (dated Feb. 6, 2015, 2… [cited by applicant]
Mike Issac, “Slack, a Start-Up With an App to Foster Business Collaboration, Is Valued at $1.1 Billion”, The New York Times Blogs (BITS), Lexisnexis, https://advance.lexis.com/api/permalink/3eb84b34-a8f9-4d7d-9573-89d95… [cited by applicant]
Oikarinen, J. & Reed, D., “Internet Relay Chat Protocol”, Request for Comments: 1459, Network Working Group, [online][retrieved May 30, 2019]. Retrieved from the Internet: <URL: https://www.rfc-editor.org/rfc/rfc1459.tx… [cited by applicant]
Rebecca Walberg, “Email biggest office waste of time: survey”, National Post, at FP10, Lexisnexis, https://advance.lexis.com/api/permalink/96268e3f-26ad-48ac-a98f-6c39804ebded/?context=1000516, (dated Mar. 4, 2014) 2 pa… [cited by applicant]
Robert Hof, “Stewart Butterfield on How Slack Became a $2.8 Billion Unicom”, Forbes, [online][retrieved May 9, 2019]. Retrieved from the Internet: <URL: https://www.forbes.com/sites/roberthof/2015/06/02/stewart-butterfi… [cited by applicant]
The Big Pivot w/ Slack's Stewart Butterfield, Masters of Scale Podcast, Episode 13 (Aired Nov. 14, 2017), https://mastersofscale.com/#/stewart-butterfield-the-big-pivot/, (dated Jan. 17, 2018) 27 pages. [cited by applicant]
Cited By (1)
US 12,645,564