外部ユーザー管理API

この機能は、Incredibuild のEnterprise Plan でのみ利用可能です。

外部ユーザー管理APIを使って新しいユーザーを作成できます。この作業にはAPI キー 、Enterpriseライセンスが必要です。

リクエストエンドポイント

POST https://{IB Coordinator IP Address/Hostname}:{Web Access Port}/api/autheticationSystem?version=1.5.0

コマンドの例:

https://coordinatorPC:8000/api/autheticationSystem?version=1.5.0

APiリクエストには、client-api-keyというキーと、APIキーの値を文字列として含める必要があります。すべてのAPIは大文字と小文字を区別します。

リクエスト形式 – Active Directoryの設定または更新

以下のような構造のJSONドキュメントをリクエスト本文の一部として、PUTリクエストを送信します:

コピー
{
  "externalSystem": "LDAP", "configuration" : {
    "protocol": "LDAPS",
    "url": "ldaps://domain-controller-ip:636",
    "rootCertificate" : "BLAH",
    "bindDN": "CN=IBAdminUser,CN=Users,DC=example,DC=local",
    "bindPassword": "HasambaHasambaHasamba",
    "groupDN": "DC=example,DC=local",
    "userDN": "CN=Users,DC=example,DC=local",
    "userIdAttribute": "uid",
    "groupRoles": [ 
        {"group" : "Administrators", 
         "role" : " GridAdmin "} ]
  }
}
フィールド 説明 必須
externalSystem

使用するシステムのタイプ

常にLDAP

Yes
プロトコル

LDAPプロトコル

LDAPまたはLDAPSのいずれか

Yes
url

ドメインコントローラーのURL

ldaps://domain-controller-ip:portまたは

ldap://domain-controller-ip:port

Yes
bindDN

LDAPに接続する際に使用するユーザーのDN

例:CN=IBAdminUser,CN=Users,DC=example,DC=local

Yes
bindPassword bindDNにおけるユーザー参照用のパスワード。 Yes

groupDN

グループが定義されているフォルダのDN

例:DC=example,DC=local

Yes

userDN

ユーザーが定義されているフォルダのDN

例:CN=Users,DC=example,DC=local

Yes

rootCertificate

LDAPS接続用の証明書

PEM形式のルート証明書(改行には\nを使用)。例:

コピー
-- -- -BEGIN CERTIFICATE-- -- 
\nMIIDfTCCAmWgAwIBAgIQalmxCePgZIxPOujk11pN2TANBgk
qhkiG9w0BAQsFADBRMRUwEwYKCZImiZPyLGQBGRYFbG9jYWw
FjAUBgoJkiaJk/+mUMv0FEsTONai4/zL42hzTJlfwLItbv3ui
MWpYgIoQXx5dgJyp4eNDDD9t23XKbFV8qzC2WNjGZbkwhh3/6
WKkMl6Gpi+Aep2TQO0AIn745zNHI6kaKG8RmLDq+9I2K9fuQ
d/cbIe\n-----END CERTIFICATE-----

Yes(プロトコルがLDAPの場合)

userIdAttribute

ユーザーのUIDが保存される属性。デフォルトはuid

例:uid

No

group

Incredibuildでユーザーにロールが与えられるグループの名前。

例:Administrators

No

 

role

上記のグループのユーザーに割り当てられたロール

GridAdminGroupManager、またはViewer

No

注意:
  • プロトコル、url、bindDNは、一度設定すると変更できません。代わりに、外部ユーザー管理システムから切断し、再度セットアップします。

リクエスト形式 – Entra ID(Azure Active Directory)の設定または更新

以下のような構造のJSONドキュメントをリクエスト本文の一部として、PUTリクエストを送信します:

コピー
{   "externalSystem" : "AZUREAD",
    "configuration": {
        "tenantId": "1234",
        "azureAdApplicationid": "5678",
        "clientSecret": "BLAH"},
        "groupRoles": [ 
            {"group": "Administrators", 
             "role" : " GridAdmin "} 
        ]
    }
}
フィールド 説明 必須
externalSystem

使用するシステムのタイプ

常にAZUREAD

Yes
tenantId

AzureからのテナントID

Yes
azureAdApplicationid

AzureからのapplicationID

Yes
clientSecret

Incredibuildでユーザーにロールが与えられるグループの名前。

例:Administrators

Yes

role

上記のグループのユーザーに割り当てられたロール

GridAdminGroupManager、またはViewer

Yes

リクエスト形式 – 外部ユーザー管理システムからの切断

以下のような構造のJSONドキュメントをリクエスト本文の一部として、PUTリクエストを送信します:

{ "externalSystem": "NONE" }

リクエスト形式 – 現在の外部ユーザー管理システムの表示

本文なしでGETリクエストを送信します。応答は、現在設定されているシステムに応じて上記の形式になります。

注意:
  • パスワードとシークレットはGET応答に表示されません。