Microsoft Entra サービス プリンシパルを使用した Azure DevOps のコード スキャン
個人用アクセス トークンの代わりに、Microsoft Entra のサービス プリンシパルとして Aikido に Azure DevOps 組織をスキャンさせます。
Microsoft Entra サービス プリンシパルを使用した Azure DevOps のコード スキャン
個人用アクセス トークン(PAT)の代わりに、あなたが所有する Microsoft Entra サービス プリンシパルとして Aikido に Azure DevOps 組織をスキャンさせることができます。トークンやシークレットは作成も保存もされません。スキャンのたびに、Aikido は Microsoft Entra に対して自身の ID を証明し、Microsoft Entra がサービス プリンシパル用の短期間有効なアクセス トークンを発行します。有効期限切れもローテーションも不要です。
ワークスペースはすでに PAT で Azure DevOps Services(dev.azure.com)に接続されている必要があり、Azure DevOps 組織は Microsoft Entra テナント(組織設定 → Microsoft Entra)に接続されている必要があります。そのテナントでアプリケーションを登録でき、Azure DevOps 組織にユーザーを追加できる必要があります。Azure DevOps Server、Aikido ブローカー、およびローカル スキャナーは引き続き PAT を使用します。
まず、次に移動します 一般設定に戻り、】【t_f3941c4b":"デバイスを接続","t_5d4f039e":"管理対象デバイスでインストールコマンドを実行する","t_831d390e":"Workspace ONE UEM コンソールで、次の場所に移動します:","t_8edbd69c":"リソース","t_72eed93f":"→","t_ba9a6e6d":"スクリプト","t_d113c2a0":"を選択し、","t_96cd98c8":"Windows","t_249d2587":"をドロップダウンから選択します。","t_43b01c7b":"","t_36c80f14":"一般","t_f6ef8739":"タブで、スクリプトに名前を付けます(例:\"Aikido Device Protection Install\")。","t_c35a5a82":"詳細","t_0acd71e4":"タブで、次を設定します:","t_be245649":"言語","t_1ae764eb":"PowerShell","t_7640c765":"実行コンテキストと権限","t_4a0c02ed":"システムコンテキスト","t_ad9531b5":"Aikido ダッシュボードからコピーした PowerShell インストールコマンドを、スクリプト本文に貼り付けます。","t_b083cb05":"割り当て","t_2f2f8b67":"タブで、対象の Windows スマートグループにスクリプトを割り当て、トリガーを次回のサンプル時に実行するよう設定します。","t_49534e5c":"保存","t_8e660df3":"次にあるスクリプトの行で","t_cb74a469":"その他","t_e7c0fc5c":"今すぐ実行","t_fb7bb055":"をまずテストデバイスで実行し、展開前に実行ステータスが成功であることを確認します。","t_2876b474":"スクリプトにはデバイス上の Intelligent Hub が必要です。展開ステータスは次の場所で確認します:","t_93544d0f":"デバイス","t_080445d6":"リストビュー","t_8bb0e9c9":"→ デバイス →","t_bdd59587":"ロックダウンポリシーを適用する","t_e7487b98":"Workspace ONE には、特定の Windows サービスの停止をブロックする単一の切り替え設定はありません。以下の 2 つの制御を組み合わせて、エージェントの改ざん耐性を高めます。","t_0fcb4797":"Workspace ONE プロファイルを 2 つ別々に作成します。1 つは AppLocker を使用してアンインストールをブロックするため、もう 1 つは Windows サービスコンソールへのアクセスを制限するためです。","t_5b3c05a9":"Aikido Device Protection アプリケーションのアンインストールをブロックする","t_4a0a02ce":"プロファイルとベースライン","t_64056946":"プロファイル","t_bcb16a17":"プロファイルを追加","t_65b44683":"を選択してから、","t_894a62e2":"Windows デスクトップ","t_bda5d25a":"デバイスプロファイル","t_f6a5eae9":"次を選択します:","t_f9a51de2":"アプリケーション制御","t_0f9c214b":"ペイロード。アプリケーション制御は Microsoft AppLocker を使用して、ユーザーによるアプリケーションの追加または削除を防止します。","t_cfd7a295":"次の内容を貼り付けます:","t_bebb586b":"aikido-applocker-deny-mdm.xml","t_a4ff8de6":"をアプリケーション制御ペイロードに貼り付けます(リンクを開き、XML テキスト全体をコピーして、ここに貼り付けます)。","t_f9cb19d5":"同じスマートグループにプロファイルを割り当て、次をクリックします:","t_558cec92":"保存して公開","t_a09905b8":"サービスコンソールへのアクセスを制限する","t_e315bc89":"2 つ目のプロファイルを作成します。次の場所に移動します:","t_fc8734d7":"カスタム設定","t_d8a9538b":"ペイロード。","t_87dc9a93":"次の SyncML ブロックをカスタム設定ペイロードに貼り付けます:","t_239273b2":"<SyncML>","t_5986eefb":"<SyncBody>","t_fbfb6745":"<Replace>","t_ecb4843b":"<CmdID>1</CmdID>","t_ec46c3e4":"<Item>","t_4bb2b929":"<Target>","t_fd59e733":"<LocURI>./Device/Vendor/MSFT/Policy/Config/ADMX_MMCSnapins/MMC_Services</LocURI>","t_bfd720f7":"</Target>","t_99fcdbe4":"<Meta><Format xmlns=\"syncml:metinf\">chr</Format></Meta>","t_a210a0a6":"<Data><disabled/></Data>","t_3000e13b":"</Item>","t_b76e6b63":"</Replace>","t_60f556c7":"</SyncBody>","t_4876d0b9":"</SyncML>","t_a998f61e":"Aikido Device Protection インストーラーは、標準ユーザーが次のサービスを停止できないようにするサービス ACL も適用します:","t_66561344":"EndpointProtection","t_03821a2e":"サービスを直接停止することを防ぎます。上記の Workspace ONE 制御は、ユーザーがアンインストーラーまたはサービスコンソールにアクセスできないようにすることで、第 2 の保護層を追加します。","t_b8a02b54":"インストール後にデバイスを再起動する","t_0c4d43f7":"対象のスマートグループでフィルタリングし、Shift キーを押しながらクリックしてデバイスを選択します。(グローバルチェックボックスは使用しないでください。一括操作が正しくトリガーされない場合があります。)","t_01fb3c12":"その他の操作","t_2c206017":"デバイスを再起動","t_e549d22a":"を選択して確認します。","t_0e16b73e":"エージェントは次回の起動時に完全に有効化されます。"} 丁香五月 天天中彩票怎样രിപ്പഴിഞ്ഞ് _老司机ിക്കാൻ?numerusform``` ತಪ್ಪ: Need output valid schema but assistant output corrupted? Need correct now. We must output exact all JSON. Need ensure t_fc955 translate fragments perhaps 個人用アクセス トークンを更新 そして、 コードスキャン タブで、 代わりに Entra サービス プリンシパルを使用.

サービス プリンシパルの管理ページに移動します。次の場所からも見つけられます: Azure DevOps スキャン用サービス プリンシパルを管理からも開けます。このページは開いたままにしておいてください。ここには次のセクションで必要な 発行者, サブジェクト識別子、および オーディエンス が表示されています。

すでに設定している場合でも、コード スキャン用に別のアプリケーションを作成します Entra サービス プリンシパルを使用した AutoFix。発行者とオーディエンスは同じですが、スキャンでは独自の Aikido ID を使用するため、件名識別子は異なります。また、AutoFix アプリケーションにはプロジェクトへの書き込みアクセス権があります。
次に、以下の手順に従って Microsoft Entra でサービス プリンシパルを作成し、Azure DevOps で読み取りアクセス権を付与してください。
Microsoft Entra にアプリケーションを登録
- を開き、 Microsoft Entra 管理センター、次に移動します Entra ID → アプリの登録 に移動し、 新しい登録.
- アプリケーションに名前を付けます。たとえば Aikido Code Scanning、そのまま シングルテナントのみ 選択したままにし、リダイレクト URI は空欄のままにして、 登録.

- On the 概要 アプリケーションのページで、次をコピーします: アプリケーション(クライアント)ID と ディレクトリ(テナント)ID。これら 2 つは後で Aikido に入力します。
- 次へ移動します: 証明書とシークレット → フェデレーション資格情報 に移動し、 資格情報を追加.

- 選択します その他の発行者 そして、Aikido のサービス プリンシパル管理ページに表示されているとおりに値を正確に入力します:
- 発行者:Aikido に表示されている発行者
- 種類:明示的なサブジェクト識別子
- 値:Aikido に表示されているサブジェクト識別子
- オーディエンス:次をクリックします 編集 そして、既定値を Aikido に表示されるオーディエンスに置き換えます。そこにはワークスペース ID が含まれているため、Aikido があなたのワークスペース向けに発行したトークンのみが受け入れられます。資格情報には、たとえば次のような名前を付けます aikido-code-scanning、次をクリックし 追加。クライアント シークレットや証明書は不要です。

Azure DevOps で読み取りアクセスを付与
- Azure DevOps で、次へ移動します 組織設定 → ユーザー に移動し、 ユーザーを追加.
- アプリケーション名(Aikido Code Scanning)、次を設定します アクセス レベル を Basic、そして Aikido がスキャンするプロジェクトに追加します。まだアプリケーションが表示されない場合は、1 分ほど待ってからもう一度検索してください。
- 次の項目の下で Azure DevOps グループ、次を選択します Project Readers。次にクリックします 追加.

既定のグループは Project Contributorsで、書き込みアクセス権が付与されます。次を選択します Project Readers サービス プリンシパルがコードを読み取るだけにするためです。
Aikido に接続
- Aikido のサービス プリンシパル管理ページに戻ります。
- 先ほどコピーした ディレクトリ(テナント)ID と アプリケーション(クライアント)ID 先ほどコピーしたものを入力し、次をクリックします サービス プリンシパルを保存。Aikido は保存前に Microsoft Entra からトークンを要求し、Azure DevOps 組織のリポジトリにアクセスできることを確認します。
これで準備完了です。以後のスキャンはサービス プリンシパルとして認証され、 コードスキャン タブには、どのアプリケーションが使用されているかが表示されます。

PAT は保存されたままですが、もう使用されません。元に戻すには、次をクリックします 削除 の コードスキャン タブ: すると、スキャンは再び保存済みの PAT を使用します。期限切れの場合は、先に更新してください。Microsoft Entra でフェデレーション資格情報を削除するか、Azure DevOps 組織からサービス プリンシパルを削除すると、サービス プリンシパルのみが無効になります。