PI Web APIを用いてエレメントの作成を行いたいのですが、403 Forbiddenエラーで失敗しています。
親となるエレメントのwebIdの取得とエレメントの作成には次のAPIを使用しています。
webIdの取得や 既に作成済みのエレメントのアトリビュートの値の取得には成功しています。
エラーの原因と解決方法、確認する必要のある設定を知りたいです。
よろしくお願いします。
PI Web APIを用いてエレメントの作成を行いたいのですが、403 Forbiddenエラーで失敗しています。
親となるエレメントのwebIdの取得とエレメントの作成には次のAPIを使用しています。
webIdの取得や 既に作成済みのエレメントのアトリビュートの値の取得には成功しています。
エラーの原因と解決方法、確認する必要のある設定を知りたいです。
よろしくお願いします。
HTTPSのプロトコルではGet/POST/Putリクエストなどができますが、POSTリクエストを使用しているのでしょうか?リクエストのBodyもシェアしていただければ確認しやすいです。
そのほかエレメントの作成権限がPIWebAPIのサービスユーザーにあるか、Kerberos委任であればアプリケーション側の実行ユーザーにあるかも関連するかもしれません。
ご回答ありがとうございます。
webIdの取得にはGETリクエスト、エレメントの作成にはPOSTリクエストを使用しております。
POSTリクエストのBodyは下記の通りです(hoge_Templateは作成済み)
{
"Name": "hogehoge",
"Description": "",
"TemplateName": "hoge_Template",
"CategoryNames": [
],
"ExtendedProperties": {}
}
認証方法はAnonymous認証としています。
エレメントの作成権限がPIWebAPIのサービスユーザーにあるかの確認はどのように行えばよろしいでしょうか?
エレメントの作成権限を確認するにはPI System Explorerで指定のデータベースに右クリックをしてセキュリティページを開きます。

エレメントを作成したい場合はデータベースにwriteアクセスが必要です。エレメント作成のみに権限を制限したい場合はElementsとElement Templatesのみにwriteアクセスを設定します。

あと、PI Web APIのPI Identityにちゃんとサービスユーザーがマッピングされているかご確認ください。マッピング設定はIdentityに右クリックをしてプロパティを開くと確認できます。
エレメントの作成権限を確認するにはPI System Explorerで指定のデータベースに右クリックをしてセキュリティページを開きます。

エレメントを作成したい場合はデータベースにwriteアクセスが必要です。エレメント作成のみに権限を制限したい場合はElementsとElement Templatesのみにwriteアクセスを設定します。

あと、PI Web APIのPI Identityにちゃんとサービスユーザーがマッピングされているかご確認ください。マッピング設定はIdentityに右クリックをしてプロパティを開くと確認できます。