summaryrefslogtreecommitdiffstats
path: root/core/command
Commit message (Collapse)AuthorAgeFilesLines
* Rename files to be PSR-4 compliantLukas Reschke2016-04-0653-5733/+0
|
* Fix verbose output of upgrade command - not progressbar in this case and the ↵Thomas Müller2016-04-041-16/+22
| | | | schema migration test has one progressbar now for all tables - before we had one progressbar for each table
* Limit the message to the console to the first 30 characters in order to not ↵Thomas Müller2016-04-041-1/+5
| | | | break the progress bar
* Show individual sql schema migration steps during upgrade - on web as well ↵Thomas Müller2016-04-041-0/+20
| | | | as on the command line
* Some typo corrections in occ command outputCarla Schroder2016-03-163-3/+3
|
* Update author informationLukas Reschke2016-03-019-3/+9
| | | | Probably nice for the people that contributed to 9.0 to see themselves in the AUTHORS file :)
* Merge pull request #22419 from ↵Thomas Müller2016-02-171-1/+10
|\ | | | | | | | | owncloud/issue-20663-console-add-user-group-with-shares Make sure to init the users Filesystem so we can add group shares
| * Make sure to init the users Filesystem so we can add group sharesJoas Schilling2016-02-161-1/+10
| |
* | Remove inaccurate "is already enabled" messageJoas Schilling2016-02-161-4/+0
|/
* typoPierre Ozoux2016-02-151-1/+1
|
* Register process control signel handlers only on execution of the commandThomas Müller2016-02-091-10/+12
|
* Cut authors list. Declare a member variableVictor Dubiniuk2016-02-082-18/+11
|
* Optional path parameterVictor Dubiniuk2016-02-052-4/+7
|
* CLI commands to check app and core signaturesVictor Dubiniuk2016-02-052-0/+135
|
* Allow specifing the signing pathLukas Reschke2016-02-031-4/+6
|
* Revert "setting to skip migration tests by default"Morris Jobke2016-02-031-6/+0
|
* setting to skip migration tests by defaultMorris Jobke2016-02-031-0/+6
| | | | | | | * if you install owncloud via package it is not possible to skip migration tests * this also allows to disable migration tests for an instance by default
* Move signal handling to the base class to allow other commands to reuse this ↵Thomas Müller2016-02-011-0/+38
| | | | feature
* Merge pull request #18444 from owncloud/occ-config-typesThomas Müller2016-01-253-21/+191
|\ | | | | occ config:system:set can now set other value types
| * Allow array recursion in getJoas Schilling2016-01-141-3/+16
| |
| * Allow deleting a nested system config valueJoas Schilling2016-01-142-10/+52
| |
| * Retain backwards compatibilityJoas Schilling2016-01-141-51/+56
| |
| * occ config:system:set can now set other value typesRobin McCorkell2016-01-141-9/+119
| | | | | | | | | | | | | | Integers, doubles, booleans and even arrays can now be set, with the --type=... option. Array setting can be specified by passing multiple name arguments, e.g. `./occ config:system:set redis port --value=123 --type=integer`
* | Merge pull request #21850 from owncloud/more-output-for-integrity-checkThomas Müller2016-01-221-0/+6
|\ \ | | | | | | Print output for integrity check during ./occ upgrade
| * | Print output for integrity check during ./occ upgradeMorris Jobke2016-01-221-0/+6
| | |
* | | Use path instead of app idLukas Reschke2016-01-201-8/+17
|/ / | | | | | | | | | | This change requires the usage of a path instead of the App ID when signing code. This has the advantage that developers can also sign code under a different location to make it easier. (e.g. remove `.git`, …) Also it adds an example command usage as well as a link to the documentation
* | Make it possible to enable apps for groups only via occJoas Schilling2016-01-191-5/+36
| |
* | Make it possible to disable apps via the console, which are not enabled for ↵Joas Schilling2016-01-191-2/+15
| | | | | | | | the current user
* | Make sure to list "group enabled" apps as enabledJoas Schilling2016-01-191-4/+16
| | | | | | | | also when they are not enabled for the current user
* | Sort the list before savingJoas Schilling2016-01-181-0/+2
| |
* | Add occ commands to manager trusted certificatesRobin Appelman2016-01-133-0/+222
|/
* Happy new year!Thomas Müller2016-01-1244-50/+54
|
* Merge pull request #21498 from owncloud/cleanup-OC_DBThomas Müller2016-01-072-2/+2
|\ | | | | Cleanup OC_DB methods
| * Remove OC_DB::getConnectionMorris Jobke2016-01-072-2/+2
| |
* | Add a warning to the app:check-code if the version is missingJoas Schilling2016-01-071-0/+4
|/
* don't show previous log level in upgrade messageBjörn Schießle2016-01-041-2/+2
|
* Use OCP\Util::getVersion instead of the internal private implementationMorris Jobke2015-12-181-1/+1
|
* Add occ command to get app pathVictor Dubiniuk2015-12-091-0/+62
|
* Allow occ install on OS X - same behaviour as web setupMorris Jobke2015-12-091-1/+6
|
* Add code integrity checkLukas Reschke2015-12-013-3/+203
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This PR implements the base foundation of the code signing and integrity check. In this PR implemented is the signing and verification logic, as well as commands to sign single apps or the core repository. Furthermore, there is a basic implementation to display problems with the code integrity on the update screen. Code signing basically happens the following way: - There is a ownCloud Root Certificate authority stored `resources/codesigning/root.crt` (in this PR I also ship the private key which we obviously need to change before a release :wink:). This certificate is not intended to be used for signing directly and only is used to sign new certificates. - Using the `integrity:sign-core` and `integrity:sign-app` commands developers can sign either the core release or a single app. The core release needs to be signed with a certificate that has a CN of `core`, apps need to be signed with a certificate that either has a CN of `core` (shipped apps!) or the AppID. - The command generates a signature.json file of the following format: ```json { "hashes": { "/filename.php": "2401fed2eea6f2c1027c482a633e8e25cd46701f811e2d2c10dc213fd95fa60e350bccbbebdccc73a042b1a2799f673fbabadc783284cc288e4f1a1eacb74e3d", "/lib/base.php": "55548cc16b457cd74241990cc9d3b72b6335f2e5f45eee95171da024087d114fcbc2effc3d5818a6d5d55f2ae960ab39fd0414d0c542b72a3b9e08eb21206dd9" }, "certificate": "-----BEGIN CERTIFICATE-----MIIBvTCCASagAwIBAgIUPvawyqJwCwYazcv7iz16TWxfeUMwDQYJKoZIhvcNAQEF\nBQAwIzEhMB8GA1UECgwYb3duQ2xvdWQgQ29kZSBTaWduaW5nIENBMB4XDTE1MTAx\nNDEzMTcxMFoXDTE2MTAxNDEzMTcxMFowEzERMA8GA1UEAwwIY29udGFjdHMwgZ8w\nDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBANoQesGdCW0L2L+a2xITYipixkScrIpB\nkX5Snu3fs45MscDb61xByjBSlFgR4QI6McoCipPw4SUr28EaExVvgPSvqUjYLGps\nfiv0Cvgquzbx/X3mUcdk9LcFo1uWGtrTfkuXSKX41PnJGTr6RQWGIBd1V52q1qbC\nJKkfzyeMeuQfAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAvF/KIhRMQ3tYTmgHWsiM\nwDMgIDb7iaHF0fS+/Nvo4PzoTO/trev6tMyjLbJ7hgdCpz/1sNzE11Cibf6V6dsz\njCE9invP368Xv0bTRObRqeSNsGogGl5ceAvR0c9BG+NRIKHcly3At3gLkS2791bC\niG+UxI/MNcWV0uJg9S63LF8=\n-----END CERTIFICATE-----", "signature": "U29tZVNpZ25lZERhdGFFeGFtcGxl" } ``` `hashes` is an array of all files in the folder with their corresponding SHA512 hashes (this is actually quite cheap to calculate), the `certificate` is the certificate used for signing. It has to be issued by the ownCloud Root Authority and it's CN needs to be permitted to perform the required action. The `signature` is then a signature of the `hashes` which can be verified using the `certificate`. Steps to do in other PRs, this is already a quite huge one: - Add nag screen in case the code check fails to ensure that administrators are aware of this. - Add code verification also to OCC upgrade and unify display code more. - Add enforced code verification to apps shipped from the appstore with a level of "official" - Add enfocrced code verification to apps shipped from the appstore that were already signed in a previous release - Add some developer documentation on how devs can request their own certificate - Check when installing ownCloud - Add support for CRLs to allow revoking certificates **Note:** The upgrade checks are only run when the instance has a defined release channel of `stable` (defined in `version.php`). If you want to test this, you need to change the channel thus and then generate the core signature: ``` ➜ master git:(add-integrity-checker) ✗ ./occ integrity:sign-core --privateKey=resources/codesigning/core.key --certificate=resources/codesigning/core.crt Successfully signed "core" ``` Then increase the version and you should see something like the following: ![2015-11-04_12-02-57](https://cloud.githubusercontent.com/assets/878997/10936336/6adb1d14-82ec-11e5-8f06-9a74801c9abf.png) As you can see a failed code check will not prevent the further update. It will instead just be a notice to the admin. In a next step we will add some nag screen. For packaging stable releases this requires the following additional steps as a last action before zipping: 1. Run `./occ integrity:sign-core` once 2. Run `./occ integrity:sign-app` _for each_ app. However, this can be simply automated using a simple foreach on the apps folder.
* Add cmdline key to show shipped/non-shipped apps onlyVictor Dubiniuk2015-11-231-0/+17
|
* Do not allow two different version requirementsJoas Schilling2015-11-091-0/+4
|
* Replace some OC_Config calls with ILogger methodsMorris Jobke2015-10-301-1/+1
|
* Add a repair step that checks for group membership on sharesJoas Schilling2015-10-291-1/+16
|
* Revert "setting to skip migration tests by default"Morris Jobke2015-10-271-6/+0
| | | | This reverts commit 7cbdd9b90bcea3566b7d0198f23da3d427e6ef45.
* Update license headersLukas Reschke2015-10-261-1/+1
|
* Update: state which step we are going to start and warn if it might be slowJoas Schilling2015-10-211-0/+12
|
* Always pass in ILoggerThomas Müller2015-10-091-5/+9
|
* deduplicate @xenopathicMorris Jobke2015-10-064-4/+4
|
* update licence headers via scriptMorris Jobke2015-10-0510-3/+9
|