Azure App Servicesでデプロイ
本ページでは、Azure App Services内でKeeperオートメーターをウェブアプリとしてインスタンス化する手順を解説します。GCC HighやDoDなどの環境では、オートメーターをホストするのにこのサービスを利用いただけます。
コマンドラインを開き、オペレーティングシステムに応じて次のいずれかの方法を使用してURLエンコード形式で256ビットAESキーを生成します。
このコマンドによって生成される値を手順 6のために保存します。
Azureポータルから、検索バーで「App Services」を選択し、「+Create」から「+ Web App」を選択して新しいウェブアプリを作成します。
新しい「Resource Group」を作成します。
「Instance」に名前を付けます。
Publishに「Docker Container」を選択します。
Operating Systemに「Linux」を選択します。
サービスをホストする地域を選択します。
ご利用のLinux Planを選択するか新しいプランを作成します。最も低価格の料金プランは「Premium V3 P0V3」ですが、エンドユーザー環境にもよります。
Docker の箇所へ進みます。
Dockerでは以下のように設定します。
Options: Single Container
Image Service: Docker Hub
Access Type: Public
Image and tag: keeper/automator:latest
Monitoringの箇所へ進みます。
「Enable Application Insights」には「Yes」を選択します。
「Application Insights」を選択するか、新規で作成します。
「Review + create」の箇所へ進みます。
「Review + Create」、「Create」の順にクリックします。
数分後、WebAppが作成され、自動的に起動します。
「Go to Resource」をクリックしてコンテナ環境へ移動します。
デフォルトのドメイン値をメモしておきます。これはオートメーターサービスのセットアップと初期化の際に必要になります。
Configurationへ移動し、「New application setting」を選択します。
環境変数の設定は、以下のように左側メニューの「Environment variables」の箇所で行う場合があります。
以下のアプリケーション設定を追加します。
以下の環境変数を作成し、それぞれの値に設定します。
AUTOMATOR_CONFIG_KEY: 手順1からの値
AUTOMATOR_PORT: 8089
SSL_MODE: none
WEBSITES_PORT: 8089
[Apply]をクリックします。
[Diagnostic settings]を選択し、「+ Add diagnostic setting」をクリックします。
診断設定に名前を付けます。
[App Service Console logs]を選択します。
[App Service Application logs]を選択します。
[Send to Log Analytics workspace]を選択します。
Log Analyticsを選択するか、新規で作成します。
メイン メニューから[Logs]を選択します。[X]をクリックしてクエリウィンドウを閉じます。
以下は、Dockerデプロイメントと起動ログを見る手順となります。
AppServicePlatformLogs
以下は、アプリケーションエラーログを見る手順となります。
AppServiceConsoleLogs
メインメニューの「Monitoring」の箇所から[App Service Logs]を選択します。次に、「Application logging」の[File System]を選択し、任意の保持期間を設定します。
[Save]をクリックします。
メインメニューの「Overview」から[Log Stream]を選択し、オートメーターサービスが接続され、正しくログが記録されていることを確認します。
メイン メニューの「Monitoring」から[Health check]を選択します。次に、ヘルス チェック機能を有効にし、パスの値を「/health」に設定します。[Save]をクリックして設定を保存し、もう一度[Save] をクリックして変更を確定します。
Networkingの箇所で簡単なアクセスルールを設定したり、Azure Front Doorを構成したりできます。 メインメニューか[Networking]を選択し、[Enable with no access restrictions] (アクセス制限なしで有効にする) をクリックします。
[Access Restrictions]で、[Enabled from select virtual networks and IP addresses] (選択した仮想ネットワークとIPアドレスを有効にする) を選択し、[Unmatched rule action] (一致しないルールアクション)を[Allow]にします。[+ Add]をクリックして、受信アクセスルールを追加します。
「Add rule」 (ルールの追加) で、受信ファイアウォールルールを追加します。以下のページをご参照の上、それぞれの地域で「Connection verification only」 (接続検証のみ) となっているKeeper公開IPアドレスへのトラフィックを制限する必要があります。
[Add rule]をクリックします。
[Save]をクリックして構成を保存します。
インストール後、Keeperコマンダーを起動するか、既存のターミナルからkeeper shellと入力してセッションを開き、login
コマンドを使用してログインします。オートメーターを設定するには、Keeper管理者またはSSOノードを管理できる管理者としてログインする必要があります。
automator create
から始まる一連のコマンドを使用してオートメーターを作成します。
ノード名 (この場合は「Azure Cloud」) は、以下のように管理コンソールUIから取得します。
コマンドを実行すると、IDプロバイダからのメタデータを含むオートメーター設定が表示されます。
「URL」はまだ入力されていないことにご留意ください。これは、手順5のDefault Domainの値です。
以下のように、「automator edit」コマンドを実行します。これにより、URL が設定され、スキル (team
、team_for_user
、device
) も設定されます。
次に、キーを交換します。オートメーター公開キーで暗号化されたエンタープライズ秘密キーが オートメーターに提供されます。
新しい構成でオートメーターを初期化します。
サービスを有効にします。
この時点で構成は完了となります。
外部のヘルスチェックについては以下のURLをご使用ください。
https://<server>/health
以下は curl
コマンドの例となります。
Keeperオートメーターがデプロイされましたので、ユーザー体験をテストできます。ユーザーが SSO IDプロバイダで認証した後は、承認を求めるプロンプトが表示されなくなります。
最も簡単なテスト方法は、ブラウザでシークレットモードのウィンドウを開いてKeeperウェブボルトへアクセスし、SSOクラウドでログインすることとなります。デバイスの承認を求めるプロンプトは表示されません。
オートメーター構成の最終ステップを実行するには、Keeperコマンダーが必要です。これはどこからでも実行できます。サーバーにインストールする必要はありません。 ワークステーションまたはサーバーに、KeeperコマンダーCLI をインストールします。バイナリインストーラーを含むインストール手順については、をご参照ください。