0

現在、OKTA プラットフォームと API を使用するプロジェクトに取り組んでいますが、クエリがいくつかあります。

  1. List Apps Assigned to UserまたはList Apps Assigned to Userの GET 呼び出しを行うと、現在のユーザー セッションに関連するアプリではなく、OKTA インスタンスに追加されたすべてのアプリの応答を取得しています。私が見落としている旗はありますか?

  2. アプリケーションのリストの結果配列を取得すると、Office 365 のすべての「サブアプリ」(メール、カレンダーなど) が子配列として親アプリケーションに返されます。ただし、子配列内のこれらのサブアプリは、他の標準アプリケーションが行うイメージ リンクで返されません。それらをハードコーディングすることはできましたが、理想的ではありません。これについても何かアドバイスはありますか?

ありがとう!

4

1 に答える 1

0

ユーザーに割り当てられたリスト アプリを使用するには、2 つの方法があります。1 つ目は、適切な権限を持つ API トークンを必要とするサーバー側の呼び出しです。2 番目は、ユーザーが Okta とのアクティブなセッションを確立した後のブラウザー呼び出しです。2 番目の呼び出しを行うには、ユーザー名が必要です。

  1. GET /api/v1/apps?filter=user.id+eq+"{{userId}}"-> サーバー側から

  2. GET /api/v1/users/{{username}}/appLinks →ブラウザ・JavaScriptから

2 番目の呼び出しをテストするには、ログイン セッションで URL をブラウザーに貼り付けて、目的の結果が得られることを確認します。AJAX 呼び出しを行う場合は、送信withCredentials: trueする必要があります。xhrFields例えば:

$.ajax({
  type: "GET",
  url: "https://example.okta.com/api/v1/users/{{username}}/appLink",
  headers: {
    'Accept': 'application/json',
    'Content-Type': 'application/json'
  },
  xhrFields: {
    withCredentials: true
  },
  cache: false,
  success: function(data, status)
  {

  },

  error: function(data, status)
  {

  }
});

どちらの呼び出しでも、ユーザーに割り当てられたアプリが返されます。

于 2016-12-01T19:43:19.670 に答える