アプリケーションを管理¶
レジストリのアプリケーションページには、すべてのアプリケーションタブで使用可能なすべてのアプリケーションが一覧表示されます。 次の表は、このページの要素と使用可能なアクションを示します。
| 要素 | 説明 | |
|---|---|---|
| 1 | アプリケーション名 | アプリケーション名。 |
| 2 | バージョン | アプリケーションまたはソースのバージョン番号を一覧表示します。 |
| 3 | 開く | クリックすると、アプリケーションまたはソースが開きます。 |
| 4 | アクションメニュー | アクションメニューから、以下の操作が可能です。
|
| 5 | 検索 | リスト内の特定のアプリケーションを検索するために使用します。 |
| 6 | 「アプリケーション」タブ | 構築されたアプリケーションまたはアプリケーションソースの表示を選択します。 |
| 7 | ドロップダウンを追加 | 追加ドロップダウンを使用して、アプリケーションをアップロードするか、または新しいアプリケーションソースを作成します。 |
アプリケーションの共有¶
共有機能は権限を管理し、ユーザー、グループ、組織、およびDataRobot以外の受信者とアプリケーションを共有できます。 この機能は、アプリケーションを作成するための専門知識のないユーザーに既存のアプリケーションの使用を許可する場合などに便利です。
注意
複数のユーザーが同じアプリケーションにアクセスできる場合、各ユーザーは、別のユーザーが行った変更や予測を表示、編集、上書きしたり、アップロードしたデータセットを見たりすることができます。 この動作は、アプリケーションの性質によって異なります。
すべてのアプリケーションタブで共有機能にアクセスするには、共有したいアプリの横にあるアクションメニュー をクリックし、共有 を選択します。
これにより共有ウィンドウが開き、ユーザーとその役割がリストされます。 エディターは、1つ以上のユーザーまたはグループ、組織全体でアプリケーションを共有できます。 さらに、共有リンクを使ってアプリケーションを外部と共有できます。
外部共有では、リンク経由でDataRobotにアクセスできないエンドユーザーとアプリケーションを共有できます。 DataRobot以外のユーザーとアプリケーションを共有するには:
- 外部共有リンクタブをクリックします。 タブ名の横にあるアイコンは、外部共有が現在有効かどうかを示します。
- 外部共有を有効にするをオンに切り替えます。 追加のフィールドが以下に表示されます。
-
アプリケーションにアクセスできるようにしたいすべてのメールドメインとアドレスを追加します。 メールアドレスとドメインは正しい形式(例:@datarobot.com)で入力する必要があります。また、ここにリストされているユーザーのみが共有リンク経由でアプリにアクセスできます。
-
アプリケーションリンクをコピーをクリックし、このリンクを前の手順で指定したすべてのユーザーに送信します。 該当のユーザーにはDataRobotから招待メールが届きます。確認にはこのリンクが必要になります。 招待メールは、ユーザーに送信されてから1時間後に有効期限が切れます。 ユーザーが認証を受け入れると、作成された認証トークンは30日後に失効します。
アプリケーションのアクセス権を取り消す
外部共有を有効にするをオフに切り替えることで、いつでも共有リンクへのすべてのアクセス権を取り消すことができます。 また、許可されたフィールドからメールドメインとアドレスを削除することで、個々のアクセス権を取り消すこともできます。
セルフマネージド環境での外部共有
セルフマネージド環境でアプリケーションを外部ユーザーと共有するには、簡易メール転送プロトコル(SMTP)サーバーを設定する必要があります。
DRApps CLIを使用して、アプリケーションをプログラムで共有することもできます。
共有ダイアログでは、次のアクションも使用できます。
- ユーザーを削除するには、削除するユーザーの役割の右側にある「X」ボタンをクリックします。
-
ユーザーの役割を再度割り当てるには、割り当てられた役割をクリックして、ドロップダウンから新しい役割を割り当てます。
アプリケーションのAPIキー¶
アプリケーションの共有に加えて、アプリケーション内からデータにアクセスして使用する機能をユーザーに付与することもできます。 アプリケーションのAPIキーは、DataRobotのパブリックAPIに対して必要なアクセス権をアプリケーションに付与します。 共有ロールは、DataRobot内のエンティティとしてアプリケーションの制御を許可し、アプリケーションのAPIキーは、ユーザーがアクセスしたときにアプリが実行できるリクエストの制御を許可します。
アプリケーションでは、2つの異なるAPIキーが使用されます。
- クリエイターAPIキー(
DATAROBOT_API_TOKEN環境変数):起動時に、このサーバー側のキーがアプリケーションコンテナに挿入されます。 その後、アプリケーションのバックエンドコードは、このキーを使用して、アプリ作成者に代わってDataRobot Public APIを呼び出します。 このキーがエンドユーザーに公開されることはありません。 - ビジターAPIキー(
x-datarobot-api-keyリクエストヘッダー):アクセスしたユーザー自身のDataRobot APIキーで、リクエストヘッダー内でプロキシによって転送されます。 アプリケーションは、このキーを使用して、アクセスしたユーザーに代わってDataRobot APIを呼び出すことができます。その際、呼び出しの範囲は当該ユーザーの権限に限定されます。
クリエイターAPIキーは、アプリケーションを初めて起動した際に自動的に作成されます。 このキーは、停止および再起動のサイクルを超えて保持され、アプリケーション自体が削除された場合にのみ削除されます。 このキーには有効期限がありません。これは、UI上の有効期限列が空欄となっていることからもわかります。
アプリ作成者は、APIのキーとツールページのCustomApp <application-id>の下で、このキーを確認できます。 そこから、作成者はキーをコピーし、DataRobot Public APIを呼び出す必要がある他のユーザーと共有できます。個人のDataRobot APIキーは必要ありません。 このキーは特定の権限レベル(閲覧者、ユーザー、または管理者)に紐付けられているため、作成者の個人キーが持つすべての権限ではなく、定義されたアクセス権のサブセットのみを付与します。
新しいアプリを構築する場合と、既存のアプリのソースを更新する場合
クリエイターAPIキーは、特定のソースバージョンではなく、アプリケーションを構築した、または最後に更新したユーザーに紐付けられています。 既存のアプリケーションのソースを(ソースの置換または新しいソースバージョンのデプロイを通じて)、当初構築したのと同じユーザーで更新した場合、既存のキーは保持されます。 別のユーザーがソースを更新した場合、キーはそのユーザーのキーに変更されます。 ただし、ソースから新しいアプリケーションを構築する場合(以前にアプリの構築で使用されたものと同じソースであっても)、DataRobotは新しいキーでアプリケーションエンティティを新たに作成します。
アプリケーションのAPIキーを設定するには、以下の手順に従います。
-
キーが付与するアクセスのスコープを編集するには、アプリケーションソースに移動し、新しいバージョンを作成します。
-
リソースセクションで、編集をクリックします。
-
リソースを更新モーダルから、必要なキースコープレベルドロップダウンを使用して、アプリケーションAPIキーのアクセスレベルを編集できます。 キーの使用時にアプリケーションがDataRobotのパブリックAPIにアクセスできるレベルを定義するロールを選択します。
各ロールタイプには、次のアクセス権があります。
役割 アクセス なし アクセス権がない。 このロールを選択すると、アプリケーションのAPIキーは提供されません。 閲覧者 読み取り専用 ユーザー 作成、読み取り、書き込み 管理 作成、読み取り、書き込み、削除 -
ロールを選択したら、更新をクリックします。 設定したソースからアプリケーションを構築すると、選択したロールで定義されたアクセス範囲を持つアプリケーションAPIキーが自動的に提供されます。
アプリケーションコードでAPIキーを使用する¶
アプリケーションコードでは、クリエイターAPIキーとビジターAPIキーにアクセスできます。 以下の例では、StreamlitとFastAPIでそれぞれを使用する方法を示します。
# Work with creator API key
endpoint = os.environ.get("DATAROBOT_ENDPOINT")
owner_api_key = os.environ.get("DATAROBOT_API_TOKEN") # creator's Application API key (scoped)
with datarobot.Client(token=owner_api_key, endpoint=endpoint) as client:
deployments = datarobot.Deployment.list() # get list of app creator's datasets
# Work with visitor API key
## Streamlit
endpoint = os.environ.get("DATAROBOT_ENDPOINT")
headers = streamlit.context.headers # request headers
visitor_api_key = headers.get('x-datarobot-api-key') # visitor's API key from request headers
with datarobot.Client(token=visitor_api_key, endpoint=endpoint) as client:
datasets = datarobot.Dataset.list() # get list of visitor's datasets
## FastAPI
_router = fastapi.APIRouter(tags=["Datasets"])
@_router.get("/datasets")
async def chat_completion(request: fastapi.Request) -> Any:
endpoint = os.environ.get("DATAROBOT_ENDPOINT")
visitor_api_key = request.headers.get('x-datarobot-api-key') # visitor API key from request headers
with datarobot.Client(token=visitor_api_key, endpoint=endpoint) as client:
datasets = datarobot.Dataset.list() # get list of visitor datasets
ユースケースへのリンク¶
アプリケーションをワークベンチのユースケースにリンクするには、アプリケーションのアクションメニュー で、 ユースケースへのリンクをクリックします。
ユースケースへのリンクモーダルで、次のいずれかのオプションを選択します。
| オプション | 説明 |
|---|---|
| ユースケースの選択 | ユースケース名ドロップダウンリストをクリックして既存のユースケースを選択してから、ユースケースへのリンクをクリックします。 |
| ユースケースの作成 | 新しいユースケース名とオプションの説明を入力し、ユースケースの作成をクリックして、ワークベンチで新しいユースケースを作成します。 |
| リンクされたユースケースの管理 | ユースケースの横にあるマイナスアイコン をクリックしてアセットとのリンクを解除してから、選択されたリンクを解除をクリックします。 |
アプリケーションの削除¶
適切な権限がある場合、アクションメニュー をクリックし、削除()をクリックすることで、アプリケーションを削除できます。











