getContextKeysForCustomPolicy method
Gets a list of all of the context keys referenced in the input policies. The policies are supplied as a list of one or more strings. To get the context keys from policies associated with an IAM user, group, or role, use GetContextKeysForPrincipalPolicy.
Context keys are variables maintained by Amazon Web Services and its
services that provide details about the context of an API query request.
Context keys can be evaluated by testing against a value specified in an
IAM policy. Use GetContextKeysForCustomPolicy to understand
what key names and values you must supply when you call SimulateCustomPolicy.
Note that all parameters are shown in unencoded form here for clarity but
must be URL encoded to be included as a part of a real HTML request.
May throw InvalidInputException.
Parameter policyInputList :
A list of policies for which you want the list of context keys referenced
in those policies. Each document is specified as a string containing the
complete, valid JSON text of an IAM policy.
The regex pattern used to validate this parameter is a string of characters consisting of the following:
-
Any printable ASCII character ranging from the space character
(
\u0020) through the end of the ASCII character range -
The printable characters in the Basic Latin and Latin-1 Supplement
character set (through
\u00FF) -
The special characters tab (
\u0009), line feed (\u000A), and carriage return (\u000D)
Implementation
Future<GetContextKeysForPolicyResponse> getContextKeysForCustomPolicy({
required List<String> policyInputList,
}) async {
final $request = <String, String>{
if (policyInputList.isEmpty)
'PolicyInputList': ''
else
for (var i1 = 0; i1 < policyInputList.length; i1++)
'PolicyInputList.member.${i1 + 1}': policyInputList[i1],
};
final $result = await _protocol.send(
$request,
action: 'GetContextKeysForCustomPolicy',
version: '2010-05-08',
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
resultWrapper: 'GetContextKeysForCustomPolicyResult',
);
return GetContextKeysForPolicyResponse.fromXml($result);
}