NerdGraph APIを使用して、ユーザーを表示および管理できます。ユーザーの追加と削除、ユーザーの電子メール アドレスとユーザー タイプの編集、および他のタイプのユーザー情報の取得を行うことができます。
UI でこれを行う方法については、 ユーザー管理 UI のドキュメントを参照してください。
要件
NerdGraph を介してユーザーを管理するためのいくつかの要件:
これは、新しいユーザー モデルでユーザーを管理するためのものです。その他の権限関連の要件:
始める前に
NerdGraph を使用してユーザーを管理する前に、いくつかの重要な点を以下に示します。
- ユーザー管理の概念を十分に理解していることを確認してください
- NerdGraph エクスプローラーには、これらのリクエストで使用されるフィールドを定義するドキュメントが組み込まれています。
- New Relic アカウントへの変更を追跡できます。
以下は、ユーザー情報を照会してユーザーに変更を加える例です。
ユーザー タイプ フィールド
使用可能なユーザー タイプの値は次のとおりです。
FULL_USER_TIER
CORE_USER_TIER
BASIC_USER_TIER
ユーザー情報のクエリ
組織内のすべてのユーザー タイプを表示するクエリの例を次に示します。
{ actor { organization { userManagement { types { displayName id } } } }}
特定の認証ドメイン内のユーザーの最終アクティブ日とユーザー タイプを取得するクエリの例を次に示します。
{ actor { organization { userManagement { authenticationDomains(id: "YOUR_AUTH_DOMAIN_ID") { authenticationDomains { users { users { id name email lastActive type { displayName id } } } } } } } }}
ユーザーを作成する
基本ユーザーを作成する例を次に示します。
mutation { userManagementCreateUser( createUserOptions: { authenticationDomainId: "YOUR_AUTH_DOMAIN_ID" email: "EMAIL_OF_YOUR_USER" name: "NAME_OF_YOUR_USER" userType: BASIC_USER_TIER } ) { createdUser { authenticationDomainId email id name type { displayName id } } }}
手動でプロビジョニングされたユーザー用に設定されていない認証ドメイン内でユーザーを作成しようとした場合のエラー応答の例を次に示します。
{ "data": { "userManagementCreateUser": null }, "errors": [ { "message": "This API can only be used to create users within Authentication Domains set for manually provisioned users." } ]}
認証ドメインに既に存在するユーザーを作成しようとしたときのエラー応答の例を次に示します。
{ "data": { "userManagementCreateUser": null }, "errors": [ { "message": "User with email: <USER_EMAIL> and authentication domain: <AUTH_DOMAIN_ID> already exists." } ]}
ユーザーの更新
ユーザーのユーザー タイプをフル プラットフォーム ユーザーに更新する例を次に示します。
mutation { userManagementUpdateUser( updateUserOptions: { id: "ID_OF_YOUR_USER", userType: FULL_USER_TIER } ) { user { id type { displayName id } } }}
ユーザーのメール アドレスを更新する例を次に示します。
mutation { userManagementUpdateUser( updateUserOptions: { id: "ID_OF_YOUR_USER", email: "EMAIL_OF_YOUR_USER" } ) { user { id email } }}
グループへのユーザー追加
グループを管理し、ユーザーをグループに追加する方法については、「 NerdGraph でユーザー グループを管理する」を参照してください。
ユーザーを削除する
ユーザーを削除する例を次に示します。
mutation { userManagementDeleteUser(deleteUserOptions: { id: "ID_OF_YOUR_USER" }) { deletedUser { id } }}
SCIM でプロビジョニングされた認証ドメインでユーザーを削除しようとしたときのエラー応答の例を次に示します。
{ "data": { "userManagementDeleteuser": null }, "errors": [ { "message": "This API can only be used to delete users within Authentication Domains set for manually provisioned users." } ]}
ページ付け
デフォルトでは、API は最大 500 ユーザーまたは 10 認証ドメインのみを返します。それ以上ある場合は、カーソルを使用して次の 500 ユーザーまたは 10 認証ドメインを取得できます。この呼び出しはnextCursor
を返します。これは、カーソル入力を使用して別の呼び出しに渡すことができます。
{ actor { organization { userManagement { authenticationDomains(id: "YOUR_AUTH_DOMAIN_ID") { authenticationDomains { users(cursor: "=abcdEFGH2356X") { nextCursor totalCount users { email id lastActive name type { displayName id } } } } } } } }}
組織のすべての認証ドメインのページ分割されたリターンを開始する例を次に示します。
{ actor { organization { userManagement { authenticationDomains(cursor: "=123xyzABCx") { nextCursor totalCount authenticationDomains { id name } } } } }}
グループを管理する
グループを管理する方法、およびグループからユーザーを追加および削除する方法については、 グループの管理を参照してください。