IP Library Granted Patent US 11,947,710
Granted Patent B2
US 11,947,710 · App. 17/486,446 · Granted Apr 2, 2024

Real-time feature level software security

Inventors: Adam Sanders (Huntersville, NC); David L. Frost (Charlotte, NC)
Assignee: Wells Fargo Bank, N.A.
G06F21/629G06F21/577H04L63/10H04L63/0435H04L63/0815H04L2463/103
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 11,947,710
App. No.
17/486,446
Granted
Apr 2, 2024
Kind
B2
Abstract

Systems and techniques for real-time feature level software security are described herein. A request may be received from a computing device for data from the feature of the software application. The request for data may include authorization information of a user of the computing device. It may be identified that the feature of the software application contains code containing a reference to a security configuration service. A security configuration may be determined for the feature of the software application by comparing a resource identifier and a feature identifier of the feature of the software application to a set of security configurations of the security configuration service. The security configuration may provide access rules for the feature of the software application. A response may be sent to the computing device based on a comparison of the received authorization information of the user of the computing device to the determined security configuration.

Claims (58)

1. A system for providing security for a feature of a software application in real-time, the system comprising:

at least one processor; and

a memory including instructions that, when executed by the at least one processor, cause the at least one processor to:

receive a request, from a computing device, for data from the feature of the software application, the feature of the software application including code containing a reference to a security configuration service;

determine a security configuration for the feature of the software application by comparing identifiers of the feature to a set of security configurations of the security configuration service, the security configuration providing access rules for portions of code associated with functions of the feature of the software application;

determine, using the security configuration, that a first data item identified in the request for data should be encrypted before transmission and a second data item identified in the request for data should be transmitted unencrypted;

encrypt the first data item using an encryption algorithm; and

send a response including the encrypted first data item and the unencrypted second data item to the computing device, including providing access to the functions of the feature based on the determined security configuration.

2. The system of claim 1 , wherein the instructions further cause the at least one processor to:

gather statistics corresponding to the request for data;

determine a deviation between the statistics and a model of a standard request for data; and

block access to the feature of the software application based on the deviation.

3. The system of claim 1 , wherein the security configuration includes a set of access entitlements.

4. The system of claim 3 , wherein the instructions further cause the at least one processor to:

compare a user entitlement corresponding to a user of the computing device with an access entitlement included in the security configuration.

5. The system of claim 1 , wherein the instructions further cause the at least one processor to:

display a security configuration graphical user interface;

receive a set of inputs via the security configuration graphical user interface; and

generate the security configuration using the received set of inputs.

6. The system of claim 1 , wherein the identifiers include a resource identifier.

7. The system of claim 1 , wherein the identifiers include a feature identifier.

8. A non-transitory computer readable medium including instructions for providing security for a feature of a software application in real-time that, when executed by at least one processor, cause the at least one processor to:

receive a request, from a computing device, for data from the feature of the software application, the feature of the software application including code containing a reference to a security configuration service;

determine a security configuration for the feature of the software application by comparing identifiers of the feature to a set of security configurations of the security configuration service, the security configuration providing access rules for portions of code associated with functions of the feature of the software application;

determine, using the security configuration, that a first data item identified in the request for data should be encrypted before transmission and a second data item identified in the request for data should be transmitted unencrypted;

encrypt the first data item using an encryption algorithm; and

send a response including the encrypted first data item and the unencrypted second data item to the computing device. including providing access to the functions of the feature based on the determined security configuration.

9. The non-transitory computer readable medium of claim 8 , wherein the instructions further cause the at least one processor to:

gather statistics corresponding to the request for data;

determine a deviation between the statistics and a model of a standard request for data; and

block access to the feature of the software application based on the deviation.

10. The non-transitory computer readable medium of claim 8 , wherein the security configuration includes a set of access entitlements.

11. The non-transitory computer readable medium of claim 10 , wherein the instructions further cause the at least one processor to:

compare a user entitlement corresponding to a user of the computing device with an access entitlement included in the security configuration.

12. The non-transitory computer readable medium of claim 8 , wherein the instructions further cause the at least one processor to:

display a security configuration graphical user interface;

receive a set of inputs via the security configuration graphical user interface; and

generate the security configuration using the received set of inputs.

13. The non-transitory computer readable medium of claim 8 , wherein the identifiers include a resource identifier.

14. The non-transitory computer readable medium of claim 8 , wherein the identifiers include a feature identifier.

15. A method for providing security for a feature of a software application in real-time, the method comprising:

receiving a request, from a computing device, for data from the feature of the software application, the feature of the software application including code containing a reference to a security configuration service;

determining a security configuration for the feature of the software application by comparing identifiers of the feature to a set of security configurations of the security configuration service, the security configuration providing access rules for portions of code associated with functions of the feature of the software application;

determining, using the security configuration, that a first data item identified in the request for data should be encrypted before transmission and a second data item identified in the request for data should be transmitted unencrypted;

encrypting the first data item using an encryption algorithm; and

sending a response including the encrypted first data item and the unencrypted second data item to the computing device, including providing access to the functions of the feature based on the determined security configuration.

16. The method of claim 15 , further comprising:

gathering statistics corresponding to the request for data;

determining a deviation between the statistics and a model of a standard request for data; and

blocking access to the feature of the software application based on the deviation.

17. The method of claim 15 , wherein the security configuration includes a set of access entitlements.

18. The method of claim 17 , further comprising:

comparing a user entitlement corresponding to a user of the computing device with an access entitlement included in the security configuration.

19. The method of claim 15 , further comprising:

displaying a security configuration graphical user interface;

receiving a set of inputs via the security configuration graphical user interface; and

generating the security configuration using the received set of inputs.

20. The method of claim 15 , wherein the identifiers include a resource identifier and a feature identifier.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2021
From: SANDERS, ADAM; FROST, DAVID L
To: WELLS FARGO BANK, N.A.
Reel/Frame 057756/0761 →
Continuity (3)
Continuation 16384261 · Apr 15, 2019
Continuation 15142274 · Apr 29, 2016
Related Publication 20220012351A1 · Jan 13, 2022