WO2022220839A1 - Permission updates based on error messages - Google Patents
Permission updates based on error messages Download PDFInfo
- Publication number
- WO2022220839A1 WO2022220839A1 PCT/US2021/027631 US2021027631W WO2022220839A1 WO 2022220839 A1 WO2022220839 A1 WO 2022220839A1 US 2021027631 W US2021027631 W US 2021027631W WO 2022220839 A1 WO2022220839 A1 WO 2022220839A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- permission
- computing task
- error message
- computing
- resource
- Prior art date
Links
- 230000004044 response Effects 0.000 claims description 12
- 238000004519 manufacturing process Methods 0.000 claims description 10
- 230000006870 function Effects 0.000 description 29
- 238000000034 method Methods 0.000 description 17
- 230000003993 interaction Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 239000000853 adhesive Substances 0.000 description 1
- 230000001070 adhesive effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- ORQBXQOJMQIAOY-UHFFFAOYSA-N nobelium Chemical compound [No] ORQBXQOJMQIAOY-UHFFFAOYSA-N 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/604—Tools and structures for managing or administering access control systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Definitions
- a computing device can allow a user to utilize computing device operations for work, education, gaming, multimedia, and/or other uses.
- Computing devices can be utilized in a non-portable setting, such as at a desktop, and/or be portable to allow a user to carry or otherwise bring the computing device along while in a mobile setting.
- These computing devices can be communicatively coupled to other computing devices and/or computing resources to perform particular functions.
- Figure 1 illustrates an example of a computing device for permission updates based on error messages.
- Figure 2 illustrates an example of a memory resource storing instructions for permission updates based on error messages.
- Figure 3 illustrates an example of a computing device for permission updates based on error messages.
- Figure 4 illustrates an example of a system for permission updates based on error messages.
- a user may utilize a computing device for various purposes, such as for business and/or recreational use.
- the term computing device refers to an electronic system having a processor resource and a memory resource.
- Examples of computing devices can include, for instance, a laptop computer, a notebook computer, a desktop computer, an all-in-one (AIO) computer, networking device (e.g,, router, switch, etc.), and/or a mobile device (e.g., a smart phone, tablet, personal digital assistant, smart glasses, a wrist-worn device such as a smart watch, etc.), among other types of computing devices.
- a mobile device refers to devices that are (or can be) carried and/or worn by a user.
- the computing device can execute instructions that can be referred to as a computing application that can perform a plurality of computing tasks.
- a computing task can include an execution of instructions to perform a particular function or a particular unit of work.
- the computing task can be utilized to generate a thread, perform an interaction with a cioud resource or computing resource, send or receive a particular instruction, and/or perform other functions.
- a particular application can execute a plurality of computing tasks to perform different functions
- a set of instructions or application can utilize a plurality of permissions for interacting with a resource.
- a set of instructions can include sending instructions, receiving instructions, and/or interacting instructions to interact with a cioud resource or other type of computing resource.
- the plurality of computing tasks can utilize a corresponding permission to interact with the cloud resource or other type of computing resource.
- a permission or computing permission can include a right or privilege that is granted to a particular set of instructions, user, and/or application to perform a particular function.
- an application or set of instructions can utilize a corresponding permission to complete a computing task, in some examples, the cloud resource or computing resource can prevent the computing task from being performed and/or send an error message to the application when the application does not include a particular permission for the computing task, in this way, the application and/or set of instructions can be prevented from performing particular computing tasks when the application does not include a corresponding permission to perform the particular computing task.
- a cloud resource can have a relatively large quantity of permissions that can be applied to a plurality of different applications for different functions, in this way, a particular application may only utilize a portion of the total permissions provided by a cloud resource. That is, an application may perform a particular set of computing tasks that utilize a portion of the total permissions provided by a particular cloud resource.
- performance can be increased for the application by decreasing the quantity of permissions utilized by the application or provided to the cloud resource during an interaction or computing task. Thus, providing permissions to the application that are not utilized by the computing tasks associated with the application can lower performance of the application.
- the present disclosure relates to performing permission updates based on error messages to minimize the quantity of permissions provided or included with a particular application.
- permissions to interact with a particular cloud resource or computing resource can be added or updated to an application based on error messages received in response to executing computing tasks associated with the application during a test environment.
- an application can include a plurality of computing tasks that can be executed during a test environment to interact with a cloud resource, in this example, the cloud resource can provide an error message in response to the computing tasks and the error messages can be utilized to identify permissions for the corresponding computing tasks, in this way, the application can include permissions that are needed to execute the computing tasks without including permissions that are not needed to execute the computing tasks associated with the application. This can minimize the number of permissions associated with the application while allowing the application to interact with the cloud resource without experiencing error messages from the cloud resource.
- Figure 1 illustrates an example of a computing device 102 for permission updates based on error messages.
- the computing device 102 can include a processor resource 104 communicatively coupled to a memory resource 106.
- the memory resource 106 can include instructions 108, 110, 112, 114, 116 that can be executed by the processor resource 104 to perform particular functions.
- the computing device 102 can be associated with a computing resource and/or cloud resource.
- a computing resource or cloud resource can include an on-demand computer system resource that can provide services for the computing device 102.
- the computing device 102 can include instructions to execute a test environment for executing a plurality of computing tasks that can interact with the cloud resource.
- a test environment can refer to a safe mode environment or environment that can be utilized to virtualize or test executions of the computing tasks.
- the test environment can be utilized to execute computing tasks in a simulation environment to prevent changes or alterations of the computing device 102 and/or the cloud resource from being executed, in this way, instead of an actual function being performed, a result of the computing task can be simulated.
- the computing device 102 can include components such as a processor resource 104.
- the processor resource 104 can include, but is not limited to: a central processing unit (CPU), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a metal- programmable cell array (MPCA), a semiconductor-based microprocessor, or other combination of circuitry and/or logic to orchestrate execution of instructions 108, 110, 112, 114, 116.
- the computing device 102 can include instructions 108, 110, 112, 114, 118, stored on a machine-readable medium (e.g,, memory resource 108, non-transitory computer-readable medium, etc.) and executable by a processor resource 104.
- the computing device 102 utilizes a non-transitory computer-readable medium storing instructions 108, 110, 112, 114, 116, that, when executed, cause the processor resource 104 to perform corresponding functions.
- the computing device 102 can include instructions 108 to execute a test environment to perform a computing task.
- a test environment can include a virtualized platform or simulation platform that can be utilized to execute computing tasks to be performed during an operation environment.
- the test environment can be utilized to test functions of the computing tasks and the operation environment can be utilized to perform the functions of the computing tasks.
- an operation environment includes a platform environment where computing tasks are executed to perform corresponding work that results in actual results.
- the computing device 102 can execute the test environment to execute a computing task or a plurality of computing tasks associated with an application or set of instructions.
- the computing device 102 can include instructions 110 to execute the computing task, by the test environment, utilizing a cloud resource.
- the computing task can be a particular task from an application and/or set of instructions that are to be tested using the test environment, in some examples, the computing task can perform a function that interacts with the cloud resource or remote computing resource.
- the computing task can include a bucket creation (e.g., S3 bucket creation, etc.), a listing of a particular bucket (e.g., list an S3 bucket, etc.), bucket definition (e.g., defining the parameters of an S3 bucket etc.), a service request, a particular script to perform a function or generate a particular response, among other computing tasks that can be executed with a cloud resource or computing resource.
- a bucket creation e.g., S3 bucket creation, etc.
- a listing of a particular bucket e.g., list an S3 bucket, etc.
- bucket definition e.g., defining the parameters of an S3 bucket etc.
- service request e.g., defining the parameters of an S3 bucket etc.
- a particular script e.g., defining the parameters of an S3 bucket etc.
- the computing device 102 can include instructions 112 to identify a result of the computing task, wherein the result includes an error message related to a permission associated with the cloud resource.
- the computing task can be executed on the test environment to determine if the computing task would be executed without an error during an operating environment or if the computing task would result in an error message.
- the test environment can allow the computing task to be executed and tested with the cloud resource while not altering settings or performance of the computing device 102. In this way, the computing task can be executed without corresponding work of the computing task is performed.
- the computing task can correspond to generating a bucket on the cloud resource.
- the bucket may not be generated and a result of the computing task can include information relating to whether the computing task would be completed (e.g., the bucket would be generated on the cloud resource, etc.).
- the instructions 112 can Identify the result of the computing task to determine if the computing task was successful or if the computing task was unsuccessful.
- a successful computing task can refer to a computing task that completed an intended function or was executed without error.
- an unsuccessful computing task can refer to a computing task that was unable to complete an intended function or was executed and resulted in an error message, in these examples, the instructions 112 can identify that the result includes an error message.
- the error message can include information that indicates why the computing task was unsuccessful.
- the error message can be a particular type of error message that is generated for a particular deficiency or reason why the computing task was not successful when interacting with the cloud resource.
- the error message can be generated by the cloud resource and/or computing resource that is interacting with the computing device 102 when executing the computing task, in some examples, a particular cloud resource can utilize unique error messages for different types of unsuccessful computing tasks that are received at the cloud resource.
- the computing task can include a request to generate a bucket at the cloud resource.
- a first type of cloud resource can utilize a first type of error message to indicate that the computing task failed and a second type of cloud resource can utilize a second type of error message to indicate that the computing task failed.
- the error message can be generated based on a type of failure or reason the computing task failed to be successful.
- a first type of failure can result in the cloud resource generating a first error message that corresponds to the first type of failure and a second type of failure can result in the cloud resource generating a second error message
- the computing device 102 can include instructions to identify when an error message corresponds to a permission associated with the cloud resource. For example, a particular error message can be generated by the cloud resource when the computing task does not include a particular permission. In this way, the computing device 102 can identify an error message related to a permission of the cloud resource was received in response to executing a particular computing task.
- the computing device 102 can include instructions 114 to determine a permission update for the computing task based on the error message. As described herein, the computing device 102 can identify that the computing task was unsuccessful (e.g., failed, etc.) and received an error message generated by the cloud resource, in these examples, the computing device 102 can analyze the received error message to determine when the error message is associated with a permission associated with the cloud resource. In some examples, the computing device 102 can determine the type of cloud resource that generated the error message related to a permission associated with the cloud resource. In these examples, the computing device 102 can utilize the error message and/or type of cloud resource to determine a permission that can be utilized by the computing task such that the computing task is successful when executed on the cloud resource.
- the computing device 102 can search a database that includes information related to computing tasks, error messages received, type of cloud resource, and/or permission to alleviate the error message, in these examples, the computing device 102 can compare the computing task, error message, and/or type of cloud resource to determine a permission or plurality of permissions that can be utilized as a permission update for the computing task and/or application utilizing the computing task. In this way, the computing task can be executed with a limited quantity of permissions or no permissions associated with the cloud resource to identify permissions that are utilized to perform the computing task successfully, in some examples, similar tests can be performed for a plurality of computing tasks associated with a particular application and/or set of Instructions.
- an application or set of instructions can be executed in a particular format on the test environment to execute each of a plurality of computing tasks to ensure that each of the plurality of computing tasks are executed successfully on the test environment
- the computing device 102 can start executing computing tasks on the test environment when the application or set of instructions includes no or a limited quantity of permissions associated with the cloud resource.
- the computing task can be a permissionless computing task when executed during the test environment.
- a permissionless computing task can be a computing task with no permissions for a particular cloud resource.
- the computing device 102 can execute the plurality of computing tasks sequentially until an error message is received from the cloud resource indicating that a particular computing task has been unsuccessful.
- the computing device 102 can search for a permission to alleviate the error message generated by the cloud resource prior to executing a subsequent computing task, in this way, the computing device 102 can update the application or set of instructions with a determined permission and then repeat the execution of the plurality of computing tasks on the test environment to determine if an error message is received. In some examples, this can prevent multiple permissions from being added or updated to the application or set of instructions that may not be needed or utilized to alleviate error messages or allow the application to be executed successful.
- the computing device 102 can include instructions 116 to update the permissions of the computing task utilizing the permission update, in some examples, the computing device 102 can update the application and/or set of instructions associated with the computing task such that the computing task can utilize the permission when interacting with the cloud resource. In this way, the computing task can be executed and interact with the cloud resource successfully and/or without generating an error message, in this way, the computing task can be executed on the test environment without permissions to identify permissions for the cloud resource through error messages that are received by executing a plurality of computing tasks associated with an application and/or set of instructions.
- the computing device 102 can include instructions to execute, by the test environment, the computing task with the updated permissions that includes the determined permission update, in this way, the updated computing task can be executed to determine if the permission update allows the computing task to be executed successfully with the cloud resource,
- the computing device 102 can alter the test environment to an operating environment when the error result indicates the computing task is ready to be executed by the operating environment.
- the error result can indicate that the computing task was executed successfully with the cloud resource.
- the computing device 102 can confirm that the updated permission for the computing task has alleviated the error message generated by the cloud resource,
- Figure 2 illustrates an example of a memory resource 208 storing instructions for permission updates based on error messages.
- the memory resource 206 can be a part of a computing device or controller that can be communicatively coupled to a computing system that includes image capture devices.
- the memory resource 206 can be part of a computing device 102 as referenced in Figure 1 and communicatively coupled to an Image capture device.
- the memory resource 208 can be communicatively coupled to a processor resource 204 that can execute instructions 222, 224, 226, 228, 230 stored on the memory resource 208.
- the memory resource 206 can be communicatively coupled to the processor resource 204 through a communication path 218.
- a communication path 218 can include a wired or wireless connection that can allow communication between devices and/or components within a single device,
- the memory resource 208 may be electronic, magnetic, optical, or other physical storage device that stores executable instructions.
- a non- transitory machine readable medium (e.g, a memory resource 206) may be, for example, a non-transitory MRM comprising Random-Access Memory (RAM), read-only memory (ROM), an Electrically-Erasable Programmable ROM (EEPROM), a storage drive, an optical disc, and the like.
- the non-transitory machine readable medium e.g., a memory resource 206) may be disposed within a controller and/or computing device.
- the executable instructions 222, 224, 226, 228, 230 can be “installed” on the device.
- the non- transitory machine readable medium e.g., a memory resource
- the non-transitory machine readable medium can be encoded with executable Instructions for selecting an output resolution for a particular captured document.
- the instructions 222 when executed by a processor resource such as the processor resource 204, can include instructions to generate a computing task to be executed by a test environment, wherein the computing task includes a first permission identified by a first error message during a previous execution by the test environment.
- the computing task can be a particular task or individual computing task of an application or set of instructions, in this way, a corresponding permission can be identified for the computing task by utilizing an error message.
- the first error message can be utilized to identify the first permission for the computing task such that the computing task can be executed successfully without receiving an error message, in this way, the computing task can include the first permission from a previous permission update based on the first error message received during the previous execution, in this way, in a specific example, the computing task may include only the first permission when being executed by the test environment.
- the instructions 224 when executed by a processor resource such as the processor resource 204, can include instructions to execute the computing task, by the test environment, utilizing a cloud resource
- the cloud resource can be a remote computing resource and/or server resource to perform a particular function for a plurality of computing devices.
- the processor resource 204 can interact with the cloud resource to provide instructions to the cloud resource to perform particular functions for the processor resource 204.
- the computing task can be utilizing the same cloud resource and/or the same type of cloud resource as the cloud resource that generated the first error message. In this way, the first permission can allow the computing task to avoid the first error message from the cloud resource and/or execute successfully.
- the computing task can include a plurality of portions such that a first portion of the computing task can result in the first error message while other portions of the computing task were not executed following the first error message. In this way, the computing task can execute the first portion with the cloud resource and not receive a first error message and then execute a second or subsequent portion to identify in an error message is received or if the second or subsequent portion is executed successfully.
- a single computing task may utilize multiple permissions with the cloud resource to be executed successfully. In these examples, executing the computing task utilizing the cloud resource can determine if the first permission update alleviated the first error message or if additional permission updates should be performed.
- the computing task can be executed on the test environment to interact with the cloud resource.
- the result can indicate if the computing task was successful or unsuccessful as described herein.
- the cloud resource can generate the second error message and provide the second error message to the processor resource 204.
- the second error message can be utilized by the processor resource 204 to determine a second permission that can alleviate the second error message, in some examples, the processor resource 204 search a database for the second error message provided in response to the computing task by the cloud resource. In other examples, the processor resource 204 can search a network database to identify possible permission updates that can alleviate the second error message such that the computing task can be successful when interacting with the cloud resource.
- the second permission can be added to a database accessible to the computing task such that the computing task can utilize the second permission when interacting with the cloud resource.
- the second permission can be provided through a permission update to the application and/or set of instructions associated with the computing task.
- the first permission provided to the computing task subsequent to a first execution and the second permission can be provided to the computing task subsequent to a second execution utilizing the first permission.
- the instructions 230 when executed by a processor resource such as the processor resource 204, can inciude instructions to generate the computing task with the first permission and the second permission.
- adding the second permission to the computing task can include generating the computing task with the second permission within a list of permissions for the computing task, in this way, the permissions that are added to the computing task can be identified as permissions that are to be included in a generated computing task for an operational mode.
- the computing task can be executed a plurality of times with the test environment to identify the permissions that are to be utilized with the cloud resource to provide a successful execution.
- the identified permissions can be included or accessible to the computing task when generating the computing task for an operation environment.
- a particular permission is removed from the list of permissions for the computing task when an error message corresponding to the particular permission is not received as a result of executing the computing task by the test environment. In this way, permissions from the list of permissions for the computing task can be removed If they were not identified to alleviate a particular error message received by the cloud resource when executing the computing task on the test environment.
- Figure 3 illustrates an example of a computing device for permission updates based on error messages
- the computing device 302 can be a device that includes a processor resource 304 communicatively coupled to a memory resource 306.
- the memory resource 306 can include or store instructions 336, 338, 340, 342, 344, 346, 348, 350, 352, that can be executed by the processor resource 304 to perform particular functions.
- the computing device 302 can be communicatively coupled to a database 332 using a communication path 318.
- a database such as database 332 can include a memory resource 334 for storing data that can be accessed by the computing device 302.
- the database 332 can be utilized to store permission data associated with a cloud resource and/or a plurality of cloud resources.
- the database 332 can be utilized to store received error messages, cloud resource that generated the received error message, attempted permission to alleviate the corresponding error messages, whether the attempted permission was successful or unsuccessful, among other data that can be utilized to identify a permission for alleviating or responding to a particular error message.
- the computing device 302 can include instructions 336 that can be executed by a processor resource 304 to execute, by a test environment, a computing task utilizing a cloud resource prior to assigning a permission to a list of permissions for the computing task.
- the computing task can be a particular task or particular function of an application or set of instructions.
- the computing task can be a portion of an application or set of instructions to be tested utilizing the test environment.
- the computing task may not include or have access to permissions associated with the cloud resource when the computing task is executed by the test environment. In this way, the computing task may not include unnecessary permissions that are not specific to a particular function or interaction performed on the cloud resource. As described herein, unnecessary permissions can decrease performance of the computing task and/or application.
- the computing device 302 can include instructions 338 that can be executed by a processor resource 304 to receive a first error message in response to the computing task.
- executing the computing task to interact with the cloud resource can result in a first error message that is generated by the cloud resource, in this way, the cloud resource can identify that the computing task is missing a particular permission and generate an error message that corresponds to the missing permission.
- the cloud resource can send or provide the first error message to the computing device 302 in response to determining that the computing task is missing a particular permission.
- the computing device 302 can include instructions 340 that can be executed by a processor resource 304 to search the database for the first error message to determine a corresponding first permission for the first error message.
- the computing device 302 can search the memory resource 334 of database 332 for a previous error message that is the same or similar to the first error message and determine if a particular permission was successful in alleviating the first error message.
- the first error message can be generated by the cloud resource.
- the cloud resource can also be searched within the memory resource 334 of the database 332 to determine if the computing device 302 or other computing device storing permission data to the database 332 has received a similar error message from the particular cloud resource as the first error message. In this way, a particular permission (e.g., first permission, etc.) can be selected from the memory resource 334 of the database 332 based on the first error message and/or the cloud resource that generated the first error message.
- a particular permission e.g., first permission, etc.
- the computing device 302 can include instructions 342 that can be executed by a processor resource 304 to add the first permission to the list of permissions for the computing task.
- the first permission can be identified as a permission that can be utilized such that the computing task can be executed and interact with the cloud resource successfully or without the cloud resource generating the first error message.
- the list of permissions can be instructions that can be utilized by the computing task to indicate to the cloud resource that the computing device 302 is authorized to perform the computing task, in this way, the list of permissions can be stored and accessible to the computing task or computing device 302 when executing the computing task. The list of permissions can be provided to the cloud resource when executing the computing task.
- the computing device 302 can include instructions 344 that can be executed by a processor resource 304 to execute, by the test environment, the computing task utilizing the cloud resource with the first permission added to the list of permissions.
- the first permission can be added to the list of permissions and the thus the first permission can be provided to the cloud resource when the computing task is executed by the test environment.
- the cloud resource will not generate the first error message in response to receiving the first permission.
- the computing device 302 can include instructions 346 that can be executed by a processor resource 304 to receive a second error message in response to the computing task.
- the first permission can overcome a permission event that resulted in the first error message, but the computing task may also perform a function or interaction with the cloud resource that may utilize an additional permission or plurality of permissions, in these examples, the cloud resource can generate the second error message when an additional permission is not provided to the cloud resource by the computing task during execution or interaction with the cloud resource.
- the computing device 302 can include instructions 348 that can be executed by a processor resource 304 to search the database 332 for the second error message to determine a corresponding second permission for the second error message. In a similar way as searching for the first error message, the computing device 302 can identify attributes of the second error message and compare the attributes to stored error messages within the database 332. As used herein, the attributes of the error messages can include information or data related to the error message.
- the attributes of the error messages can include, but are not limited to: a timestamp of a received error message, a cloud resource type that generated the error message, a computing task attempted that resulted in the error message, an attempted permission to alleviate the error message, the success of the permission attempted to alleviate the error message, among other information that can be stored related to error messages and/or permissions, in this way, the computing device 302 can utilize the second error message to identify the second permission to be added to the list of permissions for the computing task.
- the computing device 302 can include instructions 350 that can be executed by a processor resource 304 to add the second permission to the list of permissions for the computing task.
- the list of permissions for the computing task can include instructions that can be provided to the cloud resource during execution of the computing task to notify the cloud resource that the computing device 302 and/or application associated with the computing task is authorized to perform a particular function or interaction with the cloud resource, in this way, the second permission can be added to the list of permissions such that the computing task will provide the second permission to the cloud resource when the second permission is executed.
- the computing device 302 can Include instructions 352 that can be executed by a processor resource 304 to execute, by a production environment, the computing task when the result for the computing task is free from a corresponding error message.
- the computing device 302 can alter the test environment to a production environment when the application or set of instructions associated with the computing task has executed successfully on the test environment, in this way, the computing task and/or application can be generated for production environment use utilizing the first permission and the second permission such that additional permissions that may not be utilized or needed to interact with the cloud resource may not be included in the list of permissions, in this way, a relatively low or least quantity of permissions can be added to the list of permissions for a particular computing task and/or application. This can increase the performance of the computing task and/or application since the quantity of permissions that are provided to the cloud resource can be lowered or minimized.
- Figure 4 illustrates an example of a system 460 for permission updates based on error messages
- the system 460 can be include a method 461 that can be executed by a computing device such as computing device 102 as referenced in Figure 1, a computing device utilizing memory resource 206 as referenced in Figure 2, and/or computing device 302 as referenced in Figure 3.
- the system 460 can be utilized to reduce a quantity of permissions provided to a computing task and/or utiiize permissions for a computing task that correspond to specific functions utilized by the computing task.
- the system 460 can include a test environment 464.
- the test environment 464 can simulate computing tasks without altering settings or generating actual results of the computing tasks. That is, the test environment 464 can provide results as successful or unsuccessful, but not actually perform the intended function of the computing task. In this way, an application or set of instructions can be executed without performing the functions of the application or set of instructions.
- the system 460 can include a production environment 476 that can be utilized to execute computing tasks that generate the function of the computing task.
- the production environment 476 can be utilized to execute instructions that result in the instruction being performed, in some examples, the production environment 476 can provide real time or run time execution of the computing task.
- the system 460 can include a database 432.
- the database 432 can be the same or similar device as database 332 as referenced in Figure 3.
- the database 432 can include a memory resource that can store permission data and/or permission attributes that can be utilized to identify a particular permission that can be utilized to alleviate or avoid an error message when executing a particular computing task.
- the system 460 can identify a permission that alleviates a particular error message from a particular cloud resource and store the permission attributes within the database 432 such that other computing devices can utilize the permission attributes.
- the system 460 can include a permission robot 480.
- a permission robot 480 can include instructions that can be executed by a computing device to identify a permission based on the error message and/or other attributes of an interaction that resulted in the error message.
- the permission robot 480 can determine the error message, computing task that was executed and resulted in the error message, the cloud resource that generated the error message, and/or other attributes of an interaction between the computing task and the cloud resource to determine a particular permission update, in some examples, the permission robot 480 can search the database 432 to determine if a previous interaction or computing task resulted in a similar error message and if a particular permission alleviated the error message.
- the permission robot 480 can determine that a similar set of permission attributes are not stored within the database 432 and is not capable of identifying a particular permission that may alleviate the received error message.
- the permission robot 480 can perform a network search utilizing the error message to determine the permission update for the computing task, in these examples, the permission robot 480 can search an external information source 482.
- an external information source 482 can include a remote network search or other type of database that can be searched to determine if the error message can be identified with the permission attributes of a particular interaction between the computing task and the cloud resource.
- the system 460 can include a method 461.
- the steps of the method 461 can illustrate instructions that can be executed by a computing device to perform the corresponding functions of the method 461.
- the method 461 can start at 462.
- the method 461 can execute a task or job on the test environment 464.
- the computing task can be executed on the test environment 464 to test a functionality of the computing task.
- the method 461 can process the execution results of the computing task.
- the results can include an indication of whether the computing task was successful or unsuccessful.
- the results can include an error message generated by the cloud resource, in some examples, the error message can include details identified by the cloud resource.
- the details can include a particular code identification and/or string that can be generated in response to a particular issue with the computing task.
- the particular code identification and/or other details can correspond to a particular permission that is missing or was not provided to the cloud resource from the computing task to perform a particular function. That is, the cloud resource can determine that the computing task did not provide a particular permission for performing or receiving a particular service, in this example, the cloud resource can respond by providing the error message indicating that the computing task did not provide a particular permission.
- processing the execution results can include communicating with the permission robot 480 to determine if a particular permission or plurality of permissions can be identified to alleviate a received error message from the cloud resource. If a permission is found, the method 461 can determine at 470 whether the policy or permissions list of the computing task is to be updated. When a particular permission is identified by the permission robot 480, the method 461 can update the policy or list of permissions for the computing task at 472. At 472, the permission list can be updated with the identified permission from the permission robot 480 and the updated computing task with the updated permission list can be executed by the test environment 464 with the updated policy or list of permissions. In this way, the computing task can provide the updated list of permissions when interacting with the cloud resource to determine if the cloud resource responds with an additional error message.
- the method 461 can alter to the production environment 476 at 474.
- the method 461 can determine that the computing task is updated with a list of permissions that will allow the computing task to be executed without error (e.g., executed successfully) when interacting with the cloud resource, in this way, the method 461 can generate the computing task into a production environment that can generate the function or result associated with the computing task while utilizing relatively fewer permissions than previous systems or methods.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- Debugging And Monitoring (AREA)
Abstract
In some examples, a computing device can Include a processor resource and a non-transitory memory resource storing machine-readable instructions stored thereon that, when executed, cause the processor resource to: execute a test environment to perform a computing task, execute the computing task, by the test environment, utilizing a cloud resource, identify a result of the computing task, wherein the result includes an error message related to a permission associated with the cloud resource, determine a permission update for the computing task based on the error message, and update the permissions of the computing task utilizing the permission update.
Description
PERMISSION UPDATES BASED ON ERROR MESSAGES
Background
[0001] A computing device can allow a user to utilize computing device operations for work, education, gaming, multimedia, and/or other uses. Computing devices can be utilized in a non-portable setting, such as at a desktop, and/or be portable to allow a user to carry or otherwise bring the computing device along while in a mobile setting. These computing devices can be communicatively coupled to other computing devices and/or computing resources to perform particular functions.
Brief Description of the Drawings
[0002] Figure 1 illustrates an example of a computing device for permission updates based on error messages.
[0003] Figure 2 illustrates an example of a memory resource storing instructions for permission updates based on error messages.
[0004] Figure 3 illustrates an example of a computing device for permission updates based on error messages.
[0005] Figure 4 illustrates an example of a system for permission updates based on error messages.
Detailed Description
[0008] A user may utilize a computing device for various purposes, such as for business and/or recreational use. As used herein, the term computing device refers to an electronic system having a processor resource and a memory resource. Examples of computing devices can include, for instance, a laptop computer, a notebook computer, a desktop computer, an all-in-one (AIO) computer, networking device (e.g,, router, switch, etc.), and/or a mobile device (e.g., a smart phone, tablet, personal digital assistant, smart glasses, a wrist-worn device such as a smart watch, etc.), among other types of computing devices. As used herein, a mobile device refers to devices that are (or can be) carried and/or worn by a user.
[0007] In some examples, the computing device can execute instructions that can be referred to as a computing application that can perform a plurality of computing tasks. As used herein, a computing task can include an execution of instructions to perform a particular function or a particular unit of work. In some examples, the computing task can be utilized to generate a thread, perform an interaction with a cioud resource or computing resource, send or receive a particular instruction, and/or perform other functions. In some examples, a particular application can execute a plurality of computing tasks to perform different functions, in some examples, a set of instructions or application can utilize a plurality of permissions for interacting with a resource. For example, a set of instructions can include sending instructions, receiving instructions, and/or interacting instructions to interact with a cioud resource or other type of computing resource.
[0008] In some examples, the plurality of computing tasks can utilize a corresponding permission to interact with the cloud resource or other type of computing resource. As used herein, a permission or computing permission can include a right or privilege that is granted to a particular set of instructions, user, and/or application to perform a particular function. In some examples, an application or set of instructions can utilize a corresponding permission to complete a computing task, in some examples, the cloud resource or computing resource can prevent the computing task from being performed and/or send an error message to the application when the application does not include a particular permission for the computing task, in this way, the application and/or set of instructions can be prevented from performing particular computing tasks when the application does not include a corresponding permission to perform the particular computing task.
[0009] In some examples, a cloud resource can have a relatively large quantity of permissions that can be applied to a plurality of different applications for different functions, in this way, a particular application may only utilize a portion of the total permissions provided by a cloud resource. That is, an application may perform a particular set of computing tasks that utilize a portion of the total permissions provided by a particular cloud resource. In some examples, performance can be increased for the application by decreasing the quantity of permissions utilized by the application or provided to the cloud resource during an interaction or computing task. Thus, providing permissions to the application that are
not utilized by the computing tasks associated with the application can lower performance of the application.
[0010] The present disclosure relates to performing permission updates based on error messages to minimize the quantity of permissions provided or included with a particular application. In this way, permissions to interact with a particular cloud resource or computing resource can be added or updated to an application based on error messages received in response to executing computing tasks associated with the application during a test environment. For example, an application can include a plurality of computing tasks that can be executed during a test environment to interact with a cloud resource, in this example, the cloud resource can provide an error message in response to the computing tasks and the error messages can be utilized to identify permissions for the corresponding computing tasks, in this way, the application can include permissions that are needed to execute the computing tasks without including permissions that are not needed to execute the computing tasks associated with the application. This can minimize the number of permissions associated with the application while allowing the application to interact with the cloud resource without experiencing error messages from the cloud resource.
[0011] Figure 1 illustrates an example of a computing device 102 for permission updates based on error messages. In some examples the computing device 102 can include a processor resource 104 communicatively coupled to a memory resource 106. As described further herein, the memory resource 106 can include instructions 108, 110, 112, 114, 116 that can be executed by the processor resource 104 to perform particular functions. In some examples, the computing device 102 can be associated with a computing resource and/or cloud resource. As used herein, a computing resource or cloud resource can include an on-demand computer system resource that can provide services for the computing device 102. in some examples, the computing device 102 can include instructions to execute a test environment for executing a plurality of computing tasks that can interact with the cloud resource. As used herein, a test environment can refer to a safe mode environment or environment that can be utilized to virtualize or test executions of the computing tasks. In some examples, the test environment can be utilized to execute computing tasks in a simulation environment to prevent changes or alterations of the computing device 102 and/or the cloud resource from being executed, in this way,
instead of an actual function being performed, a result of the computing task can be simulated.
[0012] The computing device 102 can include components such as a processor resource 104. As used herein, the processor resource 104 can include, but is not limited to: a central processing unit (CPU), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a metal- programmable cell array (MPCA), a semiconductor-based microprocessor, or other combination of circuitry and/or logic to orchestrate execution of instructions 108, 110, 112, 114, 116. in other examples, the computing device 102 can include instructions 108, 110, 112, 114, 118, stored on a machine-readable medium (e.g,, memory resource 108, non-transitory computer-readable medium, etc.) and executable by a processor resource 104. In a specific example, the computing device 102 utilizes a non-transitory computer-readable medium storing instructions 108, 110, 112, 114, 116, that, when executed, cause the processor resource 104 to perform corresponding functions.
[0013] In some examples, the computing device 102 can include instructions 108 to execute a test environment to perform a computing task. As described herein, a test environment can include a virtualized platform or simulation platform that can be utilized to execute computing tasks to be performed during an operation environment. As used herein, the test environment can be utilized to test functions of the computing tasks and the operation environment can be utilized to perform the functions of the computing tasks. As used herein, an operation environment includes a platform environment where computing tasks are executed to perform corresponding work that results in actual results. In some examples, the computing device 102 can execute the test environment to execute a computing task or a plurality of computing tasks associated with an application or set of instructions. [0014] In some examples, the computing device 102 can include instructions 110 to execute the computing task, by the test environment, utilizing a cloud resource. In some examples, the computing task can be a particular task from an application and/or set of instructions that are to be tested using the test environment, in some examples, the computing task can perform a function that interacts with the cloud resource or remote computing resource. For example, the computing task can include a bucket creation (e.g., S3 bucket creation, etc.), a listing of a particular bucket (e.g., list an S3 bucket, etc.), bucket definition (e.g., defining the parameters
of an S3 bucket etc.), a service request, a particular script to perform a function or generate a particular response, among other computing tasks that can be executed with a cloud resource or computing resource.
[0015] In some examples, the computing device 102 can include instructions 112 to identify a result of the computing task, wherein the result includes an error message related to a permission associated with the cloud resource. In some examples, the computing task can be executed on the test environment to determine if the computing task would be executed without an error during an operating environment or if the computing task would result in an error message. In some examples, the test environment can allow the computing task to be executed and tested with the cloud resource while not altering settings or performance of the computing device 102. In this way, the computing task can be executed without corresponding work of the computing task is performed. For example, the computing task can correspond to generating a bucket on the cloud resource. In this example, the bucket may not be generated and a result of the computing task can include information relating to whether the computing task would be completed (e.g., the bucket would be generated on the cloud resource, etc.).
[0018] In some examples, the instructions 112 can Identify the result of the computing task to determine if the computing task was successful or if the computing task was unsuccessful. As used herein, a successful computing task can refer to a computing task that completed an intended function or was executed without error. As used herein, an unsuccessful computing task can refer to a computing task that was unable to complete an intended function or was executed and resulted in an error message, in these examples, the instructions 112 can identify that the result includes an error message. In some examples, the error message can include information that indicates why the computing task was unsuccessful. For example, the error message can be a particular type of error message that is generated for a particular deficiency or reason why the computing task was not successful when interacting with the cloud resource.
[0017] In some examples, the error message can be generated by the cloud resource and/or computing resource that is interacting with the computing device 102 when executing the computing task, in some examples, a particular cloud resource can utilize unique error messages for different types of unsuccessful computing tasks that are received at the cloud resource. For example, the computing
task can include a request to generate a bucket at the cloud resource. In ibis example, a first type of cloud resource can utilize a first type of error message to indicate that the computing task failed and a second type of cloud resource can utilize a second type of error message to indicate that the computing task failed. [0018] In some examples, the error message can be generated based on a type of failure or reason the computing task failed to be successful. For example, a first type of failure can result in the cloud resource generating a first error message that corresponds to the first type of failure and a second type of failure can result in the cloud resource generating a second error message, in some examples, the computing device 102 can include instructions to identify when an error message corresponds to a permission associated with the cloud resource. For example, a particular error message can be generated by the cloud resource when the computing task does not include a particular permission. In this way, the computing device 102 can identify an error message related to a permission of the cloud resource was received in response to executing a particular computing task.
[0019] In some examples, the computing device 102 can include instructions 114 to determine a permission update for the computing task based on the error message. As described herein, the computing device 102 can identify that the computing task was unsuccessful (e.g., failed, etc.) and received an error message generated by the cloud resource, in these examples, the computing device 102 can analyze the received error message to determine when the error message is associated with a permission associated with the cloud resource. In some examples, the computing device 102 can determine the type of cloud resource that generated the error message related to a permission associated with the cloud resource. In these examples, the computing device 102 can utilize the error message and/or type of cloud resource to determine a permission that can be utilized by the computing task such that the computing task is successful when executed on the cloud resource.
[0020] In some examples, the computing device 102 can search a database that includes information related to computing tasks, error messages received, type of cloud resource, and/or permission to alleviate the error message, in these examples, the computing device 102 can compare the computing task, error message, and/or type of cloud resource to determine a permission or plurality of permissions that can be utilized as a permission update for the computing task
and/or application utilizing the computing task. In this way, the computing task can be executed with a limited quantity of permissions or no permissions associated with the cloud resource to identify permissions that are utilized to perform the computing task successfully, in some examples, similar tests can be performed for a plurality of computing tasks associated with a particular application and/or set of Instructions. [0021] In some examples, an application or set of instructions can be executed in a particular format on the test environment to execute each of a plurality of computing tasks to ensure that each of the plurality of computing tasks are executed successfully on the test environment, in some examples, the computing device 102 can start executing computing tasks on the test environment when the application or set of instructions includes no or a limited quantity of permissions associated with the cloud resource. For example, the computing task can be a permissionless computing task when executed during the test environment. As used herein, a permissionless computing task can be a computing task with no permissions for a particular cloud resource. In these examples, the computing device 102 can execute the plurality of computing tasks sequentially until an error message is received from the cloud resource indicating that a particular computing task has been unsuccessful.
[0022] In some examples, the computing device 102 can search for a permission to alleviate the error message generated by the cloud resource prior to executing a subsequent computing task, in this way, the computing device 102 can update the application or set of instructions with a determined permission and then repeat the execution of the plurality of computing tasks on the test environment to determine if an error message is received. In some examples, this can prevent multiple permissions from being added or updated to the application or set of instructions that may not be needed or utilized to alleviate error messages or allow the application to be executed successful.
[0023] In some examples, the computing device 102 can include instructions 116 to update the permissions of the computing task utilizing the permission update, in some examples, the computing device 102 can update the application and/or set of instructions associated with the computing task such that the computing task can utilize the permission when interacting with the cloud resource. In this way, the computing task can be executed and interact with the cloud resource successfully and/or without generating an error message, in this way, the computing task can be
executed on the test environment without permissions to identify permissions for the cloud resource through error messages that are received by executing a plurality of computing tasks associated with an application and/or set of instructions. In some examples, the computing device 102 can include instructions to execute, by the test environment, the computing task with the updated permissions that includes the determined permission update, in this way, the updated computing task can be executed to determine if the permission update allows the computing task to be executed successfully with the cloud resource,
[0024] In some examples, the computing device 102 can alter the test environment to an operating environment when the error result indicates the computing task is ready to be executed by the operating environment. For example, the error result can indicate that the computing task was executed successfully with the cloud resource. In this way, the computing device 102 can confirm that the updated permission for the computing task has alleviated the error message generated by the cloud resource,
[0025] Figure 2 illustrates an example of a memory resource 208 storing instructions for permission updates based on error messages. In some examples, the memory resource 206 can be a part of a computing device or controller that can be communicatively coupled to a computing system that includes image capture devices. For example, the memory resource 206 can be part of a computing device 102 as referenced in Figure 1 and communicatively coupled to an Image capture device. In some examples, the memory resource 208 can be communicatively coupled to a processor resource 204 that can execute instructions 222, 224, 226, 228, 230 stored on the memory resource 208. For example, the memory resource 206 can be communicatively coupled to the processor resource 204 through a communication path 218. In some examples, a communication path 218 can include a wired or wireless connection that can allow communication between devices and/or components within a single device,
[0026] The memory resource 208 may be electronic, magnetic, optical, or other physical storage device that stores executable instructions. Thus, a non- transitory machine readable medium (MRM) (e.g,, a memory resource 206) may be, for example, a non-transitory MRM comprising Random-Access Memory (RAM), read-only memory (ROM), an Electrically-Erasable Programmable ROM (EEPROM), a storage drive, an optical disc, and the like. The non-transitory machine readable
medium (e.g., a memory resource 206) may be disposed within a controller and/or computing device. In this example, the executable instructions 222, 224, 226, 228, 230 can be “installed” on the device. Additionally, and/or alternatively, the non- transitory machine readable medium (e.g., a memory resource) can be a portable, external or remote storage medium, for example, that allows a computing system to download the instructions 222, 224, 226, 228, 230 from the portable/external/remote storage medium. In this situation, the executable instructions may be part of an “installation package”. As described herein, the non-transitory machine readable medium (e.g., a memory resource 206) can be encoded with executable Instructions for selecting an output resolution for a particular captured document.
[0027] The instructions 222, when executed by a processor resource such as the processor resource 204, can include instructions to generate a computing task to be executed by a test environment, wherein the computing task includes a first permission identified by a first error message during a previous execution by the test environment. As described herein, the computing task can be a particular task or individual computing task of an application or set of instructions, in this way, a corresponding permission can be identified for the computing task by utilizing an error message. Thus, the first error message can be utilized to identify the first permission for the computing task such that the computing task can be executed successfully without receiving an error message, in this way, the computing task can include the first permission from a previous permission update based on the first error message received during the previous execution, in this way, in a specific example, the computing task may include only the first permission when being executed by the test environment.
[0028] The instructions 224, when executed by a processor resource such as the processor resource 204, can include instructions to execute the computing task, by the test environment, utilizing a cloud resource, in some examples, the cloud resource can be a remote computing resource and/or server resource to perform a particular function for a plurality of computing devices. In this way, the processor resource 204 can interact with the cloud resource to provide instructions to the cloud resource to perform particular functions for the processor resource 204. in some examples, the computing task can be utilizing the same cloud resource and/or the same type of cloud resource as the cloud resource that generated the first error
message. In this way, the first permission can allow the computing task to avoid the first error message from the cloud resource and/or execute successfully.
[0029] In some examples, the computing task can include a plurality of portions such that a first portion of the computing task can result in the first error message while other portions of the computing task were not executed following the first error message. In this way, the computing task can execute the first portion with the cloud resource and not receive a first error message and then execute a second or subsequent portion to identify in an error message is received or if the second or subsequent portion is executed successfully. In other examples, a single computing task may utilize multiple permissions with the cloud resource to be executed successfully. In these examples, executing the computing task utilizing the cloud resource can determine if the first permission update alleviated the first error message or if additional permission updates should be performed.
[0030] The instructions 228, when executed by a processor resource such as the processor resource 204, can include instructions to identify a result of the computing task, wherein the result includes a second error message related to a second permission associated with the cloud resource. As described herein, the computing task can be executed on the test environment to interact with the cloud resource. In some examples, the result can indicate if the computing task was successful or unsuccessful as described herein. When the computing task is unsuccessful the cloud resource can generate the second error message and provide the second error message to the processor resource 204.
[0031] As described herein, the second error message can be utilized by the processor resource 204 to determine a second permission that can alleviate the second error message, in some examples, the processor resource 204 search a database for the second error message provided in response to the computing task by the cloud resource. In other examples, the processor resource 204 can search a network database to identify possible permission updates that can alleviate the second error message such that the computing task can be successful when interacting with the cloud resource.
[0032] The instructions 228, when executed by a processor resource such as the processor resource 204, can include instructions to add the second permission to the computing task to alleviate the second error message. In some examples, the second permission can be added to a database accessible to the computing task
such that the computing task can utilize the second permission when interacting with the cloud resource. In some examples, the second permission can be provided through a permission update to the application and/or set of instructions associated with the computing task. In these examples, the first permission provided to the computing task subsequent to a first execution and the second permission can be provided to the computing task subsequent to a second execution utilizing the first permission.
[0033] The instructions 230, when executed by a processor resource such as the processor resource 204, can inciude instructions to generate the computing task with the first permission and the second permission. As described herein, adding the second permission to the computing task can include generating the computing task with the second permission within a list of permissions for the computing task, in this way, the permissions that are added to the computing task can be identified as permissions that are to be included in a generated computing task for an operational mode. For example, the computing task can be executed a plurality of times with the test environment to identify the permissions that are to be utilized with the cloud resource to provide a successful execution. In this example, the identified permissions can be included or accessible to the computing task when generating the computing task for an operation environment.
[0034] In some examples, a particular permission is removed from the list of permissions for the computing task when an error message corresponding to the particular permission is not received as a result of executing the computing task by the test environment. In this way, permissions from the list of permissions for the computing task can be removed If they were not identified to alleviate a particular error message received by the cloud resource when executing the computing task on the test environment.
[0035] Figure 3 illustrates an example of a computing device for permission updates based on error messages, in some examples the computing device 302 can be a device that includes a processor resource 304 communicatively coupled to a memory resource 306. As described herein, the memory resource 306 can include or store instructions 336, 338, 340, 342, 344, 346, 348, 350, 352, that can be executed by the processor resource 304 to perform particular functions.
[0036] In some examples, the computing device 302 can be communicatively coupled to a database 332 using a communication path 318. As used herein, a
database, such as database 332, can include a memory resource 334 for storing data that can be accessed by the computing device 302. In some examples, the database 332 can be utilized to store permission data associated with a cloud resource and/or a plurality of cloud resources. For example, the database 332 can be utilized to store received error messages, cloud resource that generated the received error message, attempted permission to alleviate the corresponding error messages, whether the attempted permission was successful or unsuccessful, among other data that can be utilized to identify a permission for alleviating or responding to a particular error message.
[0037] In some examples, the computing device 302 can include instructions 336 that can be executed by a processor resource 304 to execute, by a test environment, a computing task utilizing a cloud resource prior to assigning a permission to a list of permissions for the computing task. As described herein, the computing task can be a particular task or particular function of an application or set of instructions. In some examples, the computing task can be a portion of an application or set of instructions to be tested utilizing the test environment. In some examples, the computing task may not include or have access to permissions associated with the cloud resource when the computing task is executed by the test environment. In this way, the computing task may not include unnecessary permissions that are not specific to a particular function or interaction performed on the cloud resource. As described herein, unnecessary permissions can decrease performance of the computing task and/or application.
[0038] In some examples, the computing device 302 can include instructions 338 that can be executed by a processor resource 304 to receive a first error message in response to the computing task. As described herein, without a particular permission, executing the computing task to interact with the cloud resource can result in a first error message that is generated by the cloud resource, in this way, the cloud resource can identify that the computing task is missing a particular permission and generate an error message that corresponds to the missing permission. In some examples, the cloud resource can send or provide the first error message to the computing device 302 in response to determining that the computing task is missing a particular permission.
[0039] In some examples, the computing device 302 can include instructions 340 that can be executed by a processor resource 304 to search the database for
the first error message to determine a corresponding first permission for the first error message. As described herein, the computing device 302 can search the memory resource 334 of database 332 for a previous error message that is the same or similar to the first error message and determine if a particular permission was successful in alleviating the first error message. As described herein, the first error message can be generated by the cloud resource. In these examples, the cloud resource can also be searched within the memory resource 334 of the database 332 to determine if the computing device 302 or other computing device storing permission data to the database 332 has received a similar error message from the particular cloud resource as the first error message. In this way, a particular permission (e.g., first permission, etc.) can be selected from the memory resource 334 of the database 332 based on the first error message and/or the cloud resource that generated the first error message.
[0040] In some examples, the computing device 302 can include instructions 342 that can be executed by a processor resource 304 to add the first permission to the list of permissions for the computing task. As described herein, the first permission can be identified as a permission that can be utilized such that the computing task can be executed and interact with the cloud resource successfully or without the cloud resource generating the first error message. In some examples, the list of permissions can be instructions that can be utilized by the computing task to indicate to the cloud resource that the computing device 302 is authorized to perform the computing task, in this way, the list of permissions can be stored and accessible to the computing task or computing device 302 when executing the computing task. The list of permissions can be provided to the cloud resource when executing the computing task.
[0041] In some examples, the computing device 302 can include instructions 344 that can be executed by a processor resource 304 to execute, by the test environment, the computing task utilizing the cloud resource with the first permission added to the list of permissions. As described herein, the first permission can be added to the list of permissions and the thus the first permission can be provided to the cloud resource when the computing task is executed by the test environment. When the first permission alleviates the first error message, the cloud resource will not generate the first error message in response to receiving the first permission.
[0042] In some examples, the computing device 302 can Include instructions 346 that can be executed by a processor resource 304 to receive a second error message in response to the computing task. In some examples, the first permission can overcome a permission event that resulted in the first error message, but the computing task may also perform a function or interaction with the cloud resource that may utilize an additional permission or plurality of permissions, in these examples, the cloud resource can generate the second error message when an additional permission is not provided to the cloud resource by the computing task during execution or interaction with the cloud resource.
[0043] In some examples, the computing device 302 can include instructions 348 that can be executed by a processor resource 304 to search the database 332 for the second error message to determine a corresponding second permission for the second error message. In a similar way as searching for the first error message, the computing device 302 can identify attributes of the second error message and compare the attributes to stored error messages within the database 332. As used herein, the attributes of the error messages can include information or data related to the error message. For example, the attributes of the error messages can include, but are not limited to: a timestamp of a received error message, a cloud resource type that generated the error message, a computing task attempted that resulted in the error message, an attempted permission to alleviate the error message, the success of the permission attempted to alleviate the error message, among other information that can be stored related to error messages and/or permissions, in this way, the computing device 302 can utilize the second error message to identify the second permission to be added to the list of permissions for the computing task. [0044] In some examples, the computing device 302 can include instructions 350 that can be executed by a processor resource 304 to add the second permission to the list of permissions for the computing task. As described herein, the list of permissions for the computing task can include instructions that can be provided to the cloud resource during execution of the computing task to notify the cloud resource that the computing device 302 and/or application associated with the computing task is authorized to perform a particular function or interaction with the cloud resource, in this way, the second permission can be added to the list of permissions such that the computing task will provide the second permission to the cloud resource when the second permission is executed.
[0045] In some examples, the computing device 302 can Include instructions 352 that can be executed by a processor resource 304 to execute, by a production environment, the computing task when the result for the computing task is free from a corresponding error message. As described herein, the computing device 302 can alter the test environment to a production environment when the application or set of instructions associated with the computing task has executed successfully on the test environment, in this way, the computing task and/or application can be generated for production environment use utilizing the first permission and the second permission such that additional permissions that may not be utilized or needed to interact with the cloud resource may not be included in the list of permissions, in this way, a relatively low or least quantity of permissions can be added to the list of permissions for a particular computing task and/or application. This can increase the performance of the computing task and/or application since the quantity of permissions that are provided to the cloud resource can be lowered or minimized.
[0046] Figure 4 illustrates an example of a system 460 for permission updates based on error messages, in some examples, the system 460 can be include a method 461 that can be executed by a computing device such as computing device 102 as referenced in Figure 1, a computing device utilizing memory resource 206 as referenced in Figure 2, and/or computing device 302 as referenced in Figure 3. In some examples, the system 460 can be utilized to reduce a quantity of permissions provided to a computing task and/or utiiize permissions for a computing task that correspond to specific functions utilized by the computing task.
[0047] In some examples, the system 460 can include a test environment 464. As described herein, the test environment 464 can simulate computing tasks without altering settings or generating actual results of the computing tasks. That is, the test environment 464 can provide results as successful or unsuccessful, but not actually perform the intended function of the computing task. In this way, an application or set of instructions can be executed without performing the functions of the application or set of instructions.
[0048] In some examples, the system 460 can include a production environment 476 that can be utilized to execute computing tasks that generate the function of the computing task. For example, the production environment 476 can be utilized to execute instructions that result in the instruction being performed, in some
examples, the production environment 476 can provide real time or run time execution of the computing task.
[0049] In some examples, the system 460 can include a database 432. In some examples, the database 432 can be the same or similar device as database 332 as referenced in Figure 3. For example, the database 432 can include a memory resource that can store permission data and/or permission attributes that can be utilized to identify a particular permission that can be utilized to alleviate or avoid an error message when executing a particular computing task. In some examples, the system 460 can identify a permission that alleviates a particular error message from a particular cloud resource and store the permission attributes within the database 432 such that other computing devices can utilize the permission attributes.
[0050] In some examples, the system 460 can include a permission robot 480. As used herein, a permission robot 480 can include instructions that can be executed by a computing device to identify a permission based on the error message and/or other attributes of an interaction that resulted in the error message. For example, the permission robot 480 can determine the error message, computing task that was executed and resulted in the error message, the cloud resource that generated the error message, and/or other attributes of an interaction between the computing task and the cloud resource to determine a particular permission update, in some examples, the permission robot 480 can search the database 432 to determine if a previous interaction or computing task resulted in a similar error message and if a particular permission alleviated the error message.
[0051] In some examples, the permission robot 480 can determine that a similar set of permission attributes are not stored within the database 432 and is not capable of identifying a particular permission that may alleviate the received error message. In some examples, the permission robot 480 can perform a network search utilizing the error message to determine the permission update for the computing task, in these examples, the permission robot 480 can search an external information source 482. As used herein, an external information source 482 can include a remote network search or other type of database that can be searched to determine if the error message can be identified with the permission attributes of a particular interaction between the computing task and the cloud resource.
[0052] As described herein, the system 460 can include a method 461. The steps of the method 461 can illustrate instructions that can be executed by a
computing device to perform the corresponding functions of the method 461. The method 461 can start at 462. At 466, the method 461 can execute a task or job on the test environment 464. As described herein, the computing task can be executed on the test environment 464 to test a functionality of the computing task.
[0053] At 468, the method 461 can process the execution results of the computing task. As described herein, the results can include an indication of whether the computing task was successful or unsuccessful. In some examples, the results can include an error message generated by the cloud resource, in some examples, the error message can include details identified by the cloud resource. In some examples, the details can include a particular code identification and/or string that can be generated in response to a particular issue with the computing task. For example, the particular code identification and/or other details can correspond to a particular permission that is missing or was not provided to the cloud resource from the computing task to perform a particular function. That is, the cloud resource can determine that the computing task did not provide a particular permission for performing or receiving a particular service, in this example, the cloud resource can respond by providing the error message indicating that the computing task did not provide a particular permission.
[0054] In some examples, processing the execution results can include communicating with the permission robot 480 to determine if a particular permission or plurality of permissions can be identified to alleviate a received error message from the cloud resource. If a permission is found, the method 461 can determine at 470 whether the policy or permissions list of the computing task is to be updated. When a particular permission is identified by the permission robot 480, the method 461 can update the policy or list of permissions for the computing task at 472. At 472, the permission list can be updated with the identified permission from the permission robot 480 and the updated computing task with the updated permission list can be executed by the test environment 464 with the updated policy or list of permissions. In this way, the computing task can provide the updated list of permissions when interacting with the cloud resource to determine if the cloud resource responds with an additional error message.
[0055] When the permission robot 480 does not find an additional permission and/or when the cloud resource responds with a result indicating the execution was successful and/or without an error message, the method 461 can alter to the
production environment 476 at 474. At 474, the method 461 can determine that the computing task is updated with a list of permissions that will allow the computing task to be executed without error (e.g., executed successfully) when interacting with the cloud resource, in this way, the method 461 can generate the computing task into a production environment that can generate the function or result associated with the computing task while utilizing relatively fewer permissions than previous systems or methods.
[0056] In the foregoing detailed description of the disciosure, reference is made to the accompanying drawings that form a part hereof, and in which is shown by way of illustration how examples of the disclosure may be practiced. These examples are described in sufficient detail to enable those of ordinary skill in the art to practice the examples of this disciosure, and it is to be understood that other examples may be utilized and that process, electrical, and/or structural changes may be made without departing from the scope of the disclosure. Further, as used herein, “a” refers to one such thing or more than one such thing.
[0057] The figures herein follow a numbering convention in which the first digit corresponds to the drawing figure number and the remaining digits identify an element or component in the drawing. For example, reference numeral 102 may refer to element 102 in Figure 1 and an analogous element may be Identified by reference numeral 302 in Figure 3. Elements shown in the various figures herein can be added, exchanged, and/or eliminated to provide additional examples of the disciosure. In addition, the proportion and the relative scale of the elements provided in the figures are intended to illustrate the examples of the disclosure and should not be taken in a limiting sense.
[0058] It can be understood that when an element is referred to as being "on," "connected to", “coupled to”, or "coupled with" another element, it can be directly on, connected, or coupled with the other element or intervening elements may be present. In contrast, when an object is “directly coupled to” or “directly coupled with” another element it is understood that are no Intervening elements (adhesives, screws, other elements) etc.
[0059] The above specification, examples, and data provide a description of the system and method of the disclosure. Since many examples can be made without departing from the spirit and scope of the system and method of the
disclosure, this specification merely sets forth some of the many possible example configurations and implementations.
Claims
1. A computing device, comprising: a processor resource; and a non-transitory memory resource storing machine-readable instructions stored thereon that, when executed, cause the processor resource to: execute a test environment to perform a computing task; execute the computing task, by the test environment, utilizing a cloud resource; identify a result of the computing task, wherein the result includes an error message related to a permission associated with the cloud resource; determine a permission update for the computing task based on the error message; and update permissions of the computing task utilizing the permission update.
2. The computing device of claim 1 , comprising instructions to cause the processor resource to execute, by the test environment, the computing task with the updated permissions that includes the determined permission update.
3. The computing device of claim 1 , wherein the computing task is a permissionless computing task when executed during the test environment.
4. The computing device of claim 1 , wherein the processor resource is to alter the test environment to an operating environment when the error result indicates the computing task is ready to be executed by the operating environment.
5. The computing device of claim 1 , wherein the processor resource is to perform a network search utilizing the error message to determine the permission update for the computing task.
6. The computing device of claim 1 , wherein the processor resource is to store the error message and corresponding determined permission update at a database when the permission update resolves the error message.
7. The computing device of claim 6, wherein the processor resource is to search the database for the error message to determine a corresponding permission update.
8. A non-transitory memory resource storing machine-readable instructions stored thereon that, when executed, cause a processor resource to: generate a computing task to be executed by a test environment, wherein the computing task includes a first permission identified by a first error message during a previous execution by the test environment; execute the computing task, by the test environment, utilizing a cloud resource;
Identify a result of the computing task, wherein the result includes a second error message related to a second permission associated with the cloud resource; add the second permission to the computing task to alleviate the second error message; and generate the computing task with the first permission and the second permission.
9. The memory resource of claim 8, comprising instructions to cause the processor resource to: execute the computing task with the first permission and the second permission to identify an updated result of the computing task.
10. The memory resource of claim 9, wherein the computing task is executed by a production environment when the updated result does not include a third error message.
11. The memory resource of claim 8, comprising instructions to cause the processor resource to compile a list of permissions for the computing task based on corresponding received error messages when executed by the test environment, wherein a third permission is removed from the list of permissions for the computing task when a third error message corresponding to the third permission is not received as a result of executing the computing task by the test environment.
12. A system, comprising: a database to store data associated with error messages that are provided with a result when a particular computing task is missing a particular permission; and a computing device, comprising a processor resource to: execute, by a test environment, a computing task utilizing a cloud resource prior to assigning a permission to a list of permissions for the computing task; receive a first error message in response to the computing task; search the database for the first error message to determine a corresponding first permission for the first error message; add the first permission to the list of permissions for the computing task; execute, by the test environment, the computing task utilizing the cloud resource with the first permission added to the list of permissions; receive a second error message in response to the computing task; search the database for the second error message to determine a corresponding second permission for the second error message; add the second permission to the list of permissions for the computing task; and execute, by a production environment, the computing task when the result for the computing task is free from a corresponding error message.
13. The system of claim 12, wherein the processor is to remove a particular permission from the list of permissions when the particular permission is not identified by a corresponding error message.
14. The system of claim 12, wherein the processor resource is to perform a network search for the second error message when the database does not include the corresponding second permission.
15. The system of claim 14, wherein the processor resource is to add the second error message and the corresponding second permission to the database when the second error message is not received after the processor resource executes, by the test environment, the computing task utilizing the cloud resource when the permission list for the computing task includes the corresponding second permission.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2021/027631 WO2022220839A1 (en) | 2021-04-16 | 2021-04-16 | Permission updates based on error messages |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2021/027631 WO2022220839A1 (en) | 2021-04-16 | 2021-04-16 | Permission updates based on error messages |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022220839A1 true WO2022220839A1 (en) | 2022-10-20 |
Family
ID=83640918
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2021/027631 WO2022220839A1 (en) | 2021-04-16 | 2021-04-16 | Permission updates based on error messages |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2022220839A1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030208636A1 (en) * | 2002-05-01 | 2003-11-06 | Heddings Jason A. | Applet permissions manager |
US20170098095A1 (en) * | 2015-10-06 | 2017-04-06 | Conjur, Inc. | Enhanced permission allocation in a computing environment |
US20200372164A1 (en) * | 2019-05-22 | 2020-11-26 | Texas Instruments Incorporated | System and method for providing limited utilization run time application control as a service in microcontrollers |
-
2021
- 2021-04-16 WO PCT/US2021/027631 patent/WO2022220839A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030208636A1 (en) * | 2002-05-01 | 2003-11-06 | Heddings Jason A. | Applet permissions manager |
US20170098095A1 (en) * | 2015-10-06 | 2017-04-06 | Conjur, Inc. | Enhanced permission allocation in a computing environment |
US20200372164A1 (en) * | 2019-05-22 | 2020-11-26 | Texas Instruments Incorporated | System and method for providing limited utilization run time application control as a service in microcontrollers |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11467952B2 (en) | API driven continuous testing systems for testing disparate software | |
US12001306B2 (en) | Cross-jurisdictional microservice-based cloud platform deployment | |
US11200157B1 (en) | Automated execution reporting for container builds | |
CN111190586A (en) | Software development framework building and using method, computing device and storage medium | |
CN110569035A (en) | Code compiling method, device, equipment and storage medium of software development project | |
CN101515316A (en) | Trusted computing terminal and trusted computing method | |
CN113227971A (en) | Real-time application error identification and mitigation | |
CN110995825B (en) | Intelligent contract issuing method, intelligent node equipment and storage medium | |
US20220103555A1 (en) | Service deployment method, device, system, and computer-readable storage medium | |
CN107357721B (en) | Method and device for testing system | |
CN106294036A (en) | A kind of hardware fault verification method, device and client | |
US20210157560A1 (en) | System and method for application release orchestration and deployment | |
CN114003510A (en) | Script testing method, device, equipment and medium based on Mock service | |
CN113961199A (en) | Model deployment system, method, device and storage medium | |
CN116560801B (en) | Cross-container counter system credit migration method and equipment | |
WO2022220839A1 (en) | Permission updates based on error messages | |
CN114006815A (en) | Automatic deployment method and device for cloud platform nodes, nodes and storage medium | |
CN113360172B (en) | Application deployment method, device, computer equipment and storage medium | |
CN114073039A (en) | Method and device for safety control automation | |
CN111176653B (en) | Program compiling and packaging method and device, electronic equipment and storage medium | |
CN115567218A (en) | Data processing method and device of security certificate based on block chain and server | |
CN112231231A (en) | Method, system and device for debugging cloud service | |
CN113626307A (en) | Data verification method and device based on K8S container platform | |
CN107291494B (en) | Method and device for generating application program installation package | |
EP3379409A1 (en) | Automated program code analysis and reporting |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21937163 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21937163 Country of ref document: EP Kind code of ref document: A1 |