すべてのプロダクト
Search
ドキュメントセンター

:セルフマネージド Web アプリケーションに Managed Service for OpenTelemetry コンソールページを埋め込む

最終更新日:Dec 30, 2024

セルフマネージド Web アプリケーションに Managed Service for OpenTelemetry コンソールページを埋め込むことができます。このようにして、システムを切り替えたり、Managed Service for OpenTelemetry コンソールにログオンしたりすることなく、アプリケーションからコンソールページを表示できます。

概要

期待される結果

このトピックに基づいてセルフマネージド Web アプリケーションに Managed Service for OpenTelemetry コンソールページを埋め込んだ後、次の操作を実行できます。

  • システムにログオンし、埋め込まれたコンソールページでアプリケーション、アプリケーションの詳細、トレースに関する情報を表示できます。

  • Managed Service for OpenTelemetry コンソールページの上部ナビゲーションバーと左側ナビゲーションペインを非表示にできます。

  • Resource Access Management (RAM) を使用して、Managed Service for OpenTelemetry コンソールページの権限を管理できます。たとえば、フル権限を読み取り専用権限に変更できます。

アクセスの流れ

次の図は、Managed Service for OpenTelemetry コンソールページへのアクセス方法を示しています。

ステップ 1: RAM ユーザーを作成し、RAM ユーザーに権限を付与する

Alibaba Cloud アカウントを使用して RAM ユーザーを作成し、Security Token Service (STS) の AssumeRole 操作を呼び出す権限を RAM ユーザーに付与します。

  1. 管理者権限を持つ Alibaba Cloud アカウントまたは RAM ユーザーを使用して、RAM コンソール にログオンします。

  2. 左側のナビゲーションペインで、ID > ユーザー を選択します。

  3. ユーザー ページで、ユーザーの作成 をクリックします。image

  4. ユーザーの作成 ページで、ログオン名表示名ユーザーアカウント情報 セクションの アクセスモードOpenapiアクセスOK パラメータと パラメータを設定します。 セクションで、 を選択し、 をクリックします。

    Create RAM User

    重要

    RAM は RAM ユーザーの AccessKey ペアを自動的に生成します。これにより、RAM ユーザーは Managed Service for OpenTelemetry コンソールにアクセスするための操作を呼び出すことができます。セキュリティ上の理由から、RAM コンソールで AccessKey シークレットを表示またはダウンロードできるのは 1 回だけです。そのため、AccessKey ペアを作成する際は、AccessKey シークレットを厳重に管理する必要があります。

  5. ユーザー ページで、必要な RAM ユーザーを見つけ、アクセス許可を追加アクション 列の をクリックします。

    image

    複数の RAM ユーザーを選択し、ページの下部にある 権限の追加 をクリックして、一度に複数の RAM ユーザーに権限を付与することもできます。

  6. ポリシーの選択 セクションの アクセス許可の追加 パネルで、検索ボックスにキーワードを入力して AliyunSTSAssumeRoleAccess ポリシーを検索し、ポリシーをクリックして右側の 選択済み リストに追加し、OK をクリックします。

    Add Permission for User

  7. 閉じる をクリックします。

ステップ 2: RAM ロールを作成し、RAM ロールに権限を付与する

RAM ロールを作成し、Managed Service for OpenTelemetry コンソールにアクセスする権限を RAM ロールに付与します。これにより、作成した RAM ユーザーはこの RAM ロールを引き受けて Managed Service for OpenTelemetry コンソールにアクセスできます。

  1. 管理者権限を持つ RAM ユーザーとして RAM コンソール にログオンします。

  2. 左側のナビゲーションペインで、ID > ロール を選択します。

  3. ロール ページで、ロールの作成 をクリックします。image

  4. ロールの作成 ページで、次の操作を実行します。

    1. ロールタイプの選択 ステップで、信頼できるエンティティの選択 パラメータを Alibaba Cloud アカウント に設定し、次へ をクリックします。

    2. ロールの設定 ステップで、RAM ロールの名前 パラメータを設定し、OK をクリックします。

    3. 完了 ステップで、RAM ロールに権限を追加 をクリックします。

  5. 表示されるページの [権限] タブで、[権限の付与] をクリックします。[ポリシーの選択] セクションの [権限の付与] パネルで、検索ボックスにキーワードを入力してRAMロールにアタッチするポリシーを検索し、ポリシーをクリックして右側の [選択済み] リストに追加し、[OK] をクリックします。

    Add Permission for Role

    • RAM ロールに Managed Service for OpenTelemetry のフル権限を付与するには、AliyunTracingAnalysisFullAccess ポリシーを選択します。

    • RAM ロールに Managed Service for OpenTelemetry の読み取り専用権限を付与するには、AliyunTracingAnalysisReadOnlyAccess ポリシーを選択します。

  6. 権限の付与 パネルで、承認結果を確認し、完了 をクリックします。

ステップ 3: 一時的な AccessKey ペアと STS トークンを取得する

セルフマネージド Web アプリケーションにログオンし、Web アプリケーションサーバーから STS の AssumeRole 操作を呼び出して、一時的な AccessKey ペアと STS トークンを取得します。次のいずれかの方法を使用して、この操作を呼び出すことができます。

サンプルコード の次のパラメータの値を実際の値に置き換える必要があります。

String akId = "<accessKeyId>"; // AccessKey ID
String ak = "<accessKeySecret>"; // AccessKey シークレット
String roleArn = "<roleArn>"; // ロールの ARN

<accessKeyId> 変数と <accessKeySecret> 変数を、ステップ 1 で作成した RAM ユーザーの AccessKey ID と AccessKey シークレットに置き換えます。詳細については、AccessKey ペアの作成 を参照してください。

Example AccessKey

<roleArn> 変数を、作成した RAM ロールの Alibaba Cloud Resource Name (ARN) に置き換えます。ARN は、RAM コンソールの RAM ロールの詳細ページで取得できます。

Example ARN

ステップ 4: ログオン トークンを取得する

STS の AssumeRole 操作を呼び出して一時的な AccessKey ペアと STS トークンを取得した後、GetSigninToken 操作を呼び出してログオン トークンを取得します。

重要

一時的な STS トークンには特殊文字が含まれている場合があります。トークンを使用する前に、URL エンコード方式を使用して特殊文字をエンコードする必要があります。

リクエスト例:

http://signin4service.aliyun.com/federation?Action=GetSigninToken
    &AccessKeyId=<STS によって返される一時的な AccessKey ID>
    &AccessKeySecret=<STS によって返される一時的な AccessKey シークレット>
    &SecurityToken=<STS によって返されるトークン>
説明

セルフマネージド Web アプリケーションがパートナーのクラウドプラットフォームにデプロイされている場合は、&TicketType=mini パラメータを追加する必要があります。

ステップ 5: ログオン不要な URL を生成する

取得したログオン トークンと、埋め込む Managed Service for OpenTelemetry コンソールページの URL を使用して、ログオン不要な URL を生成します。この URL を使用すると、セルフマネージド Web アプリケーションからコンソールページにアクセスできます。これにより、Managed Service for OpenTelemetry コンソールにログオンする必要がなくなります。

説明

一時トークンは 3 時間有効です。セルフマネージド Web アプリケーションで URL を設定して、リクエストごとに新しいログオン トークンを生成し、コンソールページに 302 リダイレクトを実行することをお勧めします。

  1. Managed Service for OpenTelemetry コンソールで、埋め込むコンソールページの URL を取得します。たとえば、次の URL は、中国 (杭州) リージョンの アプリケーション ページの URL です。

    https://tracing-analysis.console.aliyun.com/?hideTopbar=true&hideSidebar=true#/appList/cn-hangzhou
    説明

    Managed Service for OpenTelemetry コンソールページの上部ナビゲーションバーと左側ナビゲーションペインを非表示にするには、hideTopbar パラメータと hideSidebar パラメータを true に設定します。

  2. 取得したログオン トークンと Managed Service for OpenTelemetry コンソールページの URL を使用して、ページのログオン不要な URL を生成します。リクエスト例:

    http://signin.aliyun.com/federation?Action=Login
        &LoginUrl=<ログオンに失敗し、セルフマネージド Web サイトで 302 HTTP ステータスコードが返されたときにリダイレクトされる URL>
        &Destination=<Managed Service for OpenTelemetry コンソールページの URL>
        &SigninToken=<取得したログオン トークン>

サンプルコード

このトピックで使用されているサンプルコードは、Java 用 SDK に基づいています。サンプルコードは、Managed Service for OpenTelemetry コンソールの [アプリケーション] ページをセルフマネージド Web アプリケーションに埋め込むために使用されます。

ダウンロードリンク: サンプルコード