AWSでフェデレーションアクセス用にIAMロールを作成しようとしていますが、clotoを使用してbotoまたはpowershellを使用してpythonで同じ問題を実行し続けます。awsでiamロールを作成して、assumeRolePolicyDocumentでエラーを取得しようとしています
ここで私はPythonで何をしようとしています。この参照trustPolicy.jsonは、私はそのファイルにこのコードを実行すると、私は次のエラー
ClientError: An error occurred (ValidationError) when calling the CreateRole operation: The specified value for assumeRolePolicyDocument is invalid. It must contain only printable ASCII characters.
を取得し、この
{
"Version": "2012-10-17",
"Statement": [
{
"Action": "sts:AssumeRoleWithSAML",
"Effect": "Allow",
"Condition": {
"StringEquals": {
"SAML:aud": "https://signin.aws.amazon.com/saml"
}
},
"Principal": {
"Federated": "arn:aws:iam::1234567890:saml-provider/myidp"
}
}
]
}
ように構成され
import boto3
tpdoc = r'c:\folders\trustPolicy.json'
with open(tpdoc, 'r') as tpfile:
data = tpfile.read()
client = boto3.client('iam')
response = client.create_role(
RoleName="testrole",
AssumeRolePolicyDocument=data
)
私が通過JSONを実行していますaws jsonバリデーターとそれを検証し、また許容される文字の正規表現を実行し、それも渡します。私はまた、手動で作成されたロールから既存の信頼ポリシーをコピーし、そのコンテンツを自分のjsonファイルに使用しようとしましたが、同じエラーも発生します。