機械翻訳について

アクセスおよびセキュア・ビジネス・オブジェクト

ロールベースのセキュリティを有効にして、ビジュアル・アプリケーションと外部クライアントの両方のアプリケーションに対して、RESTエンドポイントを介したビジネス・オブジェクトへのアクセスを制御します。 各ビジネス・オブジェクトのセキュリティ設定を構成して、エンドポイントにアクセスできるユーザー・ロールおよび実行できる操作のタイプを制御できます。

セキュア・ビジネス・オブジェクト

ユーザー・ロールを使用して、ビジネス・オブジェクトに格納されているデータを保護できます。

デフォルトでは、アプリケーションにアクセスできるすべてのユーザーがアプリケーション内のビジネス・オブジェクトにアクセスできます。 オブジェクトに格納されているデータを保護するために、ユーザー・ロールを使用して、操作ごとにロールベースのアクセスを構成することで、操作を表示、作成、更新および削除するユーザーのアクセスを制限できます。 ユーザーは操作の実行のみを行い、ユーザーに割り当てられているロールに関連付けられているビジネス・オブジェクトと相互作用できます。

ビジネス・オブジェクトのデータに匿名アクセスできるようにするには、各操作について、匿名ユーザーの認証ロールに付与された権限を明示的に設定する必要があります。

ビジネス・オブジェクトに対してロールベースのセキュリティを有効にするには:

  1. 保護するビジネス・オブジェクトを選択します。
  2. ビジネス・オブジェクトの「Security」タブを開きます。
  3. 「ロールベースのセキュリティ」アイコンをクリックし、オブジェクトのセキュリティを有効にします。
    ビジネス・オブジェクトに対してロールベースのセキュリティを有効にすると、既存のユーザー・ロールと実行可能なビジネス操作のマトリックスが表示されます。 デフォルトでは、セキュリティを有効にすると、既存のすべてのユーザー・ロールがすべての操作の実行を許可されます。 新しいユーザー・ロールを作成する場合(「ユーザーのロールとアクセス権の管理」を参照)、操作を実行する権限は新しいロールに対して無効になり、手動で有効にする必要があります。
  4. 各認証およびユーザー・ロールで実行できる操作を選択します。 各操作の権限を有効または無効にできます。

    bo-security-enabled.pngの説明は以下のとおりです
    「図bo-security-enabled.pngの説明」

    問合せビルダーを使用して条件を定義することによって、ビュー、更新、および削除操作の行レベルでセキュリティをさらに定義できます。 条件を適用するユーザーを指定するには、表内のユーザー・ロールを選択します。 アクション・メニューから「ユーザーが行を作成した場合に許可」を選択して、行を作成したユーザーに操作を限定することができます。 メニューには、条件をロールまたは操作間で移動するための「切取り」および「コピー」オプションもあります。
    bo-security-condition.pngの説明は以下のとおりです
    「図bo-security-condition.pngの説明」

ビジネス・オブジェクトへの外部アクセスの許可

セキュリティを構成する際、外部クライアントがRESTエンドポイントを介してアプリケーション内のビジネス・オブジェクトにアクセスすることを許可できます。 たとえば、プロセスの完了後にプロセス自動化などの外部サービスでビジネス・オブジェクトを更新する場合、たとえば、ステータス・フィールドを"requested"から"approved"に変更します。

これを行うには、アプリケーションの設定エディタの「ビジネス・オブジェクト」タブの「カタログAPI」パネルにある、アプリケーションのビジネス・オブジェクトによって公開されているエンドポイントのカタログのAPIを取得する必要があります:



ビジュアル・アプリケーションの開発、ステージングおよびライブのバージョンには、それぞれ独自のカタログAPIがあります。 ステージング済およびライブ・アプリケーションのURLは開発目的で提供されますが、アプリケーションがステージングまたは公開されるまで結果を提供しません。

ヒント:

URLごとに、クリップボード・アイコンをクリックして、URLをクリップボードにすばやくコピーします。
カタログAPIにアクセスするには認証が必要です。 ビジネス・オブジェクトAPIへのアクセスを許可するためのセキュリティ・オプションを設定するには:
  1. ビジュアル・アプリケーションの設定エディタで「ビジネス・オブジェクト」タブを開きます。
  2. 「セキュリティ」で、認証オプションを選択します:
    • ビジネス・オブジェクトの記述エンド・ポイントへの匿名アクセスを許可
    • ビジネス・オブジェクトREST APIの基本認証を使用可能にします
Describeエンドポイントへの匿名アクセスを許可するように選択した場合、エンドポイントにアクセスする外部クライアントは、リクエストにヘッダー"Authorization: Public"を追加する必要があります。 ヘッダーは、ビジュアル・アプリケーションから送信されるリクエストに自動的に挿入されます。 外部クライアントからのリクエストのヘッダーを追加する方法を次に示します:
  • authを記述エンドポイントURLに含めます。たとえば:

    https://servicename-cloudaccount.test.oraclecloud.com/ic/builder/rt/myapp/1.0/resources/auth/data/describe?metadataMode=minimal

  • 「承認」の追加 : リクエストのパブリック・ヘッダー(たとえば、cURLコマンドラインから):

    curl -v https://servicename-cloudaccount.test.oraclecloud.com/ic/builder/rt/myapp/1.0/resources/data/describe?metadataMode=minimal -H 'Authorization: Public'

ビジネス・オブジェクトのデータへのアクセスは、認証およびユーザー・ロールに基づきます。 ビジネス・オブジェクトごとに、ロール・ベースのセキュリティを明示的に有効にし、定義された各認証およびユーザー・ロールが実行できる操作を指定する必要があります。 セキュリティ設定は、ビジネス・オブジェクトのセキュリティ・タブで構成します。 「匿名アクセスを許可」を参照してください。

ノート:

ドメイン内のアプリケーションへのアクセスを許可されているオリジンのCORS許可リストに、他のドメイン内のアプリケーションを追加する必要がある場合があります。 管理者は、管理者設定でドメインを追加できます。

また、ブラウザを介して作成されていないAPIにアクセスするリクエストの場合、CORS許可リストのドメインと一致するOriginヘッダーを含めるようにリクエストを明示的に変更する必要がある場合があります。 より高度な代替方法は、現在のCSRFトークン値とセッションcookieを含むPOSTリクエストにCSRFヘッダーを追加して、サーバーがリクエストからのトークンをセッション・キャッシュ内のトークンと一致させることです。

認証用のアクセス・トークンの取得

Visual Builderの外部からカタログまたはビジネス・オブジェクトのAPIにアクセスするには、様々な認証メソッドで使用するbearerトークンを取得できます。

設計時には、トークンを使用してすべてのアプリケーション・エンドポイントにアクセスできます。 実行時に、トークンを使用してアプリ・ビジネス・オブジェクトのデータを読み取ることができます。

IDCSで認証を処理する場合、次の認証メソッドを使用して、OAuthで認証される接続でトークンを使用できます:
  • Oracle Cloudアカウント
  • ユーザー・アサーションOAuth 2.0
  • クライアント資格証明OAuth 2.0
  • リソース所有者OAuth 2.0

Oracle Cloud Applicationsへの接続では、トークンを使用できません。

ベアラー・トークンを生成するには:

  1. ビジュアル・アプリケーション設定エディタで「ビジネス・オブジェクト」タブを開きます。
  2. セキュリティ・ペインで「アクセス・トークンの取得」をクリックします。

    アクセス・トークンが生成され、「アクセス・トークン値」フィールドに表示されます。 ここで、トークンをコピーして、アプリケーションAPIにアクセスするときに使用できます。