Docs Menu
Docs Home
/
MongoDB Atlas
/ / /

値の定義とアクセス

項目一覧

  • 値を定義する
  • 値にアクセスする

は、Atlas によって保存され、 Atlas Functionsでアクセスできる静的データの一部への名前付き参照です。 値は、関数に直接ハードコーディングする代わりとなります。

つまり、 値により、アプリのビジネス ロジックから配置固有の構成データを分離できます。

値は、次の 2 型のデータに解決される可能性があります。

  • プレーンテキスト: 定義した通常のJSONオブジェクト、配列、または string 値に解決されます。

  • シークレット: 定義したシークレット値に解決されます。

UIから、または App Services CLI を使用して、新しい 値 を定義できます。

1
  1. Triggersページに移動します。

    1. まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。

    2. まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。

    3. サイドバーで、 Services見出しの下のTriggersをクリックします。

      [ Triggers]ページが表示されます。

  2. Linked App Service: Triggersリンクをクリックします。

  3. サイドバーで、 Build見出しの下のValuesをクリックします。

  4. [Create a Value] をクリックします。

2

一意のValue Nameを入力します。 この名前は、 関数 内の値を参照する方法です。

注意

値名の制限

値名は64文字を超えることはできず、ASCII 文字、数字、アンダースコア、ハイフンのみを含めることができます。 最初の文字は文字または数字である必要があります。

3
  1. Valueタイプを選択します。

  2. プレーンテキスト値または Secret 値へのリンクのいずれかを定義します。

    • プレーンテキスト値を定義するには、 Custom Contentと を入力ボックスにプレーンテキスト値を入力します。

    • 既存のシークレットの値にリンクするには、 Link to Secretを選択し、ドロップダウンからシークレットを選択します。

    • 新しい Secret の値にリンクするには、 Link to Secretを選択し、表示される入力ボックスに新しい Secret の名前と新しい Secret の値を入力します。

    シークレットの作成の詳細については、「 シークレットの作成 」を参照してください。

4

新しい値を指定して定義したら、[ Save ] をクリックします。

保存後は、 関数 で値にすぐにアクセスできます。

1

MongoDB Atlas Administration APIキーを使用して、App Services CLI にログします。

appservices login --api-key="<API KEY>" --private-api-key="<PRIVATE KEY>"
2

次のコマンドを実行して、構成ファイルのローカルコピーを取得します。

appservices pull --remote=<App ID>

デフォルトでは 、コマンドは現在の 作業ディレクトリにファイルをプルします。 任意の --localフラグを使用してディレクトリパスを指定できます。

3

新しい値のJSON構成ファイルを、ローカルアプリケーションのvaluesサブディレクトリに追加します。

touch values/<ValueName>.json

各値は独自のJSONファイルで定義されます。 例、 myValueという名前の値はファイル/values/myValue.jsonに定義されます。

構成ファイルは、次の一般的な形式でなければなりません。

values/<ValueName>.json
{
"name": "<Value Name>",
"from_secret": <boolean>,
"value": <Stored JSON Value|Secret Name>
}
フィールド
説明
name
値の一意の名前。 この名前は、 関数 とルールで値を参照する方法です。
from_secret
デフォルト: falsetrueの場合、値はプレーンテキストのJSON値ではなくシークレットを公開します。
value

値が参照したときに公開される保存済みデータ:

  • from_secretfalseの場合、 valueは標準の JSON string、配列、またはオブジェクトになります。

  • from_secrettrueの場合、 valueは 値が公開する シークレット の名前を含む string です。

4

次のコマンドを実行して、変更を配置します。

appservices push

context.valuesモジュールを使用して、Atlas Function から値の保存されたデータにアクセスできます。

context.values.get("<Value Name>")

例、次の関数は、アクティブなユーザーの ID がプレーンテキスト配列の値adminUsersに含まれている場合、 trueを返します。

値を使用する関数の例
exports = function() {
const adminUsers = context.values.get("adminUsers");
const isAdminUser = adminUsers.indexOf(context.user.id) > 0;
return isAdminUser;
}

戻る

MongoDB API リファレンス