pythonでsagemakerからget_execution_role()を呼び出すとエラーが発生します。 同じエラーを付けました。 現在のAWS IDはsagemakerの役割ではありませんか?
ロールとユーザーの両方にSagemakerFullAccessポリシーを追加しました。
pythonでsagemakerからget_execution_role()を呼び出すとエラーが発生します。 同じエラーを付けました。 現在のAWS IDはsagemakerの役割ではありませんか?
ロールとユーザーの両方にSagemakerFullAccessポリシーを追加しました。
SageMakerをお試しいただきありがとうございます!
あなたが既に見ている例外は、理由を示唆しています。使用している資格情報はロール資格情報ではなく、おそらくユーザーです。
「ARN:AWS:IAM :: accid:ユーザー/名の役割とは対照的に、: 「ARN:AWS:IAM :: accid:役割/名前を 'ユーザー' の資格情報の 形式は次のようになります'
希望します。
ありがとうございましたluk75、私は両方のユーザーと役割のために試してみましたが動作しませんでした。 –
ねえ、別の選択肢は、何らかの理由でパターンマッチングが失敗したということです。たぶんあなたはアカウントのIDの後に文字列を表示することができますか?具体的には、役割名(role after role /)です。おそらく、パターンマッチングをオフにする文字がいくつかあります。 また、名前が単純な名前以外の場合は、別の役割を作成して、それが問題であるかどうか試してみてください。 – luk75
また、それは役割のために働かなかったと言う - あなたが意味するものを説明することはできますか?あなたは、上記のユーザーとまったく同じエラーを受け取りますか? – ishaaq
は、私はしばらくの間、これで苦労し、いくつかの異なる部分がありますが、私は、これらは
あなたのAWS設定ファイルに役割を追加する必要があります(このdocによる)を解決するためのステップであると信じています。ターミナルに移動し、次のように入力します
~/.aws/config
は、AWSのダッシュボードの編集信頼関係次に
[profile marketingadmin]
role_arn = arn:aws:iam::123456789012:role/marketingadmin
source_profile = default
、独自のプロファイルを追加します。
これを追加すると、更新:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "sagemaker.amazonaws.com",
"AWS": "arn:aws:iam::XXXXXXX:user/YOURUSERNAME"
},
"Action": "sts:AssumeRole"
}
]
}
最後に、私は
が私の資格情報を追加した後、コンソール
で役割を切り替えることができ、ユーザーにこのリンクを与えるというリンクをクリックした - 私はそれが働いていたが、私はたくさんの周りめちゃめちゃ信じますIAMサービスの機能が正常に動作するようにしてください。まだ動作しない場合はお知らせください。さらに追加する予定です。
get_execution_role()は、Amazon SageMaker Examples GitHub repositoryで使用される関数ヘルパーです。
これらの例は、Amazon SageMakerが提供する完全に管理されたJupiterノートブックから実行されました。
get_execution_role()は、ノートブックの作成の一部として渡されたIAMロール名を返します。これにより、コード変更なしでノートブックの例を実行することができます。
get_execution_role()は、SageMakerが必要とする役割名がわからないため例外を返します。
この問題を解決するには、get_execution_role()を使用する代わりに、IAMのロール名を渡します。
の代わりに:
role = get_execution_role()
kmeans = KMeans(role=role,
train_instance_count=2,
train_instance_type='ml.c4.8xlarge',
output_path=output_location,
k=10,
data_location=data_location)
、あなたは何をする必要があります。
role = 'role_name_with_sagemaker_permissions'
kmeans = KMeans(role=role,
train_instance_count=2,
train_instance_type='ml.c4.8xlarge',
output_path=output_location,
k=10,
data_location=data_location)
あなたが役割ARNないユーザーのARNを使用あなたは確か? –
私はロールとユーザーarnの両方で試してみましたが、うまく動作しませんでした。 –