Risk scoring of cloud permission assignments using supervised machine learning
Techniques for calculating risk scores of entity assignments are discussed herein. The system generates a probability matrix using a collaborative filtering technique such as singular value decomposition. The probability matrix is populated with probability values for each entity representing a probability that, based on the various relationships or associations of that entity with other entities, the entity has been granted an assignment. Risk values are used to provide a weighting value to assignments, separating relatively higher risk assignments from relatively lower risk assignments. The system thereafter calculates a risk score for one or more of the entities using the information in the assignment matrix, the probability matrix, and the risk values. The system can flag or identity one or more entities whose risk scores do not meet various criteria.
1 . A system comprising:
one or more processors; and
one or more non-transitory computer-readable media storing computer-executable instructions that, when executed, cause the one or more processors to perform operations comprising:
receiving, via a cloud computing server associated with a computing device, a risk evaluation request;
receiving, via a network communication with the computing device, entity data comprising:
identities of a plurality of entities associated with the computing device; and
assignments granted to the plurality of entities;
generating a first set of values based on the entity data, the first set of values being indicative of the assignments granted to the plurality of entities;
generating a second set of values by implementing a collaborative filtering technique on the first set of values, wherein the second set of values indicate probabilities that the plurality of entities are granted a particular assignment;
generating a risk score for each entity of the plurality of entities using the first set of values and the second set of values;
flagging the each entity when the risk score meets a criterion;
generating a recommendation when the risk score meets the criterion, wherein the recommendation comprises an identification of a substitute assignment to reduce the risk score, wherein the substitute assignment provides a functionality of an assignment associated with the risk score; and
providing, through the cloud computing server and in response to the risk evaluation request, the recommendation to the computing device.
2 . The system of claim 1 , wherein the computer-executable instructions, when executed, cause the one or more processors to perform operations comprising:
receiving risk values comprising weighting values for the assignments, whereas the weighting values are used to differentiate relatively higher level assignments from relatively lower level assignments,
wherein the risk score for the entity is generated further using the risk values.
3 . The system of claim 1 , wherein the criterion comprises a risk score that is at or greater than a predetermined value, a risk score that is less than a predetermined value, or a risk score that exceeds a differential value.
4 . The system of claim 1 , wherein generating the first set of values comprises:
updating a previously generated first set of values using the entity data.
5 . The system of claim 1 , wherein generating the second set of values comprises:
retrieving a previously generated second set of values.
6 . The system of claim 1 , wherein the computer-executable instructions, when executed, cause the one or more processors to perform operations comprising:
generating a second risk score for a new entity upon adding the new entity to the plurality of entities.
7 . The system of claim 2 , wherein the risk values are received from a user input or from a rules-based model.
8 . One or more non-transitory computer-readable media storing instructions executable by one or more processors, wherein the instructions, when executed, cause the one or more processors to perform operations comprising:
receiving, via a cloud computing server associated with a computing device, a risk evaluation request;
receiving, via a network communication with the computing device, entity data comprising:
identities of a plurality of entities associated with the computing device; and
assignments granted to the plurality of entities;
generating a first set of values comprising the entity data, the first set of values being indicative of the assignments granted to the plurality of entities;
generating a second set of values by implementing a collaborative filtering technique on the first set of values, wherein the second set of values indicate probabilities that the plurality of entities are granted a particular assignment;
generating a risk score for each entity of the plurality of entities using the first set of values and the second set of values;
flagging the each entity when the risk score meets a criterion;
generating a recommendation when the risk score meets the criterion, wherein the recommendation comprises an identification of a substitute assignment to reduce the risk score, wherein the substitute assignment provides a functionality of an assignment associated with the risk score; and
providing, through the cloud computing server and in response to the risk evaluation request, the risk score to the computing device.
9 . The one or more non-transitory computer-readable media of claim 8 , wherein the instructions, when executed, cause the one or more processors to perform operations comprising:
receiving risk values comprising weighting values for the assignments, whereas the weighting values are used to differentiate relatively higher level assignments from relatively lower level assignments,
wherein the risk score for the entity is generated further using the risk values.
10 . The one or more non-transitory computer-readable media of claim 8 , wherein the criterion comprises a risk score that is at or greater than a predetermined value, a risk score that is less than a predetermined value, or a risk score that exceeds a differential value.
11 . The one or more non-transitory computer-readable media of claim 8 , wherein generating the first set of values comprises:
updating a previously generated the second set of values using the entity data.
12 . The one or more non-transitory computer-readable media of claim 8 , wherein generating the second set of values comprises:
retrieving a previously generated second set of values.
13 . The one or more non-transitory computer-readable media of claim 8 , wherein the instructions, when executed, cause the one or more processors to perform operations comprising:
generating a second risk score for a new entity upon adding the new entity to the plurality of entities.
14 . The one or more non-transitory computer-readable media of claim 8 , wherein the instructions, when executed, cause the one or more processors to perform operations comprising:
flagging the each entity when the risk score of the each entity for an illusory assignment is not an expected value.
15 . A computer-implemented method comprising:
receiving, via a cloud computing server associated with a computing device, a risk evaluation request:
receiving, via a network communication with the computing device, entity data comprising:
identities of a plurality of entities associated with the computing device; and
assignments granted to the plurality of entities; and
generating a first set of values comprising the entity data, the first set of values being indicative of the assignments granted to the plurality of entities;
generating a second set of values by implementing a collaborative filtering technique on the first set of values, wherein the second set of values indicate probabilities that the plurality of entities are granted a particular assignment;
generating a risk score for each entity of the plurality of entities using the first set of values and the second set of values;
flagging the each entity when the risk score meets a criterion;
generating a recommendation when the risk score meets the criterion, wherein the recommendation comprises an identification of a substitute assignment to reduce the risk score, wherein the substitute assignment provides a functionality of an assignment associated with the risk score; and
providing, through the cloud computing server and in response to the risk evaluation request, the risk score to the computing device.
16 . The computer-implemented method of claim 15 , further comprising:
receiving risk values comprising weighting values for the assignments, whereas the weighting values are used to differentiate relatively higher level assignments from relatively lower level assignments,
wherein the risk score for the entity is generated further using the risk values.