Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Proposal: SSHDConfig Set Support for Match Blocks

Abierto
#1,342 3 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
35/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
rust
Área
devops

Línea de trabajo

Comienza en el recurso Microsoft.OpenSSH/SSHDConfig y en la ruta de validación existente de SSHD -T; después compara su tratamiento de la configuración global con las palabras clave repetibles descritas en #1340. Se considera terminado cuando los recursos con ámbito de match admitan _scope y _criteria, la creación de bloques match, actualizaciones, purgado y eliminación explícita mediante SSHDConfig.Repeatable, y la validación rechace las palabras clave no compatibles.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Issue-Enhancement Needs Triage
Summary of the new feature / enhancement

As a user, I want to be able to use the Microsoft.OpenSSH/SSHDConfig resource to configure the settings within a match block. Ideally, the experience should be similar to the way that I would configure global settings.

Proposed technical implementation details (optional)

This design aims to manage the match criteria like other repeatable keywords (see #1340) and manage the contents of the match block by treating it as its own configuration (leveraging the existing SSHD -T validation to verify that keywords are allowed within the match block).

To do so, add _scope and _criteria properties to the existing Microsoft.OpenSSH/SSHDConfig resource, so the schema would look like the following:

_scope: "global" | "match"  # default: global
_criteria:                  # required when _scope: match
  user: Vec<string>
  group: Vec<string>
  host: Vec<string>
  address: Vec<string>
  localaddress: Vec<string>
  localport: Vec<string>
  rdomain: Vec<string>
# + any keywords targeted for match block
Match Block Lifecycle
  • Creation: Implicit when _scope: "match" is used with any keyword(s)
  • Removal: Explicit via Microsoft.OpenSSH/SSHDConfig.Repeatable with _exist: false and match keyword using typed criteria
Examples:
  1. Configure an initial match block:
- type: Microsoft.OpenSSH/SSHDConfig
  properties:
    _scope: "match"
    _criteria:
      user: 
      - admin
    PasswordAuthentication: true
    AuthorizedKeysFile: "__PROGRAM_DATA__/ssh/administrators_authorized_keys"
match user admin
     PasswordAuthentication yes
     AuthorizedKeysFile __PROGRAM_DATA__/ssh/administrators_authorized_keys
  1. To update a keyword in a match block:
- type: Microsoft.OpenSSH/SSHDConfig
  properties:
    _scope: "match"
    _criteria:
      user: 
      - admin
    PasswordAuthentication: false
match user admin
     PasswordAuthentication no
     AuthorizedKeysFile __PROGRAM_DATA__/ssh/administrators_authorized_keys
  1. To update all keywords in a match block (purge):
- type: Microsoft.OpenSSH/SSHDConfig
  properties:
    _scope: "match"
    _criteria:
      user: 
      - admin
    _purge: true
    PasswordAuthentication: false
match user admin
     PasswordAuthentication no
  1. To remove the entire match block:
- type: Microsoft.OpenSSH/SSHDConfig.Repeatable
  properties:
    _exist: false
    match:
      - user: 
        - admin
Lenguaje dominante
Rust
Estrellas
536
Forks
76
Merge medio
1 d 11 h
PR fusionados (30 d)
15

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de PowerShell/DSC

Todos los issues de PowerShell/DSC

Issues similares

Más issues de Rust

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.