$30 off During Our Annual Pro Sale. View Details »

AWS Verified Access で VPN-less な世界を体験してみた / The world of VPN-less with AWS Verified Access

hayao_k
December 15, 2022

AWS Verified Access で VPN-less な世界を体験してみた / The world of VPN-less with AWS Verified Access

color is クラウド LT 大会vol.2「大型アップデート祭り」の登壇資料です。

hayao_k

December 15, 2022
Tweet

More Decks by hayao_k

Other Decks in Technology

Transcript


  1. VPN-less な世界を体験してみた
    color is クラウドLT大会 vol.2
    December 15th, 2022
    小杉 隼人 | Hayato Kosugi

    View Slide

  2. Me
    • Cloud Engineer @ セゾン情報システムズ
    • AWS Community Builder (Fall of 2020)
    • 2019 - 2022 APN AWS Top Engineers
    • 11x AWS Certified
    2
    @hayaok3 @hayao_k

    View Slide

  3. • AWS Verified Access とは
    • AWS Verified Access のしくみ
    • 体験してみた
    3

    View Slide

  4. • AWS re:Invent 2022 で発表された新サービス
    • VPN を使用せずに企業アプリケーションにセキュアなアクセスを提供する
    • AWS Zero Trust security principlesに基づいて設計されている
    • 10 リージョンで Preview 中だが、東京リージョンは未対応
    4
    AWS (AVA)

    View Slide

  5. • データへのアクセスが NW の場所だけに基づいて行われるべきではない
    という考えを中心としたセキュリティモデル
    • 一般的には Identity を中心としたコントロールに置き換えられる
    • NW の場所への依存度は低下するが、NW 制御が不要という意味ではない
    What is ?
    5

    View Slide

  6. How Works
    6
    Client
    AWS Verified Access
    VPC
    Private subnet
    Corp Application
    AVA Instance
    AVA Group
    AVA Trust Providers
    Device Trust Provider
    Jamf (macOS)
    CloudStrike (Windows10/11)
    User Trust Provider
    AWS IAM Identity Center
    3rd Party IdP (OIDC)
    Policy
    Endpoint
    1. クライアントがリクエストを送信
    2. 信頼プロバイダーからデータを取得
    ID, デバイスの場所, ステータスなど
    3. グループ/エンドポイントに設定された
    ポリシーを評価
    4. セキュリティ要件を満たしている場合に
    アプリケーションへのアクセスを許可

    View Slide

  7. • アクセスポリシーを AVA で統一管理できる
    • リクエスト毎 にアクセス許可の判定を行う
    • ID, デバイスの場所, ステータスなどに基づき評価
    • すべてのアクセスをログに記録可能
    • S3/CloudWatch/Kinesis Firehose
    • Policy は Cedar で記述
    • AWS が開発したポリシー言語
    • Amazon Verified Permissions でも Cedar を採用
    How Works
    7
    Client
    AWS Verified Access
    VPC
    Private subnet
    Corp Application
    AVA Instance
    AVA Group
    AVA Trust Providers
    Device Trust Provider
    Jamf (macOS)
    CloudStrike (Windows10/11)
    User Trust Provider
    AWS IAM Identity Center
    3rd Party IdP (OIDC)
    Policy
    Endpoint

    View Slide

  8. Syntax
    8
    permit
    ( principal,
    action,
    Resource )
    when {
    context.device.location == “JP” &&
    context.authn == “MFA”
    };
    effect
    scope
    condition
    clause
    • effect
    • permit (許可) or forbid (拒否) を指定
    • scope
    • effect が適用される範囲を指定
    • AVA では使用されないため、常に未定義
    • condition clause
    • effect が適用される条件句を指定
    • ID と デバイスのデータをもとにアクセスを絞る
    // ドメインが example.com かつデバイスリスクが低とレポートされた場合にアクセスを許可
    permit(principal, action, resource) when {
    context.identity.email like “*@example.com” &&
    context.devise.risk == “Low”
    };
    // 管理者以外の POST リクエストを拒否
    forbid(principal, action, resource) when {
    context.http_request.http_method == "POST“ &&
    !(context.identity.roles.contains("Administrator"))
    };

    View Slide

  9. たぶん時間がない
    9

    View Slide

  10. 10
    Client
    AWS Verified Access
    VPC
    Private subnet
    AVA Instance
    AVA Group
    AVA Trust Providers
    Policy
    Endpoint Auth0
    // Policy
    permit(principal, action, resource) when {
    context.Auth0.email like “*@example.com”
    };
    実際には Endpoint に対するACM 証明書の設定や
    Route 53 への CNAME レコード設定も必要
    @example.com
    @gmail.com

    View Slide

  11. • AWS Verified Access の何が嬉しいのか
    • VPN を使用せずに企業アプリケーションにセキュアなアクセスを提供
    • ID やデバイス情報をもとにした柔軟なアクセス制御
    • アクセスポリシーの統一管理
    • 従来は VPN/Identity/Device の管理がバラバラに行われ煩雑だった
    • これからに期待するところ
    • 東京リージョンへの対応
    • 料金は1アプリあたり $200/月~ なのでそこそこする印象
    11

    View Slide

  12. Go world!
    12

    View Slide

  13. • Verified Access Instances
    • Trust Provider と Group を関連付けるためのリソース
    • Verified Access Endpoints
    • 接続先のアプリケーション (ALB/NLB/ENI) をアタッチ
    • Verified Access Groups
    • 同様のセキュリティ要件を持つエンドポイントをグループ化
    • Access Policies
    • アプリケーションへのアクセス可否を決定するためのルール
    • グループおよびエンドポイントに対し設定可能
    • Trust Providers
    • ユーザー ID またはデバイスのセキュリティ状態を管理するサービス
    How Works
    13
    Client
    AWS Verified Access
    VPC
    Private subnet
    Corp Application
    AVA Instance
    AVA Group
    AVA Trust Providers
    Device Trust Provider
    Jamf (macOS)
    CloudStrike (Windows10/11)
    User Trust Provider
    AWS IAM Identity Center
    3rd Party IdP (OIDC)
    Policy
    Endpoint

    View Slide

  14. • アプリが AVA に関連付けられた時間とデータ処理量に対する課金
    • 参考: バージニア北部
    • Per-app hours: $0.27/hr
    • Per-GB data processing: $0.02/GB
    • 1 つのアプリケーションが 100 GB 処理した場合
    • 730 * 0.27 + 100 * 0.02 = $199.1/月
    14

    View Slide

  15. • AWS のゼロトラスト
    • https://aws.amazon.com/jp/security/zero-trust/
    • Introducing AWS Verified Access: Secure connections to your apps (NET214)
    • https://www.youtube.com/watch?v=Kkxn-bAIlnI
    • Leaping ahead: The power of cloud network innovation (NET211-L)
    • https://www.youtube.com/watch?v=aHClvCQfuPs
    15

    View Slide