AUTHENTICATING A CREDENTIAL IN A DISPERSED STORAGE NETWORK
A method begins by receiving an access request from a requesting device of a dispersed storage network. At least one of the access request and the requesting device is associated with a credential. The method continues with determining whether an authentication of the credential is included in a local authentication list. When the authentication of the credential is in the local authentication list, the method continues with determining whether a first timeframe regarding the credential has expired. When the first timeframe has expired, the method continues with determining whether a condition exists to extend a time for the authentication for a second time frame. When the condition exists, the method continues with determining whether the second time frame has expired. When the second time frame has not expired, the method continues with utilizing the authentication included in the local authentication list to authenticate the access request.
1 . A method for execution by a computing device of a dispersed storage network (DSN), the method comprises:
receiving, from a requesting device of the DSN, an access request, wherein at least one of the access request and the requesting device is associated with a credential;
determining whether an authentication of the credential is included in a local authentication list, wherein the local authentication list is stored in a cache of the computing device, and wherein, during a first timeframe, the authentication is operative to authenticate the credential; and
when the authentication of the credential is included in the local authentication list:
determining whether the first timeframe has expired based on a timestamp associated with the authentication, the first timeframe, and a current timestamp; and
when the first timeframe has expired:
determining whether a condition exists to extend a time for the authentication to be operative during a second timeframe; and
when the condition exists:
determining whether the second time frame has expired based on the timestamp associated with the authentication, the second timeframe, and a second current timestamp; and
when the second time frame has not expired, utilizing the authentication included in the local authentication list to authenticate the access request.
2 . The method of claim 1 further comprises:
dispersed storage error encoding the authentication into a set of encoded authentication slices, wherein a decode threshold number of encoded authentication slices of the set of encoded authentication slices is needed to recover the authentication; and
storing the set of encoded authentication slices in a set of storage units of the DSN.
3 . The method of claim 2 further comprises:
receiving a subsequent access request that includes the credential;
obtaining the decode threshold number of encoded authentication slices from the set of storage units;
dispersed storage error decoding the decode threshold number of encoded authentication slices to recover the authentication; and
utilizing the recovered authentication in authenticating the subsequent access request.
4 . The method of claim 1 further comprises:
when the authentication of the credential is not included in the local authentication list:
sending an authentication request to an authentication server regarding the credential;
receiving an authentication response that includes an indication of whether the credential is authentic; and
when the credential is authentic:
storing the authentication of the credential in at least one of, the cache of the computing device, and as a set of encoded authentication slices in a set of storage units of the DSN; and
utilizing the authentication to authenticate the access request.
5 . The method of claim 1 further comprises:
when the first timeframe has not expired:
utilizing the authentication included in the local authentication list to authenticate the access request.
6 . The method of claim 1 further comprises:
when the condition does not exist:
deleting the authentication from one or more of the local authentication list and a set of storage units of the DSN; and
denying the access request.
7 . The method of claim 1 further comprises:
when the second timeframe has expired:
deleting the authentication from one or more of the local authentication list and a set of storage units of the DSN.
8 . The method of claim 1 , where in the condition includes one or more of:
determining the authentication server is offline;
determining the authentication server is not responding within a response time period;
receiving an extension of time authorization from the authentication server; and
receiving a command.
9 . A computing device of a dispersed storage network (DSN) comprises:
memory;
an interface; and
a processing module operably coupled to the memory and the interface, wherein the processing module is operable to:
receive, via the interface and from a requesting device of the DSN, an access request, wherein at least one of the access request and the requesting device is associated with a credential;
determine whether an authentication of the credential is included in a local authentication list, wherein the local authentication list is stored in a cache of the computing device, and wherein, during a first timeframe, the authentication is operative to authenticate the credential; and
when the authentication of the credential is included in the local authentication list:
determine whether the first timeframe has expired based on a timestamp associated with the authentication, the first timeframe, and a current timestamp; and
when the first timeframe has expired:
determine whether a condition exists to extend a time for the authentication to be operative during a second timeframe; and
when the condition exists:
determine whether the second time frame has expired based on the timestamp associated with the authentication, the second timeframe, and a second current timestamp; and
when the second time frame has not expired, utilize the authentication included in the local authentication list to authenticate the access request.
10 . The computing device of claim 9 , wherein the processing module is further operable to:
dispersed storage error encode the authentication into a set of encoded authentication slices, wherein a decode threshold number of encoded authentication slices of the set of encoded authentication slices is needed to recover the authentication; and
send, via the interface, the set of encoded authentication slices to a set of storage units of the DSN for storage therein.
11 . The computing device of claim 10 , wherein the processing module is further operable to:
receive, via the interface, a subsequent access request that includes the credential;
obtain, via the interface, the decode threshold number of encoded authentication slices from the set of storage units;
dispersed storage error decode the decode threshold number of encoded authentication slices to recover the authentication; and
utilize the recovered authentication in authenticating the subsequent access request.
12 . The computing device of claim 9 , wherein the processing module is further operable to:
when the authentication of the credential is not included in the local authentication list:
send, via the interface, an authentication request to an authentication server regarding the credential;
receive, via the interface, an authentication response that includes an indication of whether the credential is authentic; and
when the credential is authentic:
store the authentication of the credential in at least one of, the cache of the computing device, and, via the interface, as a set of encoded authentication slices in a set of storage units of the DSN; and
utilize the authentication to authenticate the access request.
13 . The computing device of claim 9 , wherein the processing module is further operable to:
when the first timeframe has not expired:
utilize the authentication included in the local authentication list to authenticate the access request.
14 . The computing device of claim 9 , wherein the processing module is further operable to:
when the condition does not exist:
delete the authentication from one or more of the local authentication list and a set of storage units of the DSN; and
deny the access request.
15 . The computing device of claim 9 , wherein the processing module is further operable to:
when the second timeframe has expired:
delete the authentication from one or more of the local authentication list and a set of storage units of the DSN.
16 . The computing device of claim 9 , wherein the processing module is further operable to determine the condition by one or more of:
determining the authentication server is offline;
determining the authentication server is not responding within a response time period;
receiving, via the interface, an extension of time authorization from the authentication server; and
receiving, via the interface, a command.