Grid eXchange Fabric (GXF): formerly known as the Open Smart Grid Platform

Проекты, которые следуют приведенным ниже лучшим практикам, могут добровольно и самостоятельно оценить себя и продемонстрировать, что они получили значок Open Source Security Foundation (OpenSSF).

Если это ваш проект, пожалуйста, покажите свой значок на странице проекта! Статус значка выглядит следующим образом: Уровень значка для проекта 4104 - silver Вот как вставить его:

Это критерии уровня Gold. Вы также можете просмотреть критерии уровня Passing или Silver.

        

 Основы 4/5

  • Идентификация

    Grid eXchange Fabric (GXF) allows to monitor and control hardware in the public space. It's an open, generic, scalable and independent IoT platform!

  • Предварительные требования


    Проект ОБЯЗАН получить серебряный значок. [achieve_silver]

  • Надзор за проектом


    Проект ОБЯЗАН иметь «коэффициент автобуса» 2 или более. (Требуется URL) [bus_factor]

    The project has a governance structure in place with each key role filled in by at least two people. For more information see: https://documentation.gxf.lfenergy.org/opensourcecommunity/governance.html & https://wiki.lfenergy.org/display/HOME/GXF+Community+Council



    Проект ОБЯЗАН иметь как минимум двух несвязанных значительных соавторов. (Требуется URL) [contributors_unassociated]

    Currently there are several different projects that contribute to the GXF code base. These projects are:

    • FlexOVL (Alliander)
    • Smart Meter Head-End (Alliander)
    • Low Voltage Measurements (Alliander)
    • Cathodic Protection (Alliander) - in development

  • Другое


    Проект ОБЯЗАН указывать лицензию в каждом исходном файле. Это МОЖЕТ быть сделано путем включения в комментарий рядом с началом каждого файла следующей строки: SPDX-License-Identifier: [SPDX-выражение лицензии для проекта]. [license_per_file]

    License statement is added to all source code files and all other files as well.


  • Публичное хранилище исходного кода с поддержкой версий


    Хранилище проектного исходного кода ОБЯЗАНО использовать типовое ПО для распределенного управления версиями (например, git или mercurial). [repo_distributed]

    Source code is available on github (https://github.com/OSGP)



    Проект ОБЯЗАН четко обозначать небольшие задачи, которые могут быть выполнены новыми или случайными участниками. (Требуется URL) [small_tasks]

    Not public available, but part of our backlog on a closed Jira account.



    Проект ОБЯЗАН требовать двухфакторной аутентификации (ДФА) от разработчиков для изменения центрального хранилища или доступа к конфиденциальным данным (например, приватным отчетам об уязвимостях). Этот механизм ДФА МОЖЕТ использовать механизмы без криптографической защиты, такие как SMS, хотя это не рекомендуется. [require_2FA]

    2FA is required for all github repo users - Not yet effectuated



    При двухфакторной аутентификации (ДФА) проекту СЛЕДУЕТ использовать криптографические механизмы для предотвращения имперсонации. ДФА на основе службы коротких сообщений (SMS) сама по себе НЕ соответствует этому критерию, поскольку короткие сообщения не шифруются. [secure_2FA]

    2FA is required for all github repo users - Not yet effectuated SMS is still available


  • Стандарты кодирования


    Проект ОБЯЗАН документировать свои требования по ревью кода, в том числе, как проводится ревью кода, что необходимо проверять и что необходимо для приемлемости кода. (Требуется URL) [code_review_standards]

    The coding standards are part of our open source documentation, see https://grid-exchange-fabric.gitbook.io/gxf/opensourcecommunity/toolsguidelinesci



    Проект ОБЯЗАН проводить проверку не менее 50% всех предлагаемых модификаций до их попадания в выпуск человеком, отличным от автора, для определения того, являются ли эти модификации целесообразными и не содержат ли известных проблем, препятствующих включению. [two_person_review]

    In our standard Way of Work all code is being reviewed by another developer than the one that created the code. four-eyes principle is always in place.


  • Рабочая система сборки


    Проект ОБЯЗАН обеспечивать воспроизводимую сборку. Если сборка не требуется (например, в случае языков сценариев, где исходный код используется непосредственно вместо компиляции), выберите «N/A». (Требуется URL) [build_reproducible]

    The build is available for Alliander employees only. The current continuous build environment (https://jenkins.fdp.osgp.cloud/view/Nightly%20Build/) is currently closed for the rest of the world. We are currently using Jenkins as our build environment, but we are moving to Github Packages and than it will become available to the rest of the community as well.


  • Набор автотестов


    Набор тестов ОБЯЗАН запускаться стандартным способом для этого языка. (Требуется URL) [test_invocation]

    The test suit uses unit test to test the components and uses integration tests build with Cucumber to test end-to-end functionality as well. Build results are currently not publically available: https://jenkins.fdp.osgp.cloud/view/Nightly%20Build/



    Проект ОБЯЗАН реализовать непрерывную интеграцию, при которой новый или измененный код интегрируется в центральное хранилище кода, и на получившейся базе кода запускаются автоматические тесты. (Требуется URL) [test_continuous_integration]

    We have a CICD build environment: https://jenkins.fdp.osgp.cloud/view/Nightly%20Build/ and all source code is also checked by SonarCloud: https://sonarcloud.io/project/overview?id=OSGP_open-smart-grid-platform



    Проект ОБЯЗАН иметь автоматические тестовые пакеты на СПО, которые обеспечивают покрытие не менее 90% инструкций кода, если есть хотя бы один инструмент на СПО, который может измерять этот критерий на выбранном языке. [test_statement_coverage90]

    Tool is available. No 90% coverage, but lower amount.



    Проект ОБЯЗАН иметь автоматические тестовые пакеты на СПО, которые обеспечивают покрытие не менее 80% веток кода, если есть хотя бы один инструмент на СПО, который может измерять этот критерий на выбранном языке. [test_branch_coverage80]

    Tool is available. No 80% coverage, but lower amount.


  • Основы правильного использования криптографии

    Обратите внимание, что некоторое ПО не нуждается в использовании криптографических механизмов.

    В ПО, создаваемом проектом, НЕОБХОДИМО поддерживать безопасные протоколы для всех сетевых коммуникаций, такие как SSHv2 или новее, TLS1.2 или новее (HTTPS), IPsec, SFTP и SNMPv3. По умолчанию НЕОБХОДИМО отключать небезопасные протоколы, такие как FTP, HTTP, telnet, SSLv3 или более ранние версии, и SSHv1, и разрешать их только в том случае, если пользователь явным образом это задаёт. Если программное обеспечение, созданное проектом, не поддерживает сетевые коммуникации, выберите «неприменимо» (N/A). [crypto_used_network]

    The project uses TLS1.2 or later.



    Если ПО, создаваемое проектом, поддерживает или использует TLS, НЕОБХОДИМО поддерживать как минимум версию TLS 1.2. Примечание: предшественник TLS называется SSL. Если программное обеспечение не использует TLS, выберите «неприменимо» (N/A). [crypto_tls12]

    The project uses TLS1.2 or later.


  • Доставка, защищенная от атак посредника (MITM)


    Веб-сайт проекта, репозиторий (если он доступен через Интернет) и сайт загрузки (если он существует отдельно) ОБЯЗАНЫ использовать упрочняющие безопасность (hardening) заголовки с неразрешающими значениями. (Требуется URL) [hardened_site]

    All websites used by GXF are github (https://github.com/OSGP), gitbook (https://grid-exchange-fabric.gitbook.io/gxf/) en LF Energy (https://lfenergy.org/projects/gxf/). These websites seem to meet this requirement.


  • Другие вопросы безопасности


    Проект ОБЯЗАН иметь проверку безопасности за последние 5 лет. При проверке НЕОБХОДИМО учитывать требования и границы безопасности. [security_review]

    Around 5 years ago the GXF software has been auditted by the Software Improvement Group (SIG) and currently Alliander is implementing the toolset of SIG in our CI/CD environment to execute the SIG tooling on a structural way.



    В ПО, создаваемом проектом, НЕОБХОДИМО использовать механизмы упрочнения безопасности (hardening), чтобы дефекты программного обеспечения с меньшей вероятностью приводили к уязвимостям в безопасности. (Требуется URL) [hardening]

    Vulnerability checks are part of the build process to validate vulnerabilities in used libraries. Code is being validated by SonarCloud. The used container images are also validated for all kinds of vulnerabilities. As we don't deploy VM's


  • Динамический анализ кода


    Проект ОБЯЗАН применять хотя бы один инструмент динамического анализа к любой предлагаемой основной версии ПО, создаваемого проектом до её выпуска. [dynamic_analysis]

    Dynamic code analysis is not implemented.



    Проекту СЛЕДУЕТ включать достаточно много утверждений (assertions) времени выполнения в создаваемом им ПО и проверять эти утверждения во время динамического анализа. [dynamic_analysis_enable_assertions]

    Dynamic code analysis is not implemented.



Эти данные доступны под лицензией Creative Commons Attribution версии 3.0 или более поздней (CC-BY-3.0+). Все могут свободно делиться и адаптировать эти данные, но должны указывать соответствующие ссылки. При распространении, пожалуйста, указывайте "Jonas van den Bogaard and the OpenSSF Best Practices badge contributors".

Владелец анкеты на значок проекта: Jonas van den Bogaard.
2020-06-29 15:28:15 UTC, последнее изменение сделано 2023-09-29 14:20:48 UTC. Последний раз условия для получения значка были выполнены 2020-12-16 15:39:31 UTC.

Назад